黑盒渗透智能体 - 方法论探讨
原创
gachong
gachong
0x1F安全指北
2026年9月1日 09:00
在小说阅读器读本章
去阅读
在公众号小说中沉浸阅读
前段时间,团队(Timeline Sec)受邀给云鼎实验室的benchmark出题,笔者也贡献了一点薄力,并顺带用一个初版的智能体“虫洞”,参与了tsecbench v1的跑分,拿下 68/74 个 flag,覆盖 Web 漏洞、二进制、已知软件利用、AI 应用安全、云攻击、多阶段渗透全部能力域,多阶段渗透的 B 系列多道靶机全 flag,走通了外网门户、内网横向、OA 系统、数据库的完整链路,总榜第二。
虫洞的想法其实并不复杂,把渗透过程就是知识图谱的增量构建。侦察发现、漏洞确认、凭据、flag,全部是不可变事实节点,追加写进 SQLite 的 DAG。多轮推理在图谱拓扑上累积,走过的死胡同不再走第二遍,这比任何提示词里的\"注意不要重复\"都硬。
部分是认知和调度。OODA 循环,三题并发,渐进重试窗口,双层停滞检测。还有一整套靶场对抗的工程细节,比如靶场容器会定期重实例化,flag 值跟着轮换,虫洞维护一个跨轮次的提交状态机,被平台拒绝的旧 flag 标记失效、永不重提、不计入完成判定,逼着智能体从当前实例重新读值。
在建模期间,我很大程度上,参考了一位我很尊敬的前辈涙笑师傅的黑板结构,也是tsecbench的榜一大哥,黑板即图模型 ,黑板三原语 Fact、Intent、Hint,无角色,无衰减。虫洞的图谱和它是同一个源流,研究它的实现之后我更确信,这张只追加的图就是这类攻击型渗透于系统最值钱的东西。
那么进而的,我对黑盒渗透智能体有了更多的思考,我去收集了56个开源的渗透agent,并逐个审计验证后,总结出了在当前时间点,中外渗透agent'的一些通用性思路,与我的一些思考,愿与各位讨论交流。
01 模型说\"我发现漏洞了\",你要全信吗
这一块我个人把他分为四档。L0 直接信,9 个。L1 让模型自己打分,18 个,deadend-cli 给置信度做算术,确认加 20 点,证伪减 30 点,分数低了强制换招。L2 再请一个模型当裁判,18 个,guardian-cli 红蓝法官辩论,promptmap 立了条规矩,能用程序判的绝不麻烦裁判。L3 不让模型签字,11 个,pentest-ai 规定 verdict 必须点名一个能机器复算的 oracle,否则拒绝出报告。
跟规模、语言、架构都无关。十万行的可以是 L3,99 行的也可以是 L0。纯看作者想不想。
比如pentest-ai,把验证做进代码而非提示或裁判——发现默认 candidate,机器 oracle N/N 幂等重放+必须失败的控制组才挣得 VERIFIED,LLM 协调但永不裁决,第三方扫描器输出只作线索,弃权即诚实;是全景观验证文化的执行层天花板。
02 让模型拿 shell,还是让它只动嘴
全权执行的 18 个,模型直连 Kali,上限高,失控面也大。收敛型把执行和裁决收回代码,CyberStrike 六禁令最典型,模型不亲自测,凭据只出自浏览器扩展。有个通用机关,上报必须走带 schema 校验的工具调用,shannon 的 submit-tool,strix 服务端 CVSS 加十个必填。越成熟的项目,越把模型按在动嘴的位置上。
比如CyberStrike,以签名技能图与流量测试管线为核心的终端红队平台——7,656 个 Ed25519 签名技能(chains\_with/severity\_boost/CWE 组合语义、CIS 逐控制条目化)惰性注入 13+ 域代理,流量经 HackBrowser 进入纯编排者调度的 8 测试器按 3-gate 出发现;知识密度现役极点、验证为提示词级。
03 SKill和验证,几乎不能兼得
装了一脑子招式但不验货的,和啥都不背但每句话都要证据的,56 个里 55 个选了边。skill满分的 10 家有 9 家验证拉胯,验证满分的 7 家有 6 家没知识。唯一双满分是 communitytools,44 个技能全靠失败喂出来,15 轮从 89.4% 拉到 104/104,知识生产本身就是验证的副产品。
skill决定想得到什么招,验证决定哪招算数。
比如communitytools做得最好,以失败驱动的技能迭代逼近知识边界——裸模型跑基准、失败当课程、缺失技术泛化成 markdown 技能(×15 轮 89.4%→104/104,零微调),报告只收 validated/ 且不设 gaps 章节。
04 蚂蚁路线,两代进化
信息素黑板出现两次。一代 Cairn,三原语,无衰减,54/54 全杀。二代 Pentest-Swarm-AI 补了时间与信任两个维度,信息带半衰期,token 类快过期,端口类跨战役保值,每条发现做 Ed25519 签名防冒名,再叠 MemoryGraft 防记忆投毒。价值就一条,让\"哪条路曾经有货\"这种弱信号跨任务活着。
说说Pentest-Swarm-AI 吧,他是给 stigmergy 补上时间与信任两个维度——黑板发现是带 base 权重与半衰期的信息素信号(逐类型节律),每次写入经 Ed25519 逐发现签名且公钥绑定 agent 名,另有 MemoryGraft 检测与 nuclei 模板反哺,信息素群体范式的完成态样本。
05 教模型说\"我多确定\"
不加工具,改模型的自我汇报。deadend-cli 四问,我知道什么、想要什么带置信度、怎么测、如何验证。Cyber-AutoAgent 的 Ghost 头同源,低于 50 分强制换路。LuaN1aoAgent 走到头了,把科学方法直接写成行为契约。把\"我不确定\"说出口,幻觉路径少一大截。天花板也明确,它是提示词,得配代码裁决才完整。
比如deadend-cli是以置信度为决策主轴的本地渗透 agent——ADaPT 按需分解承载 supervisor 三路由与 judge 二判,全角色共享反伪造块,置信度经五档带与可加 rubric 算术化并直接映射策略(fail/expand/refine/validate)
06 发现是earning来的
各家条款不同,哲学一样,证据必须先于结论存在。Cyber-AutoAgent 绝不硬编码成功旗,成功旗要运行时推导。pentest-ai 在 safe 模式遇到要建账户的写操作直接弃权,发现留在 candidate 不谎报 verified,弃权即诚实。vulnhuntr 七轮点名要码,1334 行出 22 个真实 0-day。
比如vulnhuntr,把审计还原成人类审计员的工作方式:正则筛远程入口→LLM 以世界首席安全专家人设宁滥勿缺初判→逐漏洞类型最多 7 轮'点名要码'(jedi 按 code\_line 锚点取回定义、三方库靠模型先验)拼完整污点链;全部精髓浓缩在 1,334 行里,产出 22 个真实 0-day——'提示词协议+精确工具'胜过'重架构'的最佳实证。
07 提示词工程的迁移
攻击知识正在从代码常量搬进 markdown 和 YAML,communitytools 的 SKILL.md,pentest-ai-agents 的 52 个人格文件,能单独改单独发。走得最远的用 Langfuse 托管提示版本,改提示不发版,全景观独一份。反面是 Zen-Ai-Pentest,212k 行,90 多个目录,概念重复三遍,没架构约束的知识堆积就是废墟。
见反例,Zen-Ai-Pentest,重心在外围包装。为 AI 辅助开发不设边界会发生什么提供最直接的田野证据。
08 安全要写进代码,不能写在提示词里
nebula 用 rootless 容器加审批暂停,T3MP3ST 把授权做成 receipt,出网 fail-closed,Dark-Moon 做可逆令牌化,模型在结构上就看不到原始数据。反面是 CyberStrikeAI 的\"授权前置、模型禁复核\",那段提示词本身就是一份越狱模板。安全边界在系统而非模型拒绝,这句话值得大家记住。
nebula把操作员权威做成桌面工作台的第一架构事实——supervisor/specialist/verifier 三协议+计划 DAG 类型校验+保留开销的审批暂停+rootless OCI+密码学级证据链,模型是可拆卸件(无 AI 时工作台照常可用)
09 记忆划分与压缩
确证的事实进结构化存储,聊天记录才可以压缩扔掉,两家绑在一起设计就不怕长会话。VulnBot 8192 字符硬闸,AI-OPS 的白板既是账本又是压缩检查点,PyRIT 连被拒的那一轮都能做成可撤销事务。可计算的部分交给算法,pentestagent 的跳板链是 NetworkX 算的最短路,不让模型即兴编。
pentagi把渗透测试组织成一家'AI 公司'——subtask 计划(10/30/30/30 黄金比分布)+增量补丁修订+六专家递归 run-loop(reflector 用户扮演纠偏等四重护栏)+enricher 检索建议分离+匿名化 pgvector 记忆与 Graphiti 漏洞生命周期图谱——平台派代表作:验证弱于 shannon、灵活弱于 strix,但记忆系统、多租户、可观测性和'小模型也能跑'最彻底。
10 声实落差:挂 AI 名的可能是插件也可能就是个benchmark
Nettacker 全库零 AI,索引误分类。AutoPentestX 横幅印着 Neural Core: OPERATIONAL,组件不存在。AI-VAPT 的 README 声明六层架构,实况 1.8k 行 React 加硬编码假数据。hexstrike 是个不错的 MCP 工具服务器,但零 LLM。AutoPentest-DRL 是 DQN,不是 LLM。
11 代码体量和产出没直接关系
99 行的 tinyctfer 在 238 个队的 TCH 拿第 4。630 行的 cochise 在 GOAD 三域拿到域管,不到两美元。5.1k 行的 ctf-agent 拿 BSidesSF 2026 全部 52 题。另一头,212k 行的 Zen 是废墟,169k 行的 CyberStrike 靠架构纪律撑住。这个赛道的壁垒是验证文化和知识编码,不是代码量。
12 真智能体只有 35 个
按有没有 LLM 决策循环、能不能独立运行定性,56 个里本体 33 个加框架 2 个。剩下 21 个,10 个是考官,garak 和 PyRIT 是测 agent 的,6 个零 AI,2 个是挂 Claude Code 的技能包,工具服务器、训练流水线、论文清单各一。
13 底座和沙箱
33 个本体大多自研决策循环,通用框架没一家超过两个用户。Claude Code 阵营 6 家最成气候,直接挂宿主,当可互换后端,或者复用用户已登录的本地 CLI。LiteLLM 是事实标准的接入层。沙箱是重灾区,真容器隔离只有 4 家,多数项目本地 shell 直执行,隔离靠提示词兜底。
如虫洞就是基于claude cli二开的。
方法论还有很多,日后再慢慢总结吧,黑盒渗透智能体,模型提假设,代码出裁决,图记事实,失败经验自进化等等。安全边界不写在提示词里,写进系统。
方法论里没写的东西同样值钱。多 agent 角色分工、预设攻击流程、重型编排、代码量同样重要。Cairn 和虫洞都一致认为,架构大部分没用,有用的架构就那几块,其余是装饰,装饰多了是负资产。我觉得下一个要解决的问题不是架构,而是把验证与拟人,再到超人,变成黑盒渗透的原生环节。
我是gachong,目前于AI安全公司任职高级研发工程师,如果你同样对安全智能体、AI原生安全、AI计算法学与哲学探讨感兴趣,欢迎加我联系方式讨论~
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。




![[议题分享]AI智能化渗透的过去与未来—涌现、协作与新形态的实践经验"](/images/random/titlepic/5.jpg)




评论