AB
AiBoss站
快讯

GitHub 安全实验室推出 AI 驱动的模糊测试任务流代理

GitHub 安全实验室发布 Fuzzing Taskflow,一个面向 C/C++ 项目的自主模糊测试流水线,构建于其 Taskflow Agent 框架之上。据官方博客介绍,用户只需指向一个 GitHub 仓库,代理即可完成入口点识别、构建系统分析、编写 harness、运行 AFL++、读取覆盖率报告、改进 harness、崩溃分类并生成漏洞报告。

GitHub 安全实验室发布 AI 模糊测试任务流

GitHub 安全实验室(GitHub Security Lab)在官方博客中介绍了其新的 Fuzzing Taskflow,这是一个面向 C/C++ 项目的自主模糊测试流水线,构建在该实验室的 Taskflow Agent AI 框架之上。据博客描述,用户只需把工具指向一个 GitHub 仓库,代理便会自行完成一系列步骤:识别合适的入口点、分析构建系统、编写 fuzz harness、运行 AFL++、读取覆盖率报告、改进 harness、对每个崩溃进行分类,并为每个独立缺陷撰写漏洞报告。

背景与设计思路

博客作者 Antonio Morales 指出,持续模糊测试并非万能方案:即便是长期参与 OSS-Fuzz 的项目,仍可能隐藏严重缺陷,原因通常在于需要有人持续关注覆盖率、为未被触达的代码编写新的 harness,并处理产出的崩溃。因此他尝试把其中多少人工工作交给 LLM 代理,最终形成了这套以 taskflow 形式表达的流水线。按文中说明,运行方式是在相关仓库中启动 Codespace,然后执行形如 ./scripts/fuzzing/run_fuzzing.sh PROJECT 的脚本,参数为 GitHub 的 owner/repo 标识。架构分为三层:串联各阶段的 shell 驱动脚本、每个阶段一个的 taskflow YAML(本质是提示词),以及代理调用以实际执行工作的 MCP 工具集。

限制与来源

博客明确提示了安全风险:该 taskflow 会直接在宿主机上运行 afl-fuzz、clang 以及由 LLM 选定的任意构建命令,中间没有容器隔离;被提示注入的代理原则上可以执行当前用户能做的任何操作。因此作者建议仅在一次性环境(如 Codespace 或临时虚拟机)中运行,且不要使用提升的权限。文中还提到默认使用某个前沿模型,并可通过修改配置文件更换模型。以上内容均来自 GitHub 博客的公开介绍,具体功能、可用范围与运行要求可能调整,请以官方仓库与官网当前信息为准。