RHG之人工智能漏洞挖掘

字节鎏金师
• 阅读 440

传统的漏洞挖掘通常由安全专家进行手动分析和测试,但随着人工智能技术的发展,自动化漏洞挖掘已经成为一种有效的辅助手段。尤其是近几年,人工智能攻防大赛RHG的兴起,推动了该技术的落地和实践。在《RHG之漏洞自动化利用》中我们为大家简析了RHG中常用的关键技术,本文我们着重为大家分享人工智能攻防RHG大赛中漏洞挖掘的内容。

在RHG竞赛中,参赛选手通常需要构建能够自动发现计算机应用程序或服务中安全漏洞的人工智能系统,该系统能够对程序进行自动化分析,并发现可能被攻击者利用的漏洞。其中,主要应用了fuzz(模糊测试)技术、符号执行技术和代码插桩技术。利用几种先进技术的进行漏洞(缓冲区溢出、整数溢出、格式化字符串漏洞、代码注入、路径遍历、SQL注入等)挖掘,能够更快的发现并利用漏洞,以获得分数,赢得比赛。

模糊测试(Fuzz Test):模糊测试是一种自动化的软件测试技术,通过输入大量的随机、异常或者边界值数据来测试目标程序的鲁棒性。在RHG中,参赛选手会使用模糊测试生成大量的测试用例,这些测试用例会作为输入提供给目标程序。模糊测试的目的是观察目标程序在不同输入下的行为,以此发现潜在的漏洞。模糊测试通常会使用大规模执行来加速漏洞发现的速度。
RHG之人工智能漏洞挖掘
图 模糊测试工作原理

符号执行(Symbolic Execution):符号执行是一种静态分析技术,与动态执行相对。符号执行中,程序的输入不使用具体的值,而是用符号来表示。这使得符号执行可以计算程序中所有执行路径,而不仅仅限于浅层路径。在RHG中,参赛选手使用符号执行来探索目标程序的执行路径,并通过符号约束计算不同路径的触达条件。符号执行的结果是生成一系列符号化的路径条件,这些条件描述了在输入特定的下程序执行的约束条件。
RHG之人工智能漏洞挖掘
图 符号执行工作原理

代码插桩(Code Instrumentation):代码插桩是一种动态分析技术,在程序执行时向目标程序的二进制代码中插入监测代码,以收集运行时信息。在RHG中,参赛选手通过代码插桩技术,为目标程序添加监视代码,用于跟踪程序的执行路径和记录程序的运行时状态。代码插桩产生的信息有助于识别程序执行过程中的异常行为和漏洞。
RHG之人工智能漏洞挖掘
图 代码插桩工作原理

在RHG中,这三种技术相互融合,形成了一种综合的漏洞挖掘方法。具体流程如下:
RHG之人工智能漏洞挖掘
图 漏洞自动化挖掘

🔹初始阶段:模糊测试技术用于生成大量的随机输入,将这些输入提供给目标程序执行。这些输入会触发目标程序中的不同代码路径。

🔹符号执行阶段:利用符号执行技术对模糊测试生成的测试用例进行分析。符号执行会计算程序执行的不同路径,并收集关于程序状态的符号约束信息。符号约束描述了在特定输入下程序能够到达指定路径的约束条件。从程序路径中选择部分路径,根据各个路径的约束条件,生成新的、符合路径约束的测试用例。这些生成的测试用例更有可能触发深层的未知漏洞。利用符号执行生成的测试用例验证目标程序的执行状态,检查是否出现异常行为。如果发现异常行为或异常状态,进一步分析其成因和利用可能性。根据验证结果,给模糊测试程序进行反馈,迭代模糊测试的输入生成策略,以便更好地挖掘漏洞。

🔹代码插桩阶段:代码插桩技术用于对目标程序的运行状态进行动态监测,包括代码覆盖率、路径信息和程序状态等。代码插桩为模糊测试和符号执行提供了关键的运行时数据,帮助识别异常行为和异常状态。

🔹漏洞挖掘阶段:结合模糊测试和代码插桩的结果,参赛选手可以识别出目标程序中的疑似漏洞。符号执行生成的符号化输入可以帮助模糊测试触达更多路径,从而挖掘更多潜在的深层漏洞。同时符号执行也能够为选手提供精确的漏洞触发路径。插桩提供的运行时信息可以帮助选手确定程序的异常行为和异常状态,从而更准确地发现漏洞。

🔹漏洞验证和利用阶段:在潜在漏洞后,参赛选手需要对这些潜在漏洞进行验证和利用。符号执行计算出的漏洞触发路径可以精准的触达漏洞的触发点。一旦漏洞被确认,参赛选手可以进一步构建针对该漏洞的攻击手段和攻击策略。

