关于Fuzzable
功能介绍
1、支持对代码进行分析(使用Angr、BinaryNinja和tree-sister实现); 2、支持以独立命令行工具或Binary Ninja插件执行静态分析; 3、利用生成的工具组件快速执行模糊测试任务;
工具安装
命令行(独立工具)
$ python3 /Applications/Binary Ninja.app/Contents/Resources/scripts/install_api.py
(向右滑动,查看更多)
$ pip install fuzzable
手动/开发构建
我们使用了poetry来实现依赖管理和项目构建,如需进行手动构建,则需要使用下列命令克隆项目代码以及第三方模块:
$ git clone --recursive https://github.com/ex0dus-0x/fuzzable
(向右滑动,查看更多)
接下来,切换到项目目录中,并使用下列命令完成项目的手动构建: $ cd fuzzable/
# 不使用poetry
$ pip install .
# 使用poetry
$ poetry install
# 使用poetry 和开发virtualenv环境
$ poetry shell
(向右滑动,查看更多)
现在,我们就可以使用该工具来分析二进制文件或源代码了: # 分析一个单独的共享对象库代码
$ fuzzable analyze examples/binaries/libbasic.so
# 分析一个单独的C源代码文件
$ fuzzable analyze examples/source/libbasic.c
# 分析一个包含多个C/C++文件和头文件的工作空间
$ fuzzable analyze examples/source/source_bundle/
(向右滑动,查看更多)
Binary Ninja插件
工具使用
静态分析启发式
$ fuzzable analyze <TARGET> --score-weights=0.2,0.2,0.2,0.2,0.2
(向右滑动,查看更多)
分析过滤
$ fuzzable analyze --list-ignored <TARGET>
(向右滑动,查看更多)
报告生成
$ fuzzable analyze --export=report.json <TARGET>
(向右滑动,查看更多)
报告生成样例
许可证协议
本项目的开发与发布遵循MIT开源许可证协议。
项目地址
Fuzzable:https://github.com/ex0dus-0x/fuzzable
参考资料
https://github.com/google/oss-fuzz https://binary.ninja/ https://codemuch.tech/2021/06/07/fuzzabble/ https://www.blackhat.com/us-22/arsenal/schedule/index.html#automating-fuzzable-target-discovery-with-static-analysis-26726 https://angr.io/ https://tree-sitter.github.io/tree-sitter/ https://github.com/angr/angr https://python-poetry.org/ https://scikit-criteria.quatrope.org/en/latest/tutorial/quickstart.html https://resources.sei.cmu.edu/asset_files/WhitePaper/2010_019_001_53555.pdf https://github.com/ex0dus-0x/fuzzable/blob/main/templates/linux_source_harness.cpp https://github.com/ex0dus-0x/fuzzable/blob/main/templates/linux_closed_source_harness.cpp https://github.com/mirrorer/afl/blob/master/qemu_mode/README.qemu https://lief-project.github.io/ https://github.com/trailofbits/deepstate 精彩推荐
原文始发于微信公众号(FreeBuf):Fuzzable:一款基于静态分析实现的可模糊测试的自动化目标识别工具
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论