ismaelfsilva/pe-inspector
GitHub: ismaelfsilva/pe-inspector
轻量级PE文件解析器,助力逆向工程与安全分析。
Stars: 0 | Forks: 0
# pe-inspector -> pe-inspector
一个轻量级、无依赖的 **可移植可执行文件 (PE / PE32+) 解析器和检查器**,用于 Windows 可执行文件(`.exe`,`.dll`)。专为逆向工程和恶意软件分类工作流程构建:导出头部信息、列出具有香农熵(打包/加密提示)的节、枚举导入/导出。
## 功能
- 解析 DOS / NT 头部、文件头部和可选头部(**PE32** 和 **PE32+**)
- 列出节,包括虚拟/原始大小、**R/W/X 权限**和**每节香农熵**
- 解码 16 个 **数据目录**和可读的**文件特征**
- 枚举**导入**(按 DLL 分组)和**导出**
- 解析**基本重定位**(每块修复计数)和**TLS 回调**
- **分类启发式**(`--check`):W^X 节、高熵节、可疑导入、TLS 回调
- **JSON 输出**(`--json`)用于脚本/管道
- 纯 **C++17**,无外部依赖,可移植(可在 Windows 和 Linux 上构建)
## 构建
```
cmake -B build
cmake --build build
ctest --test-dir build --output-on-failure
```
## 使用方法
```
pe-inspector [--headers] [--sections] [--dirs] [--imports] \
[--exports] [--relocs] [--tls] [--check] [--json] [--all]
```
没有标志时,它会打印一切。示例:
```
pe-inspector C:\Windows\System32\notepad.exe --headers --sections
pe-inspector sample.exe --check # security triage indicators
pe-inspector sample.exe --json | jq . # machine-readable output
```
## 为什么是熵?
香农熵接近 **8.0 比特/字节**的节很可能是压缩或加密的——这是打包或混淆二进制文件的常见信号。正常的代码/数据节通常远低于这个值。
## 许可证
MIT © 2026 Ismael Ferreira
标签:API安全, C++开发, DAST, JSON输出, MIT许可, PE32+解析, PE文件解析, Shannon熵, Windows可执行文件, 二进制分析, 云安全运维, 云资产清单, 反取证, 威胁情报, 安全测试, 安全社区, 安全评估, 导入导出, 开发者工具, 恶意软件分析, 攻击性安全, 数据目录, 无依赖库, 漏洞分析, 红队平台, 脚本化, 路径探测, 逆向工程