4 个版本 (2 个稳定版)
3.0.0 | 2021年5月28日 |
---|---|
1.0.0 | 2020年8月1日 |
0.2.0 | 2020年5月17日 |
0.1.0 | 2020年3月12日 |
#1813 在 解析实现
每月21 次下载
28KB
539 行
binsec
二进制(不)安全的瑞士军刀
binsec 是一个用于检测 ELF/PE/Mach-O 可执行文件中安全功能的最低限度的静态分析实用程序。它对逆向工程师和漏洞研究人员来说非常有用,可以帮助他们快速深入了解二进制工件,建立快速的检测管道,并提高整体二进制分析。
功能
- 跨平台,在任意主机上运行时支持对 ELF/PE/Mach-O 的强大检查。
- 后端 libgoblin 用于高效和跨平台的二进制解析。
- 可序列化为 JSON 格式,以便存储/日志记录。
- 小巧且性能优异:最终发布构建大小约为 ~2.44Mb,分析时间约为 30ms。
静态分析检查
该项目目前支持对多种可执行文件检查的静态检测
- 编译功能 - 关于可执行文件如何编译以及在该过程中使用的运行时的见解。
- 漏洞缓解 - 用于限制利用和权限提升的操作系统支持的二进制加固功能。
- 动态仪表化 - 检测用于动态分析或分析的任何已知仪表化框架。
- 反分析(WIP) - 用于缓解逆向工程的可观察的反分析检查。
使用方法
以命令行应用程序的形式安装 binsec
$ cargo install binsec
使用该应用程序非常简单。给定任何您想要进行初始分析的二进制可执行文件,只需将其作为位置参数传递即可
$ binsec -- ./suspicious
binsec
输出还可以序列化为 JSON
# print to stdout
$ binsec --json - -- ./suspicious
# print to path
$ binsec --json report.json -- ./suspicious
贡献
这是一个持续开发的项目!您可以通过通过 问题跟踪器 抓取问题、错误并提交它们,或者通过发起拉取请求来做出贡献!
许可证
依赖关系
~8.5MB
~179K SLoC