中美共识,欲用AI检测系统漏洞
佛系袁大多数网络安全事件是软件代码错误的结果,黑客有名的零日攻击,利用未知的漏洞渗透到计算机系统,Stuxnet是针对伊朗铀浓缩计划中的计算机病毒,是零日攻击的着名例子。
然而,每年写入数十亿行代码,捕获和纠正每个系统漏洞都很困难。美国和中国的研究人员认为人工智能或许可以提供解决方案。
到目前为止,随着漏洞的数量不断增加,人力已大大跟不上进度。美国军方研究机构国防高级研究计划局(Defense Advanced Research Projects Agency)的项目经理桑迪普·尼玛(Sandeep Neema)表示:“软件中的漏洞并没有减少,这是令人担忧和具有挑战性的。”该机构已花费数百万美元资助开发人工智能系统用来检测软件缺陷。
当前的软件检查技术有点像文字处理器中的拼写检查,识别印刷或语法错误。在将新软件付诸实践之前,开发人员通常还会审查彼此的代码并运行测试。
“就我们如何提高软件质量而言,最先进的技术仍然是测试驱动的,”Neema先生说。这些方法的问题在于没有发现许多错误,即使开发时间的50%到75%通常用于测试。AI bug探测器有望使开发人员的审查代码更准确,减少劳动强度。
“它确实减少了花在寻找那些高优先级漏洞上的时间,”机器学习科学家Rebecca Russell说道,她在Drapa实验室帮助设计的人工智能系统得到了Darpa的资助。根据Russell女士及其同事今年夏天发表的一篇研究论文,Draper的系统扫描软件以识别程序的哪些部分包含漏洞,其性能优于使用静态分析的三种工具,这是最好的软件审查方法之一。
该项目的技术总监Marc McConley表示,该实验室目前正在与美国国防部的各个部门合作,以寻找该技术的应用。“他们主要担心的是保护他们的大型软件系统免受网络攻击,”
虽然这项研究处于初期阶段,但德雷珀还在开发能够自动修复软件故障的人工智能。多伦多大学计算机科学助理教授范龙也从事自动软件修复工作,他表示,未来几年可能会出现商业上可行的自动修复常规错误的工具。“解决许多这些错误并不是很有创意,人们往往会在类似的系统上犯同样的错误,“龙教授说。
中国的国家机构也资助了研究,以生产AI错误检测系统。德克萨斯大学圣安东尼奥分校的计算机科学教授Shouhuai Xu表示,当对四种“非常广泛使用的”商业软件产品进行测试时,该系统发现了10个尚未检测到的漏洞,该系统由一组学者开发。
这些隐藏在存在安全风险的缺陷上的工具仍处于开发阶段,但一些公司已经在使用AI进行一般软件扫描。例如,视频游戏制造商育碧(Ubisoft)在3月份发布了一款工具,该工具使用AI在实施之前标记可能存在错误的代码。该公司总部位于蒙特利尔的研究实验室负责人Yves Jacquier表示,他们的工具在测试期间将开发时间缩短了20%,并且公司计划在今年年底之前进行“重大”推广。
Darpa关于错误检测的工作是一个名为Muse的程序的一部分,该程序还在更广泛的类别中称为“大代码”,以促进AI研究。该字段基于与“大数据”大致相同的原则,检查大量代码库以生成见解并学习如何编写更好的代码。它旨在通过创建首先具有较少缺陷的代码来解决另一方面的软件问题。