dumpDex 项目使用教程
1. 项目目录结构及介绍
dumpDex/
├── .gitignore
├── LICENSE
├── README.md
├── calOffset.py
├── dump.py
├── dump2.py
├── findcookie.py
├── lookup.py
├── result/
│ ├── test.dat
│ └── test.py
└── test.py
- .gitignore: 用于指定Git版本控制系统忽略的文件和目录。
- LICENSE: 项目的开源许可证文件,本项目使用Apache-2.0许可证。
- README.md: 项目的介绍文件,包含项目的基本信息、使用方法和更新日志。
- calOffset.py: 用于计算偏移量的Python脚本。
- dump.py: 用于从内存中dump DEX文件的Python脚本。
- dump2.py: 改进版的dump脚本,支持更灵活的配置。
- findcookie.py: 用于查找和获取cookie值的Python脚本。
- lookup.py: 用于查找特定数据的Python脚本。
- result/: 存放测试结果和dump出来的DEX文件的目录。
- test.py: 用于测试的Python脚本。
2. 项目启动文件介绍
dump2.py
dump2.py
是项目的核心启动文件之一,用于从内存中dump DEX文件。使用该脚本前,需要先运行 findcookie.py
获取合适的DexFile地址,并将其填入 dump2.py
中。
使用步骤
- 通过IDA的module模块找到
libdvm.so->dvmInternalNativeShutdown
,确保光标停留在该函数的第一行,然后运行findcookie.py
。 - 从控制台的输出中找到合适的DexFile地址,通常有多个,通过name进行判断。
- 修改
dump2.py
中倒数5行的address,然后运行dump2.py
。
findcookie.py
findcookie.py
是另一个重要的启动文件,用于查找和获取cookie值。该脚本可以省去一些人工劳动,操作步骤如下:
- 通过IDA的module模块找到
libdvm.so->dvmInternalNativeShutdown
,确保光标停留在该函数的第一行。 - 直接运行
findcookie.py
即可。
3. 项目的配置文件介绍
dump2.py
在 dump2.py
中,有一处需要手动修改的地方,即DexFile的地址。可以通过 findcookie.py
获取该地址,并将其填入 dump2.py
中。
# 修改以下地址为通过findcookie.py获取的DexFile地址
address = 0xXXXXXXXX
findcookie.py
findcookie.py
中没有需要手动配置的内容,但需要通过IDA的module模块找到 libdvm.so->dvmInternalNativeShutdown
,确保光标停留在该函数的第一行,然后直接运行该脚本即可。
通过以上步骤,您可以顺利地使用 dumpDex
项目进行Android DEX文件的内存dump操作。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考