無止界

基于AI驱动的实战网络攻击

基于

2025年11月19日,上海·磐石行动,《基于AI驱动的实战网络攻击》主题演讲PPT和讲稿已经过数据输出审批。

P1

各位领导、专家同仁,大家下午好。

今天很荣幸受到管局与协会的邀请,来分享我们在HW过程中的一些经验与实践。

今天分享的主题是,基于AI驱动的实战网络攻击,更真实地模拟黑客以攻促防。

P2

今天分享的内容主要分为四部分

P3

首先回到实战网络攻击这件事上,我们原本对这件事的期望是能够全面、深入、持续不断进行实战检验,不断揭示新的薄弱点以及验证已知防护路径的效果,降低被真实攻击者利用的风险。

理想状态是有一批各种背景各个地方的顶尖攻击者,他们非常了解支付宝,7×24小时不间断,对支付宝的所有可能的入口,尝试了所有的攻击方法,并不断渗透扩大影响,拿到了大批量数据和资金。

但现实是,我们尝试了各种方法,仍然达不到我们期望的效果。

  • 比如我们SRC奖励已提高到5倍,一个高危可以有十来万。但是基本收不到复杂漏洞,主要覆盖局限在互联网可访问的边界应用上。
  • 我们每年也会邀请头部安全公司进行实战红蓝演练,但效果也差强人意,还是常规套路搞最薄弱的路径,对业务的理解不太深入,周期也短,频次也低,每次不同的人带队攻击效果差异也挺大的。
  • 我们自己的蓝军和外面的问题很相似,我们还组建了紫军,对紫军开放所有内部信息,来提高检验效率。但总像是一个堆人力的事情。

P4

直到,我们尝试了AI攻击,让我们看到了一丝曙光。下面请先看下这个视频。

【播放视频】

这个视频是我们早期的一个Demo,他能根据我们输入的攻击意图,去拆解步骤,控制浏览器打开目标网站,理解网站功能,猜测并尝试可能的漏洞,测出来存在SSTI漏洞,还能够调用命令行监听端口以及实现反弹shell。

P5

  • 整个过程,人工只输入了一个指令,剩下所有的操作都是AI自己完成的。可以看到他已经具备初级攻击者的能力了,但是离高级攻击者还有很远距离。
  • 我们分析了下,主要的瓶颈还是在于它非常依赖基座大模型的能力、工程设计以及上下文的内容。我们也推演过,即使做好这三点,实际效果可能也不太理想。
  • 一个简单的办公网站点渗透测试的例子,人类安全专家去测试时,会有一套最优解,比如先看看是否有BUC再去进行功能尝试,专家不会对每个站点的每个buc都重复测试,也不会用cve去扫网站,但AI Agent会。
  • 我们认为这是因为这种设计都是希望把Agent变得足够通用,能够应对所有渗透测试场景,这会导致信息过载和测试目标思路不明确,追求通用而忽视了专家经验。
  • 我们在想如何将人类专家知识经验以及历史上很好的工具能力能和AI融合起来?

P6

回到AI特定领域场景应用的演变路径,我们发现AI工程一直都在解决如何让AI更智能、更可控的问题。

从第一代的面向基础模型的提示词工程,通过与基础模型直接对话,将精心设计提示词来优化输出,让AI更好的理解和响应人类的自然语言指令。安全典型应用:询问某段代码可能的漏洞;生成钓鱼邮件等。

第二代面向Agent的上下文工程,基于ReAct、Plan-and-Execute等Agent设计模式,让AI更听话、更聪明、更准确,也能执行更复杂的任务了。典型能力Claude Code;安全典型应用:安全知识沉淀与答疑;漏洞挖掘;通过工具和现有安全系统互动。

第三代面向意图的意图工程,将专家的意图精确的表达出来并稳定执行。典型能力:GitHub Speckit、蚂蚁集团的HOP;

发展到现在,无论用什么方法,核心还是对意图的理解以及执行。

P7

我们经过很多次迭代探索,找到了我们任务有先进性且落地效果不错的设计思路。

首先是攻击知识层面,我们提出攻击模式图的概念,通过它来对专家经验进行沉淀,主要是用图技术结合自然语言,通过节点、边以及属性能够很形象描述渗透测试过程。可以简单理解是一种高纬提示词,包括了对Agent的行为指导、工具的使用建议、上下文的加载策略等,而这一切只需要使用自然语言描述,修改起来也非常方便。实现从原先的静态文档知识到可供AI执行的知识。

