乐读窝

杂志

保存到桌面 | 繁体 | 手机版
传记回忆文学理论侦探推理惊悚悬疑诗歌戏曲杂文随笔小故事书评杂志
乐读窝 > 杂志 > 网络安全攻防人机大战

网络安全攻防人机大战

时间:2024-11-06 06:33:35

参与CGC决赛的机器战队之一CodeJitsu的共同领队张超博士在现场接受采访

2016年8月5日,全球瞩目的第24届黑客攻防夺旗大赛DefconCTF在美国拉斯维加斯开幕。此次最具亮点的,就是参与的15支队伍中,有一支是机器人系统Mayhem,它与其他的14支人类组成的CTF团队,在CGC(网络超级挑战赛,简称CGC)平台上比拼查找漏洞、利用漏洞和修补漏洞的速度。

这次的Defcon比赛主题是:RiseoftheMachines。CTF参赛的14支人类队伍和机器人队伍Mayhem必须一起在CGC的开发平台上DECREE比赛找漏洞的速度。

在DefconCTF首日比赛中,机器人Mayhem一直排名末位,到第二天,Mayhem虽然击败了两支人类队伍,但是排名仍然靠后,这一状况一直持续到7日比赛结束。最终,人类团队美国卡内基梅隆大学的PPP战队、来自中国的蓝莲花团队与上海交大0ops团队联合组成的b1o0ps战队,以及来自韩国的DEFKOR战队分列大赛前三名。

这次比赛对于安全领域的意义类似于1970年的首届机器国际象棋比赛,虽然CGC的人工智能系统初期表现还没有迹象能够全面超越人类黑客的能力,但自动系统用于安全攻防实践将加快到来,就像无人驾驶技术在美国国防部先进项目研究局(DARPA)举办了三届超级挑战赛之后,其技术成熟程度突飞猛进。

全球第一次机器人漏洞修补比赛

Mayhem是在由美国国防部先进项目研究局(DARPA)推出的CGC(CyberGrandChallenge)网络超级挑战赛(或自动化攻防比赛)中胜出的机器人系统,由卡内基美隆大学组成的新创团队ForAllSecure设计。

CGC于2013年发起,是一个全球性网络安全竞赛,目的在于提升利用人工智能进行网络攻防的能力。当软件和系统有越来越多的漏洞时,人工找寻和修补漏洞的能力远远落后于机器的速度,遇到计算机故障生成成百上千条崩溃报告时,这项工作就变得尤其艰巨,2003年的SQLslammer蠕虫在短短10分钟内就感染7万多台电脑,要解决这样的问题,需要靠计算机的自动化工具。因此,DARPA启动了CGC计划,希望研发出一套自动分析、挖掘和利用系统漏洞以及自动修补系统漏洞的CRS系统(CyberReasoningSystem,网络决策推理系统),从而改进人工智能系统对漏洞的检测与防御能力。也就是说,这是机器与机器之间的较量,是全球第一次利用机器人进行网络攻防的比赛。

CGC比赛从2013年10月开始报名,经过3场初赛,在2015年8月的Defcon中,宣布最终入围的7个队伍,包括:由加州伯克利大学DawnSong教授带领的CodeJitsu团队所设计的Galactica机器人;由卡内基美隆大学DavidBrumley教授创立的新创公司ForAllSecure设计的Mayhem机器人;由程序分析公司GrammaTech和维吉尼亚大学组队的TECHx所设计的Xandra机器人;由爱德华大学计算机系的教授JimAlves-Foss及其博士后研究员JiaSong组成的两人团队CSDS所设计的Jima机器人;美国国防公司Raytheon(雷神)组成的DeepRed设计出的Rubeus机器人;乔治亚大学学术理论分析人员和CTF选手组成的四人小组disekt所设计的Crspy机器人;以及加州大学圣塔芭芭拉分校的学生组成的Shellphish所设计的machaPhish等七队机器人,其中Shellphish和卡内基梅隆大学的队伍是同时参与CGC比赛且入围DefconCTF比赛的队伍。

