mcpField
R
rev-dex-dumper

rev-dex-dumper

github.com/p4nda0s安全2.3k1.9k 次安装25 周前更新
代码仓库

关于 rev-dex-dumper

rev-dex-dumper 是一项安全分析技能,通过 ADB 调用 panda-dex-dumper,从运行中的 Android 应用内存提取 DEX 文件,并指导拉取与清理流程。

主要功能

  1. 01从应用内存转储 DEX 文件
  2. 02通过 ADB 传送转储工具
  3. 03将输出文件拉取到主机
  4. 04清理设备端文件

适用场景

  1. 01检查运行中 Android 应用的 DEX
  2. 02应用加载后提取加壳应用的 DEX
  3. 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

指南

  1. 始终先验证 ADB 连接——运行 adb devices,并确认列表中有设备后再继续。
  2. 可能需要 Root 权限——panda-dex-dumper 使用 ptrace 附加到目标进程。如果设备未 Root,转储将失败。如有需要,建议使用 adb root 或通过 su 运行。
  3. 等待应用完全加载——如果用户要转储的是加壳应用,只有在加壳器的类加载器解密后,才能获取真实的 DEX。建议用户先进入启动画面之后的页面,再进行转储。
  4. 处理 pidof 失败的情况——如果 pidof 返回空值,应用可能尚未运行。请先使用 adb shell monkey -p <package_name> -c android.intent.category.LAUNCHER 1 启动应用。
  5. 存在多个 DEX 文件属于正常情况——加壳应用通常会生成多个 DEX 文件。应拉取 /data/local/tmp/panda/ 中的所有文件。
  6. 始终清理——拉取结果后,从设备中删除转储的 DEX 文件和工具二进制文件,避免留下残留文件。

评论

支持 Markdown