其次,由解释器与执行引擎组成的APG Runtime,来理解和执行APG。会沿着APG的节点路径移动执行,包括图遍历、提示词编译、上下文管理和工具调度,以及维护当前执行状态,避免因为大模型幻觉问题导致每次执行结果不一样。

具备安全专家的知识经验和执行能力后,就需要将那些历史上效果比较好的工具封装成AI可以友好使用以及通过AI再强化工具能力。包括基础工具集,像操作浏览器、命令行以及各类App等。也包括攻击工具集,包括信息收集/漏洞利用/权限维持等。让AI不用每次低效的去尝试攻击,也能让AI赋能工具能力,提升原有工具能力上限。

最后,有一个观测指挥平台。人类只需要提供目标,之后的意图理解、任务拆解、信息收集、漏洞利用、权限维持、横向渗透等都将由AI自驱动完成,AI执行的所有过程和结果数据都能在平台中观测到。人类通过观测数据,辅助AI持续迭代完善安全知识与工具。

P8

回到APG,我们认为安全专家经验要让AI得到有效执行,是需要结构化的,其次其知识粒度需要达到可执行程度,且可以快速分享传播和优化迭代。我们研究了包括MITRE ATT&CK、PTES、Kill Chain、Attack Trees以及各个安全团队自己内部的SOP文档,发现基本都是给人类看的,比较通用广泛的描述。是文档化的知识,而非可执行的知识。

P9

拿针对办公管理后台的渗透测试举例,我们可以写一个简单的APG,开始节点接收域名,然后判断sso,然后判断网站是否有敏感功能。例如对所有支付宝办公网可访问域名跑一遍该APG后,每个域名都会有一个对应的实例数据图,将其聚合,就可以回答很多安全问题。

  • 办公网域名中有多少没有接入SSO?
  • 办公网站点最容易出现的漏洞是什么?最容易成功的路径是什么?
  • 办公网站点整体攻击面大图是什么样子

当进行足够多的APG以及AI渗透测试后,就会自然形成一份细粒度的攻击面地图与防御薄弱点。

P10

APG作为静态图结构定义了专家经验的执行流程,但不能直接在AI模型上运行。APG Runtime就是用来理解和执行APG的,他的作用是在APG和底层LLM之间扮演中间层角色,可以实现在任意模型任意Agent上运行。实现过程中我们也调研了各类海外和开源的产品,最终在实现过程中,采用的了轻量和现代的Pydantic AI框架,而非LangGraph这种重量级的状态机编排框架,甚至Claude Agent SDK这种高度封装的黑盒方案。

P11

我们通过APG与APG Runtime能够尽可能保证AI能理解和执行我们的攻击意图。但在攻防领域,安全工具能力的差异可能就是最后影响攻击效率甚至效果的最大因素。我们不能让AI一次次的重新解决各种已经被解决的很好的问题,因此我们要给AI提供足够强大的肌肉记忆。

AI Native,AI时代的安全工具不是BurpSuite、CobaltStrike这类只适合人类操作的图形化工具,AI更擅长编写代码解决问题,因此我们所有安全工具都要进行AI Native改造。

我们的实现方案是CodeMode,让AI编写Python脚本去调用我们沙箱内提供的各类安全工具解决问题,而不是调用命令行、MCP、Tool等来回交互的工具,让ai从工具的调用者变成了工具的编排者。

按照这个思路,我们在最近腾讯举办的AI智能渗透大赛上靠100行代码,没做任何提前准备,就稳居第四。

P12

我们到底需要一个AI辅助人类的平台还是人类辅助AI的平台?我们认为在AI时代,不再需要一个需要人工填各种表单、点各种按钮,不断需要和人类交互的平台。而是交给AI一个任务后,我们只需要通过平台来观察AI在做什么,怎么做的,结果是否符合预期。人类需要重点关注和提升不符合预期的部分,并优化迭代APG、APG Runtime、工具,通过这样的循环持续优化AI得能力。

P13

最新版本的演示效果

[播放视频]

P14

当前我们这套平台已经经过多次大的迭代,已初步具备自主实战攻击能力。已开始应用在ASM、BAS以及办公网风险挖掘与利用等场景。短期来看,他可以成为可复制的蓝军专家能力,预计明年可以至少替代50%+基础攻击工作。长期来看,我们认为是可以达到APT级别的攻击能力。有两个关键阶段,一是基于该架构快速提升我们在其他安全领域的agent能力,让各个安全领域agent能够形成协作。二是实现ai自迭代进化能力,而不是需要人类去完善优化。我们预计用不了多久,在磐石行动中排名靠前的都是AI驱动的攻击智能体。

P15

我的分享到此结束,谢谢!

無止界