首页 渗透工具 正文

bface-agent:基于 Claude Code 的认知驱动红队 Agent,重构渗透测试工作流

摘要

在红队评估与授权渗透测试里,工具数量从来不是瓶颈,真正影响效率的是**目标记忆、攻击路径、验证闭环与方法论沉淀。很多 AI 安全工具仍停留在“Web 控制台 + 工具列表 + 单次对话”的形态:会话一断,上下文丢失;模型报出漏洞,却没有证据链;遇到多入口目标,攻击面越跑越散。bface-agent 的定位,正是用 Claude Code 原生能力搭一套有记性...

在红队评估与授权渗透测试里,工具数量从来不是瓶颈,真正影响效率的是**目标记忆、攻击路径、验证闭环与方法论沉淀。很多 AI 安全工具仍停留在“Web 控制台 + 工具列表 + 单次对话”的形态:会话一断,上下文丢失;模型报出漏洞,却没有证据链;遇到多入口目标,攻击面越跑越散。bface-agent 的定位,正是用 Claude Code 原生能力搭一套有记性、有方法论、有验证闭环的渗透工作流。它把 CLAUDE.md 记忆、skill 方法论、subagent 分工、plan+todo 编排和 MCP 工具串成一条可复用的作业链路,适合关注 Claude Code 红队 Agent、MCP 渗透测试工具、Web 安全评估工作流**的读者参考。

适用边界:本文仅面向已获得明确授权的安全测试、攻防演练、CTF 与内部红蓝对抗场景。任何针对未授权目标的探测、利用与控制行为都可能违法,请勿在生产环境或他人资产上尝试。

产品介绍:不是工具堆叠,而是认知架构优先

bface-agent 是一个由 Claude Code 驱动的全栈红队 Agent 项目,核心思路是“认知架构 > 工具堆砌”。它不重复造一个重型 Agent 编排框架,而是把 Claude Code 已经成熟的能力——CLAUDE.md 项目记忆、skills 方法论、subagents 分工、plan/todo 任务编排、文件系统工具——组织成可跨会话连续运行的渗透工作流。

与传统方案相比,它更强调三件事:

  • 结构化记忆:目标、凭据、漏洞、 foothold、loot、攻击图被整理成档案,而不是散落在一次性聊天记录里。
  • 攻击路径可视化:用 mermaid 攻击图和项目黑板 DAG 呈现从入口点到战果的推进关系。
  • 验证闭环:漏洞进入“假设 → 已验证 → 已利用”三态流转,可复现才入账,报告只收已验证结论。
对比维度 传统方案 bface-agent
Agent 编排 自写单/多代理循环 Claude Code 原生 plan / subagent / todo
目标记忆 对话孤立,散在 SQLite 结构化档案 7 件套,跨会话连续
攻击路径 缺少全局视图 mermaid 攻击图 + 项目黑板 DAG
漏洞质量 模型报什么收什么 三态流转,可复现才入账
方法论 命令模板 skill 9 个决策树 skill,按入口点/服务类型分支
交互方式 Web 控制台点点点 终端 CLI 自然语言 + Web 管理面双入口
项目黑板 跨会话事实 DAG,MCP upsert 带 edges/from_edges
漏洞账本 MCP 管理 + Web 统计/过滤
远程 MCP server 模式支持 Claude Code 远程调用
HITL 审批 外部桥接 Web 审批开关,危险任务浏览器批准
规则实现 Go 代码回调 CLAUDE.md 语言规则,每会话启动检查事件流

核心功能:覆盖测绘、C2、WebShell、账本与知识库

bface-agent 的功能面比较完整,从外部资产测绘到内部验证记录,都在同一套项目黑板和漏洞账本中闭环。对安全团队来说,价值不在于“能跑多少命令”,而在于每个阶段产出都能进入结构化档案,后续会话可以继续接上。

