当前位置: 首页 > article >正文

“AI+Security”系列第3期(二):AI赋能自动化渗透测试

图片

近日,“AI + Security” 系列第 3 期:AI 安全智能体,重塑安全团队工作范式技术沙龙活动正式举行。该活动由安全极客、Wisemodel 社区、InForSec 网络安全研究国际学术论坛海升集团联合主办,吸引了线上与线下千余名观众参与。

在活动中,北京大学计算中心网络安全室主任、计算与数字经济研究院网络安全研究中心常务副主任周昌令以“AI 赋能自动化渗透测试”为题进行了精彩分享。他围绕渗透测试的层级、自动化渗透测试、智能化渗透测试以及未来展望做了深度输出,重点阐述了网络安全的本质,深入探究以攻促防,进而构建安全防线。

当前,网络安全工作存在诸多痛点,主要包括安全问题普遍存在、安全投入不足、安全人员稀缺以及安全风险识别不准等问题。正因如此,网络安全威胁带来的影响难以估量。网络安全的本质在于攻防对抗,正所谓“未知攻,焉知防”。所以,做好防护的前提是必须擅长攻击,通过攻击来验证并提升防护能力。渗透测试作为攻击方常用的技术手段,近年来一直是网络安全行业惯用的方式,用于验证防护能力。基于此,周昌令先生针对渗透测试进行了精彩解析,让大家对该技术有了更深入的理解。

渗透测试的层级

众所周知,渗透测试经历了三个主要阶段,随着测试的深入,渗透测试正在向智能化和自动化发展,以提高应对复杂安全威胁的能力。

图片

1. 简单渗透测试(“大号”漏扫):这是渗透测试的初始阶段,利用自动化或半自动化工具扫描系统,检测并报告数据库中可能存在的弱密码等常见安全漏洞。通过这些漏洞扫描工具,系统管理员可以及时收到安全提醒,从而修复已知风险。

2. 常规渗透测试(人工渗透):在这一阶段,测试人员基于初步发现的漏洞,进行人工或半自动化的深入操作,确认数据库中内容的重要性,例如数据权限问题。该阶段的目标是进一步评估潜在威胁的严重性,尤其是在权限配置不当或数据缺乏横向隔离的情况下,逐步推动渗透测试的自动化进程。

3. 深度渗透测试(攻防演习):这一阶段是渗透测试的高阶部分,通过模拟真实的攻击情景,例如利用日志文件生成shell文件或执行远程代码(RCE),来获取系统的管理权限。该阶段的目的是提高渗透测试的智能化水平,形成更强大的网络防御机制,实现主动安全(Offensive Security)。主动安全的概念是利用与现实攻击者类似的策略,提前发现问题并修复,从而提升网络的防御能力。

在此背景下,许多能够提高渗透测试效率和集成化的工具应运而生。红队成员常用的一些工具包括Cobalt Strike、Metasploit,以及指纹扫描工具Kscan等。此外,某些红队甚至拥有专门的渗透辅助平台。然而,目前大部分工具仍处于半自动化阶段,功能相对单一。

图片

因此,人工渗透测试仍然具有较高的难度,对人员的技术水平和经验积累有着较高要求。渗透过程中涉及到的诸多选择,比如指纹识别、漏洞利用条件的判断、攻击载荷的选择等,都是经验积累的结果。然而,人工操作往往存在覆盖不完整、攻击效率低等问题,不同红队成员之间的经验也难以有效传递。许多时候,渗透测试还需要进行大量重复性检测工作,进一步增加了难度和挑战。通过引入更高水平的自动化与智能化工具,未来渗透测试的效率和覆盖率将进一步提升,减少对人工经验的依赖。

自动化渗透测试

随着AI技术的引入,渗透测试正逐步迈向智能化。基于强化学习和知识图谱的渗透测试工具已经开始应用,并展现出显著优势。

· 知识图谱的应用:通过将网络拓扑结构、漏洞类型等信息进行结构化,知识图谱有效缩小了渗透测试的选择空间,帮助测试人员快速定位潜在漏洞。

· 强化学习的作用:强化学习能够动态调整渗透测试策略,借助多步决策选择最佳攻击路径,并根据测试反馈不断优化下一步的行动。

周昌令先生指出,智能化渗透测试中的一个重要突破是意图驱动技术。意图驱动的多智能体自动化渗透系统具备较高的灵活性和可扩展性,能够根据任务的复杂度和需求动态调整智能体的数量和分工,从而显著提升渗透测试的效率和准确性。

图片

当多个智能体协同工作时,系统通过知识推理自动规划攻击路径并实施攻击。一旦某个漏洞满足利用条件,系统便会自动执行攻击,并更新知识库。如果条件未满足,漏洞会被赋予较低优先级,系统在空闲时执行该任务,并将学习结果反馈至知识图谱以更新利用条件。

图片

在实际工作中,多智能体协同渗透测试一般包含如下五个阶段:

· 任务分解:将渗透测试任务分解为多个子任务,如信息收集、漏洞利用、提权、横向移动等。

· 智能体设计:针对每个子任务,设计对应智能体的触发条件和影响。

· 意图传递:智能体通过高层次的任务表示传递目标和结果,实现协作。

· 协同执行:多个智能体协同完成子任务,最终实现整个渗透测试流程。

· 信息汇集:收集各智能体的执行结果,进行分析和汇总,指导下一步行动。

周昌令先生提到,在仿真靶场中,基于AI的自动化渗透测试工具能够成功利用多个漏洞,展示了其在真实场景中的适应能力。这些工具还在多个高水平网络安全比赛中表现出色,证明了其在网络攻防中的潜力。