2016年8月4日,CGC比赛的决赛正式在拉斯维加斯举行,此次决赛主要是希望解决现实社会中难以解决的零时差(ZeroDay)漏洞的问题,通过即时的自动化网络防御系统,可以通过系统自动化找出漏洞并且完成修补,真正做到降低这种零时差漏洞对系统和使用者带来的损害。这次CGC的比赛,以内存破坏类型的软件漏洞为主,比如常见的缓冲区溢位(BufferOverFlow)、FormatStringError等。

所有的过程和步骤,都要求做到全程自动化,因此,现场只能看到7台机器的无声较量,95轮的比赛均由两个解说员进行全程解说,7支研发机器人系统的团队成员在一旁观战。

最终,由卡内基美隆大学成员组成的新创公司ForAllSecure推出的Mayhem机器人(Bot)胜出,并获得200万美元的奖金。第二名为TECHx的Xandra机器人,奖金为100万美元。第三名为Shellphish的Mechaphish机器人,奖金75万美元。

值得一提的是,七支入围决赛的机器战队中,有多名华人的面孔。如disekt的领队乔治亚大学李康教授,CodeJitsu领队为加州大学伯克利分校的宋晓东教授,以及共同领队张超博士和战队成员清华大学杨坤,Shellphish战队的fish原是清华大学的王若愚等,并且他们大多与国内著名CTF战队百度-蓝莲花有关。

机器人如何保护网络安全

这七个机器人系统可以使用相关的自动化和漏洞修补技术包括:动态分析(DynamicAnalysis)、静态分析(StaticAnalysis)、符号执行(SymbolicExecution)、约束求解、数据流跟踪技术(DataFlowTracking)以及模糊测试(FuzzTesting)等,并和其他半自动化技术搭配,开发出一整套全自动的网络决策推理系统(CyberReasoningSystem,CRS)。决赛中,各CRS系统需要针对所有待测试的各种漏洞,也包括曾经对于全球网站造成极大冲击的Heartbleed漏洞进行分析,不仅要自动推论出目标程序的漏洞所在位置,也必须要能触发对手系统中的该漏洞以证明漏洞的存在,最后,则必须要自动化修补该漏洞,并防止其他队伍的攻击。

总决赛开始时,每个参赛的人工智能系统被置身于一个受控的封闭环境中。每个系统负责维护自己的所有服务,使其可用性不受影响,同时发掘和修补服务中存在的漏洞,并且攻击对手系统的服务中的漏洞。为了攻击对手,这些参赛的系统需要分析所有服务中存在的漏洞。一旦发现漏洞,CRS系统需要进一步生成攻击样本攻击对手系统。经证实对手服务器确实存在报告的漏洞后就能得分。同理,如果自身的服务被对手系统攻击成功将被扣分。因此,这些人工智能系统还必须同时对自身进行网络防御,保护服务器不受对手的攻击。

为了将网络安全人工智能系统用于打击恶意行为,此次大赛的成果以及参赛软件以开源形式公开,开源软件使得各种漏洞或漏洞利用程序更容易被网民发现和修复。并且,这种开放性也是为了防范对人工智能技术“恶意滥用”。

此次比赛的负责人Walker未对人工智能系统可能带来的网络安全益处进行预测,但他指出,商业软件的各种网络安全进步同样也将给美国军事带来益处,因为后者一般依赖于这种现成的成果。

机器人较量背后的投入

决赛阶段从2015年7月末开始,七支通过预赛进入决赛的队伍均获得DARPA的奖金和计算资源资助。挑战的内容是:在更贴近实际网络攻防的对战环境中,自动化地挖掘漏洞并生成利用程序(exploit)攻击其他队伍,同时自动化地防护自己队伍的程序,包括系统和网络层面防护。

DARPA官方为每个参赛队伍提供的计算资源总价值达60万美元:每个独立的HPC包含64个节点,每个节点包括20Xeoncores、256GBofRAM、2TBofstorage,总计:1280Xeoncores,16384GBofRAM,以及128TB的存储。

据了解,DARPA为CGC项目共投入5500万美元,除上述各队伍的HPC服务器之外,还包括预赛阶段各队伍资助金额825万美元,决赛资助金额525万美元,决赛奖金375万美元,以及其他平台和赛题开发费用、项目管理费用等。

(本文汇编自天极网、人工智能快报、安全牛等编译及原创文章,CodeJitsu队伍的共同领队张超博士亦对本文有贡献。)

图1
   

热门书籍

热门文章