信息收集与资产测绘

  • 聚合 FOFA、Hunter(鹰图)、Quake 三个测绘平台,一键查询后按 ip:port 去重合并。
  • 方言自动适配:写一次 FOFA 风格 query,例如 icp="赛力斯",自动转换 Hunter 的 icp.name= 与 Quake 的 icp: 语法。
  • max_pages 支持 1-20,默认 5,按各平台真实页大小判断末页,减少无效翻页消耗。
  • 同一 ip:port 关联多个域名时全部保留到 Asset.Domains,避免只留首条造成信息丢失。
  • Web 资产面板支持分页、IP/域名/标题搜索、平台/协议分布统计,以及每行“前往”跳转。
  • MCP 工具为 gather_assets(project_id + query + size + max_pages);同时提供 Web /api/assets/refresh 入口。
  • 三平台 key 在 config.yamlfofa / hunter / quake 段配置,空 key 自动跳过对应平台。

C2 与会话控制

C2 模块面向授权演练中的受控会话管理,提供 4 种监听器:tcp_reversehttp_beaconhttps_beaconwebsocket。任务侧覆盖 18 种操作,包括 exec / shell / pwd / cd / ls / ps / kill_proc / upload / download / screenshot / sleep / exit / self_delete / port_fwd / socks_start / socks_stop / load_assembly / persist

工程细节上,它支持 oneliner 生成与 build 交叉编译(4 OS × 3 arch),Malleable Profile 可配置 UA、URIs、Header、body 与 jitter;会话管理包含心跳、看门狗、批量删除与 set_sleep;事件总线加 SSE 可把事件实时推到浏览器;监听器重启后自动拉起 running listener,默认 3 次退避重试;Beacon 通信使用 AES-GCM CSB1 魔数,并兼容 Legacy shell。

WebShell 管理

WebShell 模块提供 9 个 MCP 工具,覆盖连接 CRUD、testexec 与文件 list/read/write;前端配套 Web 终端和文件浏览器,便于在授权目标内进行受控操作与证据整理。

漏洞账本与验证闭环

漏洞账本的亮点是“入账标准”。每条漏洞经历“假设 → 已验证 → 已利用”的三态流转,MCP 提供 CRUD,Web 端支持按严重度与状态统计过滤。这样报告阶段不会混入未证实猜测,复盘时也能区分“疑似风险”“已复现问题”和“已利用战果”。

项目黑板与攻击图

项目黑板是跨会话事实 DAG,节点与边共同描述目标关系;MCP 的 manage_project_fact upsert 支持 edges/from_edges 拉取攻击图边,Web 端可生成 mermaid 攻击图。这个功能很适合长周期评估:换人、换会话、换模型上下文,路径关系仍然留在项目里。

知识库、HITL 审批与工具监控

knowledge_base/ 下的 Markdown 文件会自动扫描入库,当前包含 2 个分类、11 个条目;Web 端支持浏览、搜索与条目查看,语义检索能力已预留,接入 OpenAI key 后启用。危险任务可进入 HITL pending 队列,由操作者在浏览器中批准或拒绝;工具监控则记录 MCP 调用统计与最近调用历史,便于审计“什么时候调了什么”。

技术优势:四层架构把方法论落到运行时

bface-agent 的架构可以按四层理解:方法论层负责“怎么做”,认知档案层负责“记住了什么”,编排层负责“谁来分工”,能力层负责“能调什么工具”。

L1 方法论层   CLAUDE.md(SOP·授权·档案·验证·OPSEC·会话检查)
             + .claude/skills/(9 个:recon/web/network/post/privesc/lateral/opsec/reporting/pentest)
L2 认知档案层  ops/engagements/<id>/(target·credentials·vulnerabilities·attack-graph·footholds·loot)
L3 编排层    .claude/agents/(8 个:recon-operator·web-exploiter·network-exploiter·post-exploiter·lateral-mover·reporter + code-reviewer·test-writer)
L4 能力层    MCP 23 个工具(C2 8 + WebShell 9 + 信息收集1 + 漏洞1 + 项目2 + 知识库1 + 图像1)+ Bash 直跑 CLI 工具
             + Web 管理面(10 页 SPA,75 个 REST 端点)+ 远程 MCP(server 模式)