🔹自动化修复:在RHG竞赛中,参赛选手可能需要在发现漏洞后执行自动化修复策略。符号执行生成的路径约束信息可以帮助参赛者理解漏洞的原因和影响,从而更容易设计修复方案。同时通过符号执行计算的输入来测试修复策略的有效性和正确性。综合利用模糊测试、符号执行和代码插桩技术,参赛选手可以自动化地发现和验证目标程序中的漏洞,并在有需要的情况下设计修复策略。这种综合的漏洞挖掘方法在RHG中被广泛使用,为参赛选手提供了强大的技术能力来加速漏洞发现和修复的过程。云起无垠作为新一代智能模糊测试领跑者,在网络攻防领域有着深厚的研究和实践经验积累。安全团队成员由国内顶尖蓝莲花战队、天枢战队核心成员组成,曾多次征战世界级CTF竞赛,并取得佳绩。结合模糊测试技术积累和大赛实战经验,云起无垠率先推出了RHG培训服务,旨在帮助企业和机构培养高素质的网络安全人员。RHG培训课程涵盖了基础级、入门级、专业级、竞赛级四个级别,通过学习学员可以提升自动化漏洞挖掘技术,在实战中提高自身安全攻防水平。

点赞
收藏
评论区
推荐文章
李志宽 李志宽
4年前
新手入门二进制安全和网络渗透,该选哪个比较好?
大家好我是周杰伦1方向选择最近,有很多粉丝都不约而同的问到了我一个问题:二进制安全和网络渗透,怎么选?今天这篇文章,就是尝试解答这个问题,希望对大家选择方向上有所帮助。首先先来理清楚,这两个方向分别是干嘛的。一般来说,二进制安全方向,主要是做逆向分析、漏洞挖掘与Exploit、内核安全、破解等工作。网络渗透主要是Web安全、内网渗透、漏洞扫描与利用、安全审
Stella981 Stella981
4年前
Linux应急响应(三):挖矿病毒
0x00前言随着虚拟货币的疯狂炒作,利用挖矿脚本来实现流量变现,使得挖矿病毒成为不法分子利用最为频繁的攻击方式。新的挖矿攻击展现出了类似蠕虫的行为,并结合了高级攻击技术,以增加对目标服务器感染的成功率,通过利用永恒之蓝(EternalBlue)、web攻击多种漏洞(如Tomcat弱口令攻击、WeblogicWLS组件漏洞、Jboss
Stella981 Stella981
4年前
Linux提权的几种常用方式
在渗透测试过程中,提升权限是非常关键的一步,攻击者往往可以通过利用内核漏洞/权限配置不当/root权限运行的服务等方式寻找突破点,来达到提升权限的目的。1、内核漏洞提权提起内核漏洞提权就不得不提到脏牛漏洞(DirtyCow),是存在时间最长且影响范围最广的漏洞之一。低权限用户可以利用该漏洞实现本地提权,同时可以通过该漏洞实现D
Stella981 Stella981
4年前
APT攻击利器-Word漏洞CVE
一、概述近期,百度安全实验室反高级威胁团队截获多封利用MicrosoftOfficeWord漏洞进行攻击的恶意邮件。通过对邮件附件样本进一步分析发现,其利用的漏洞为澳洲国防部计算机应急响应中心提交的CVE20167193。该漏洞为RTF文件解析漏洞,成功利用该漏洞可以远程执行任意代码。我们拦截的样本双击打开后会在本地释放后门程序
Stella981 Stella981
4年前
Appscan
IBMAppScan该产品是一个领先的Web应用安全测试工具,曾以WatchfireAppScan的名称享誉业界。RationalAppScan可自动化Web应用的安全漏洞评估工作,能扫描和检测所有常见的Web应用安全漏洞,例如SQL注入(SQLinjection)、跨站点脚本攻击(crosssitescripting)、缓
新支点小玉 新支点小玉
1年前
CNAS中兴新支点——源代码审计对企业有哪些好处
源代码扫描,对应用程序进行静态漏洞扫描,分析源代码中存在的安全风险,运行应用于模拟器中对应用进行实时漏洞攻击检测。你是否了解源代码扫描对企业的好处?一、源代码扫描,通常能够帮助企业解决这些问题:1、软件代码中安全漏洞和未声明功能的存在是信息安全事件频繁发生
陈哥聊测试 陈哥聊测试
1年前
DevSecOps 中的漏洞管理(下)
在拥有高节奏的开发环境和具有自动化管道的IT运营团队的组织中,实现有效的漏洞管理非常重要。这可以通过在软件开发生命周期的早期和所有阶段引入安全方面并及时修复漏洞来实现。
从CVE-2024-6387 OpenSSH Server 漏洞谈谈企业安全运营与应急响应
在当今数字化时代,网络安全已成为企业运营中不可忽视的重要一环。随着技术的不断发展,黑客攻击手段也在不断升级,其中0day漏洞的利用更是让企业防不胜防。0day漏洞是指在厂商尚未发布补丁修复的情况下,黑客已经发现并利用的安全漏洞。这类漏洞的危害极大,往往会给