关于 rev-dex-dumper
rev-dex-dumper 是一项安全分析技能,通过 ADB 调用 panda-dex-dumper,从运行中的 Android 应用内存提取 DEX 文件,并指导拉取与清理流程。
主要功能
- 01从应用内存转储 DEX 文件
- 02通过 ADB 传送转储工具
- 03将输出文件拉取到主机
- 04清理设备端文件
适用场景
- 01检查运行中 Android 应用的 DEX
- 02应用加载后提取加壳应用的 DEX
- 03转储后清理设备文件
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ p4nda0s/ reverse-skills --skill rev-dex-dumper安装后在 Claude Code 中输入/rev-dex-dumper确认已加载。
详细介绍
rev-dex-dumper - Android DEX 转储工具
通过 ADB 使用 panda-dex-dumper,从正在运行的 Android 应用内存中转储 DEX 文件。
工具位置
panda-dex-dumper 二进制文件随此技能打包,位于该技能目录中。请根据此 SKILL.md 文件解析其绝对路径:
skills/rev-dex-dumper/panda-dex-dumper
工作流
1. 将工具推送到设备
adb push <path-to>/panda-dex-dumper /data/local/tmp/
adb shell chmod +x /data/local/tmp/panda-dex-dumper
2. 确定目标包名
如果用户提供了包名,请直接使用。否则,获取前台应用:
adb shell dumpsys activity top | grep 'ACTIVITY' | tail -1 | awk '{print $2}' | cut -d/ -f1
3. 运行转储工具
adb shell "cd /data/local/tmp && ./panda-dex-dumper -p $(adb shell pidof <package_name>)"
转储的 DEX 文件会保存到设备上的 /data/local/tmp/panda/。
4. 将 DEX 文件拉取到主机
adb pull /data/local/tmp/panda/ ./
拉取到用户当前工作目录。
5. 清理设备缓存
adb shell rm -rf /data/local/tmp/panda/
adb shell rm /data/local/tmp/panda-dex-dumper
指南
- 始终先验证 ADB 连接——运行
adb devices,并确认列表中有设备后再继续。 - 可能需要 Root 权限——
panda-dex-dumper使用ptrace附加到目标进程。如果设备未 Root,转储将失败。如有需要,建议使用adb root或通过su运行。 - 等待应用完全加载——如果用户要转储的是加壳应用,只有在加壳器的类加载器解密后,才能获取真实的 DEX。建议用户先进入启动画面之后的页面,再进行转储。
- 处理 pidof 失败的情况——如果
pidof返回空值,应用可能尚未运行。请先使用adb shell monkey -p <package_name> -c android.intent.category.LAUNCHER 1启动应用。 - 存在多个 DEX 文件属于正常情况——加壳应用通常会生成多个 DEX 文件。应拉取
/data/local/tmp/panda/中的所有文件。 - 始终清理——拉取结果后,从设备中删除转储的 DEX 文件和工具二进制文件,避免留下残留文件。
评论
支持 Markdown