SuperAPI AI 工具集

re-imports

安全与审计

查看项目

更新于 10-15 21:34

技能介绍

用途:判断程序链接了哪些库与 API,按导入特征匹配编译器/库版本,定位可疑导入(注入、网络、加密 API),分析插件与 DLL 的导出接口。仅需函数内部逻辑时不用本技能;壳静态隐藏导入时也不适用,需配合动态内存分析。

工具准备:objdump/readelf(binutils,Linux 用 apt/dnf/pacman 安装,macOS 用 brew install binutils,Mach-O 用 otool -L 与 nm -u);pefile(pip install pefile);rizin/rz-bin;Ghidra FLIRT 插件(git clone https://github.com/nneonneo/ghidra_flirt && cd ghidra_flirt && make)。

主要能力:列出导入函数(PE 用 objdump -p 或 pefile 遍历 DIRECTORY_ENTRY_IMPORT;ELF 用 objdump -T 或 readelf -s 查 UND;Mach-O 用 otool -L、nm -u);按导入特征匹配库/编译器(FLIRT 签名、GLIBC 符号版本、Go/Rust/C++/Delphi/.NET 语言指纹、PE Rich Header);定位可疑导入(进程注入、网络回连、加密窃密、反调试类 API);导出表分析(PE 用 objdump -p 或 pefile 的 DIRECTORY_ENTRY_EXPORT,ELF 用 readelf -s,Mach-O 用 nm -gU)。

限制与陷阱:导入表可能被壳重定向或加密,静态 IAT 不可信,需运行后从内存取;GetProcAddress/dlopen+dlsym 动态解析的 API 不在 IAT 中;按序数导入的函数无名字;运行时 GOT/IAT 可能被构造器改写,静态视图看不到 hook;家族聚类建议用 pefile 的 imphash,但被壳接管的样本 imphash 会失真,需先脱壳。