名称: 协议模糊测试工具 描述: 用于协议模糊测试、漏洞发现和安全测试的专家技能 允许使用的工具:
- Bash
- Read
- Write
- Edit
- Glob
- Grep
协议模糊测试技能
用于网络协议模糊测试、漏洞发现和安全测试的专家技能。
能力
- 模糊测试器配置: 配置 AFL++、libFuzzer、boofuzz 和 Peach Fuzzer
- 变异策略设计: 为不同协议生成有效的变异策略
- 覆盖率分析: 分析代码覆盖率和崩溃报告
- 语法定义: 为结构化模糊测试创建协议语法定义
- 漏洞检测: 检测崩溃模式、内存损坏和安全漏洞
- 测试用例生成: 根据模糊测试结果生成可复现的测试用例
- 崩溃分类: 分析和去重崩溃报告
- 安全报告: 生成安全漏洞报告
工具和依赖
AFL++- 美国模糊循环器增强版libFuzzer- 基于 LLVM 的进程内模糊测试器boofuzz- 网络协议模糊测试器(Sulley 的后继者)Peach Fuzzer- 智能模糊测试框架radamsa- 通用模糊测试器honggfuzz- 面向安全的模糊测试器
目标进程
- protocol-fuzzer.js
- binary-protocol-parser.js
- network-testing-framework.js
使用示例
Boofuzz 协议模糊测试
from boofuzz import *
session = Session(target=Target(connection=TCPSocketConnection("127.0.0.1", 8080)))
s_initialize("HTTP 请求")
s_string("GET", fuzzable=False)
s_delim(" ", fuzzable=False)
s_string("/", name="路径")
s_static("\r
\r
")
session.connect(s_get("HTTP 请求"))
session.fuzz()
AFL++ 插桩模糊测试
afl-fuzz -i input_corpus -o findings -M main -- ./target @@
afl-cov -d findings --coverage-cmd "./target AFL_FILE" --code-dir src/
崩溃分析
afl-analyze -i crash_file -- ./target @@
质量门限
- 达到覆盖率阈值
- 未发现关键漏洞
- 所有崩溃已分类
- 已生成可复现的测试用例
- 已完成安全报告