这套拆分的意义在于,**安全方法论不再只写在提示词里**。授权、SOP、OPSEC、验证规则被固化到 CLAUDE.md 和 skills;8 个 subagent 按 recon、web、network、post、lateral、report 分工,另配 code-reviewer 与 test-writer;能力层把 C2、WebShell、信息收集、漏洞、项目、知识库、图像等能力封装成 23 个 MCP 工具。运行时既可用本地 stdio 接 Claude Code,也可用 server 模式暴露 Web 管理面与远程 MCP。

使用方式与部署教程

项目入口在 cmd/mcp-server/main.go,支持 stdio 与 server 双模式。先进入目录构建:

cd bface-agent
go build -o bface-agent.exe ./cmd/mcp-server/

本地 Claude Code 使用 stdio 模式时,可在 Claude Code 中通过 /mcp 连接,或按项目说明配置 .mcp.json

# 在 Claude Code 中 /mcp 连接,或配置 .mcp.json
claude

需要 Web 管理面与远程 MCP 时,用 server 模式启动:

./bface-agent.exe --mode server --config config.yaml
# Web:http://127.0.0.1:8080  密码 bface@2026
# MCP:http://127.0.0.1:8081/mcp  token 见启动日志

Claude Code 终端交互与任务编排界面

建议的端到端验证顺序如下:启动 server 模式后打开 Web 管理面并登录;创建 TCP listener 并生成 oneliner 后,仅在本地或授权靶机执行;确认 C2 会话上线后下发 exec/ps/ls 等低风险命令,观察 Web 事件流;再编译 beacon 上线并验证 socks_start 代理是否可用;随后新建项目、upsert 事实并带 edges 生成攻击图;登记漏洞后在 Web 账本查看三态流转;浏览/搜索知识库确认自动扫描;最后配置 FOFA/Hunter/Quake key,用 gather_assetsicp="xxx" 收集资产并检查资产面板分页、搜索与前往链接。

应用场景:适合长周期授权评估与团队协作

bface-agent 更适合“过程要留痕、结论要可复现”的场景,而不是一次性跑完就结束的扫描。典型用法包括:企业内网授权渗透评估中的资产测绘与路径记录;红蓝对抗演练中的受控 C2 会话管理;Web 应用与 API 安全评估中的漏洞假设、复现与状态追踪;跨多天任务的目标档案交接;以及安全研究团队把 SQL 注入、Prompt Injection 等知识库沉淀为可检索方法论。

对团队而言,项目黑板与漏洞账本降低了沟通成本:新接手的人不用翻聊天记录,先看 ops/engagements/<id>/ 的 target、credentials、vulnerabilities、attack-graph、footholds、loot,再决定下一步动作。对管理面而言,10 页 SPA 与 75 个 REST 端点覆盖了概览、C2、WebShell、漏洞、项目黑板、审批、监控、知识库、Skills 与子 Agent,且支持 F5 记住页面、自动刷新与避免旧 JS 缓存。

总结:把 Agent 从“会跑命令”推进到“会沉淀经验”

bface-agent 值得关注的点,不是它把多少安全工具接进了 MCP,而是它用 Claude Code 的原生机制把渗透测试中最容易丢的三类资产——目标上下文、攻击路径、验证证据——变成了可持久化、可交接、可审计的结构化对象。如果你的团队在评估 **Claude Code 红队 Agent、MCP 安全工具链、Web 管理面化渗透工作流**,这个项目提供了一个很清晰的参考实现。

项目地址:https://github.com/gmeier909/bface-agent

收藏 0
评论
博主关闭了评论
友情链接