图片

智能化渗透测试

随着大语言模型(LLM)技术的迅速发展,其在渗透测试中的应用不断扩展,尤其是在漏洞检测和权限提升方面。LLM可以根据具体需求自动生成攻击树并制定攻击策略,大幅提升了渗透测试的自动化水平。

智能化渗透测试系统的核心由战略、战术技术三大模块构成,分别承担着不同的功能:

图片

1. 战略:

· 意图理解:系统需要明确任务目标,确保每个智能体和操作都准确地朝向预定目标。

· 任务规划:通过深入分析任务需求,制定详细的计划,确保任务执行有序进行。

2. 战术:

· 经验知识:系统利用已有的经验和数据,检索任务执行所需的相关知识,以辅助渗透过程。

· 调度方案:根据任务的需求和优先级,合理分配资源和任务,确保最佳的执行效果。

3. 技术:

· 执行操作:系统通过调用外部工具与环境进行交互,执行任务中的具体操作。

· 获取反馈:根据任务执行结果,系统获取反馈信息,用于持续优化未来的决策和执行路径。

周昌令先生分享了构建智能化网络渗透测试平台的思路。他指出,“AI + 攻防”系统由三个核心模块组成,分别是攻防任务规划、攻防策略推理和攻防工具利用。这些模块通过人工智能技术的引入,大幅提升了网络攻防系统的推理能力和任务调度效率,构建了一个自适应、智能化的多层次攻防体系。

图片

· 攻防任务规划模块:该模块通过AI技术提升了网络攻防系统的推理和情境学习能力,实现了更智能化的任务调度。

· 攻防策略推理模块:基于静态知识、动态环境信息和人类专家经验,结合大语言模型推理增强技术,建立了一个策略推理框架。该框架通过上下文感知、异构知识语料和策略推理技术提供支撑与反馈。

· 攻防工具利用模块:通过构建AI驱动的攻防工具链,实现不同层次和功能的工具整合与调度,完成特定任务。该模块依赖于工具的原子化管理、自适应学习技术和工具进化机制,确保系统具备弹性和自我优化能力。

这些模块共同作用,推动了网络安全大模型的任务调度和策略编排能力的提升,最终目标是增强网络安全的防护能力和洞察力。

未来技术展望

未来,智能化渗透测试将朝着如下四个方向发展:

· 持续工作:智能化渗透测试具有持续工作的能力,它无需休息,可以全天候运行。这使得它能够在人类操作员可能疲劳或不在岗位的时间进行攻击,从而提高攻击的成功率。同时,一旦发现目标环境中出现新的脆弱点或变化,它可以迅速调整策略并执行有效的检测。

· 全面检测:智能化渗透测试能够快速理解和适应网络环境,制定出最有效的渗透测试策略,并且其过程和输出结果可以标准化。这将极大地提高渗透测试的速度和效率,在面对具有多个目标节点的复杂网络环境时,优势更加明显。

· 模拟与训练:智能化渗透测试还可以作为网络安全攻防模拟的平台,模拟现实中可能出现的各种网络攻防场景,帮助攻击者提升实战技能,更好地理解和把握网络环境的弱点,提升对网络安全的认知。

· 网络安全保险:在网络安全保险方面,通过自动检测、评估并应对网络威胁,智能化攻防能够极大地降低安全事故的发生率。同时,它还能为保险公司提供更精准的风险评估数据,帮助保险公司制定更符合客户实际安全需求的保险产品,既能有效保护客户的网络安全,也能降低保险公司的赔付风险。

写在最后

AI赋能的智能化渗透测试正在快速发展,突破了传统渗透测试的瓶颈。通过强化学习、知识图谱和大语言模型等技术的结合,渗透测试的效率和准确性得到了极大提升。这一技术不仅在网络攻防演练中表现出色,还为未来的网络安全防御提供了新的思路和方法。

嘉宾们分享的 PPT 将在安全极客知识星球进行分享,欢迎大家关注,以获取更多干货内容。


http://www.kler.cn/a/321219.html

相关文章:

  • windows使用zip包安装MySQL
  • 机器人C++开源库The Robotics Library (RL)使用手册(三)
  • 跟我学c++中级篇——C++中的缓存利用
  • 深入探索仓颉编程语言:函数与结构类型的终极指南
  • Docker怎么关闭容器开机自启,批量好几个容器一起操作?
  • Day7补代码随想录 454.四数相加II 383赎金信 15.三数之和 18.四数之和
  • GPT实现联网,NextChat插件的配置说明
  • MySQL高阶1853-转换日期格式
  • 手机也可以更换任意IP地址吗?
  • 【算法】分治:归并之 912.排序数组(medium)
  • LLM - 使用 XTuner 指令微调 多模态大语言模型(InternVL2) 教程
  • 【devops】devops-ansible之介绍和基础使用
  • Safari-常用快捷键(IPadOS版本)
  • 一体化平台数据中心安全建设方案(Word完整原件)
  • Fabric V2.5 通用溯源系统——使用Hyperledger Caliper压力测试
  • 体验鸿蒙开发第一课
  • Linux标准IO(二)-打开、读写、定位文件
  • 【RabbitMQ】消息堆积、推拉模式
  • java调用opencv部署到centos7
  • 个人行政复议在线预约系统开发+ssm论文源码调试讲解
  • TypeScript 中的接口、泛型与自定义类型
  • 基于Es和智普AI实现的语义检索
  • <script>中的为什么需要转义?
  • 【python qdrant 向量数据库 完整示例代码】
  • Centos7 docker 自动补全命令
  • js 接力导出