FRIDA-DEXDump脱壳及jadx合并反编译dex文件

本文的内容记录了以下流程
1.通过FRIDA-DEXDump对apk(安装好并运行中的)进行脱壳
2.通过py脚本和jadx对脱壳出的多个dex文件进行反编译,并合并成一个java项目

一、FRIDA-DEXDump脱壳

详见:
https://github.com/hluwa/FRIDA-DEXDump
安装:

pip3 install frida-dexdump

启动frida环境(安卓系统内的fridaServer)
打开要脱壳的app
输入(可以直接在连接andriod的终端输入):

frida-dexdump -U -f com.app.pkgname

此时脱壳自动开始,软件会重启,输出如下:
在这里插入图片描述
提示ALL done即完成:
在这里插入图片描述
脱壳出来如下图,我脱出了14个(据悉此app为360加固)
在这里插入图片描述

二、jadx反编译dex并合并

我们要用到命令行版本的jadx(命令行\终端版本),如图无后缀的jadx即为命令行版本。在这里插入图片描述
用py代码执行批量jadx反编译并合并到项目,代码如下:


"""
合并dex
"""

import os
import sys
# 使用方法
# python3.7 merge_dex.py ./file/ livedex


if __name__ == "__main__":
    if len(sys.argv) < 3:
        print("start error")
        sys.exit()

    print(sys.argv[1], sys.argv[2])

path = sys.argv[1]  # #文件夹目录
files = os.listdir(path)  # 得到文件夹下的所有文件名称
s = []
for file in files:  # #遍历文件夹
    if file.find("dex") > 0:  # #查找dex 文件
        sh = 'jadx -j 1 -r -d ' + sys.argv[2] + " " + path + file
        print(sh)
        os.system(sh)

其中最关键的是这行代码:

'jadx -j 1 -r -d ' + sys.argv[2] + " " + path + file

总之把此py文件和jadx文件放在一起,运行py文件,py就会批量调用jadx去反编译dex文件到指定文件夹。

该py文件输入两个参数,第一个是dex文件夹目录,注意,目录最后必须带“/”,第二个参数是反编译输出java文件的参数。运行即可。
在这里插入图片描述
最后会输出一个source文件,可以直接用eclipse打开查看app源代码

  • 1
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Frida-dexdump是一款用于Android应用程序脱壳的工具。它基于Frida框架,可以在运行时动态地注入代码,从而实现对应用程序的监控和修改。通过使用Frida-dexdump,用户可以获取应用程序的dex文件,进而进行反编译和分析。这对于安全研究人员和逆向工程师来说是非常有用的。 ### 回答2: Frida-Dexdump是一种脱壳工具,它使用Frida库提供的动态注入技术来实现脱壳。它可以帮助安全研究人员分析Android应用程序中的可执行文件dex文件),以便他们能够防止应用程序的非法复制或修改。 Frida-Dexdump的主要优点是它不需要修改目标应用程序的源代码,因为它是通过在应用程序运行时动态注入实现的。这个过程非常简单,只需要在设备中安装Frida-server,然后运行Frida-Dexdump即可。脱壳过程中,它会将dex文件从目标内存中复制到本地磁盘,然后对该文件进行解密、反编译和分析。 此外,Frida-Dexdump还提供了一些其他有用的功能,例如提取应用程序进程的内存信息和文件系统信息,以及可以监视应用程序的API调用、函数调用和网络请求等操作,有助于发现应用程序中的漏洞和安全问题。 总之,Frida-Dexdump是一种非常有用的脱壳工具,它给安全研究人员提供了一个方便而有效的方式,来分析Android应用程序中的DEX文件,并发现和解决其中的安全问题。但需要注意的是,在使用该工具时,需要严格遵守法律法规,不得将其用于非法用途。 ### 回答3: Frida-Dexdump是一款非常强大的脱壳工具,它是基于Frida框架开发的,能够帮助开发者轻松地从安卓应用程序中提取dex文件,帮助开发者进行逆向分析,加深对程序的理解。 Frida-Dexdump的主要功能是从本地已安装的应用程序中提取dex文件,并将其保存到本地文件系统中,使其方便地进行后续分析。这个脱壳工具不仅能够脱壳Native方法,还可以有效地防止抓包等应用安全风险。 使用Frida-Dexdump非常容易,只需要在Frida Server启动的情况下,通过命令行来启动即可。可以利用命令行参数去指定你需要脱壳的应用程序包名,然后Frida-Dexdump就会自动使用Frida去hook这个被指定的应用程序,并提取它的dex文件Frida-Dexdump采用了一种非常高效的脱壳技术,它能够轻松地解析目标程序的内存结构,获取有关dex文件的相关信息,并且还能够将提取的dex文件保存在指定的本地文件系统中,方便开发者进行后续分析。值得一提的是,Frida-Dexdump支持多种不同的目标程序,包括应用程序、Framework、动态库等。 总的来说,Frida-Dexdump是一款非常强大的脱壳工具,可以帮助开发者轻松地进行逆向分析,深入探究Android应用的内部机制。它的强大功能和高效性使其受到广泛的关注和使用,目前已经成为许多安卓开发者逆向工程的首选工具之一。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值