2017-10-11 17:22:24 +07:00
|
|
|
|
# 2.6 IDA Pro
|
2017-07-18 11:05:20 +07:00
|
|
|
|
|
2017-09-07 09:06:48 +07:00
|
|
|
|
- [常用插件](#常用插件)
|
2017-08-16 14:45:24 +07:00
|
|
|
|
- [内存 dump 脚本](#内存-dump-脚本)
|
2017-07-18 23:05:44 +07:00
|
|
|
|
|
|
|
|
|
|
2017-09-07 09:06:48 +07:00
|
|
|
|
## 常用插件
|
|
|
|
|
- [IDA FLIRT Signature Database](https://github.com/push0ebp/sig-database) -- 用于识别静态编译的可执行文件中的库函数
|
|
|
|
|
- [Find Crypt](https://github.com/polymorf/findcrypt-yara) -- 寻找常用加密算法中的常数(需要安装 [yara-python](https://github.com/VirusTotal/yara-python))
|
|
|
|
|
- [IDA signsrch](https://github.com/nihilus/IDA_Signsrch) -- 寻找二进制文件所使用的加密、压缩算法
|
|
|
|
|
- [Ponce](https://github.com/illera88/Ponce) -- 污点分析和符号化执行工具
|
|
|
|
|
- [snowman decompiler](https://github.com/yegord/snowman/tree/v0.1.0) -- C/C++反汇编插件(F3 进行反汇编)
|
2017-10-19 18:45:19 +07:00
|
|
|
|
- [keypatch](https://github.com/keystone-engine/keypatch) -- 二进制文件修改工具,可以直接修改汇编
|
2017-09-07 09:06:48 +07:00
|
|
|
|
- [CodeXplorer](https://github.com/REhints/HexRaysCodeXplorer) -- 自动类型重建以及对象浏览(C++)(jump to disasm)
|
|
|
|
|
- [IDA Ref](https://github.com/nologic/idaref) -- 汇编指令注释(支持arm,x86,mips)
|
|
|
|
|
- [auto re](https://github.com/a1ext/auto_re) -- 函数自动重命名
|
|
|
|
|
- [nao](https://github.com/tkmru/nao) -- dead code 清除
|
|
|
|
|
- [HexRaysPyTools](https://github.com/igogo-x86/HexRaysPyTools) -- 类/结构体创建和虚函数表检测
|
|
|
|
|
- [DIE](https://github.com/ynvb/DIE) -- 动态调试增强工具,保存函数调用上下文信息
|
|
|
|
|
- [sk3wldbg](https://github.com/cseagle/sk3wldbg) -- IDA动态调试器,支持多平台
|
|
|
|
|
- [idaemu](https://github.com/36hours/idaemu) -- 模拟代码执行(支持X86、ARM平台)
|
2017-10-19 18:45:19 +07:00
|
|
|
|
- [Diaphora](https://github.com/joxeankoret/diaphora) -- 程序差异比较
|
2017-09-07 09:06:48 +07:00
|
|
|
|
|
|
|
|
|
|
2017-08-16 14:45:24 +07:00
|
|
|
|
#### 内存 dump 脚本
|
2017-07-18 11:05:20 +07:00
|
|
|
|
调试程序时偶尔会需要 dump 内存,但 IDA Pro 没有直接提供此功能,可以通过脚本来实现。
|
|
|
|
|
```python
|
|
|
|
|
import idaapi
|
|
|
|
|
|
|
|
|
|
data = idaapi.dbg_read_memory(start_address, data_length)
|
|
|
|
|
fp = open('path/to/dump', 'wb')
|
|
|
|
|
fp.write(data)
|
|
|
|
|
fp.close()
|
|
|
|
|
```
|