文/陈根 历史表明,网络安全威胁随着新技术的进步而增加。 关系数据库带来了SQL注入攻击,Web脚本编程语言助长了跨站点脚本攻击,物联网设备开辟了创建僵尸网络的新方法。互联网打开了潘多拉盒子的数字安全弊病;社交媒体创造了通过微目标内容分发来操纵人们的新方法,使网络用户更容易收到网络钓鱼攻击的信息; 近年来网络安全事件不断曝光,新型攻击手段层出不穷,安全漏洞和恶意软件数量更是不断增长。2019年VulnDB和CVE收录的安全漏洞均超过了15000条,平均每月高达1200条以上。2019年CNCERT全年捕获计算机恶意程序样本数量超过6200万个,日均传播次数达824万余次,涉及计算机恶意程序家族66万余个。 根据研究集团IDC的数据,到2025年联网设备的数量预计将增长到420亿台。我们正在迅速进入“超数据”时代,但是,在数据算法大行其道人工智能方兴未艾的今天,我们也迎来了新一轮安全威胁。 人工智能攻击如何实现? 我们先想象一个超现实场景: 未来的恐怖袭击是一场不需要炸弹、铀或者生化武器的袭击,想要完成一场恐怖袭击,恐怖分子们只需要一些胶布和一双健步鞋。通过把一小块带有电子芯片的胶布粘贴到十字路口的交通信号灯上,恐怖分子就可以让自动驾驶汽车将红灯识别为绿灯,从而造成交通事故。在城市车流量最大的十字路口,这足以导致交通系统瘫痪,而这卷胶布可能只需 1.5 美元。 以上就是“人工智能攻击”,那么它又是如何实现的? 要了解人工智能的独特攻击,需要先理解人工智能领域的深度学习。深度学习是机器学习的一个子集,其中,软件通过检查和比较大量数据来创建自己的逻辑。机器学习已存在很长时间,但深度学习在过去几年才开始流行。 人工神经网络是深度学习算法的基础结构,大致就是模仿人类大脑的物理结构。传统软件开发需要程序员编写定义应用程序行为的规则,与传统的软件开发方法相反,神经网络只需通过阅读大量示例就能创建自己的行为规则。 当你为神经网络提供训练样例时,它会通过人工神经元层运行它,然后调整它们的内部参数,以便能够对具有相似属性的未来数据进行分类。这对于手动编码软件来说是非常困难的,但对神经网络而言却非常有用。 举个简单的例子,如果你使用猫和狗的样本图像训练神经网络,它将能够告诉你新图像是否包含猫或狗。使用经典机器学习或更古老的人工智能技术执行此类任务非常困难,一般很缓慢且容易出错。近年兴起的计算机视觉、语音识别、语音转文本和面部识别都是借助深度学习而获得巨大进步。 但由于神经网络过分依赖数据,从而引导神经网络犯错。一些错误对人类来说似乎是完全不合逻辑甚至是愚蠢的,人工智能也由此变成了人工智障。例如,2018年英国大都会警察局用来检测和标记虐待儿童图片的人工智能软件就错误地将沙丘图片标记为裸体。 当这些错误伴随着神经网络而存在,人工智能算法带来的引以为傲的“深度学习方式”,就成了敌人得以攻击和操控它们的方法。于是,在我们看来仅仅是被轻微污损的红灯信号,对于人工智能系统而言则可能已经变成了绿灯,这也被称为人工智能的对抗性攻击,即引导了神经网络产生非理性错误的输入,强调了深度学习和人类思维功能的根本差异。 尽管恐怖袭击看起来远在天边,但这一类的安全威胁却近在眼前。上一阵子引起惶恐的丰巢智能快递柜刷脸功能就被小学生破解,一群小学生只用一张打印照片就能代替真人刷脸,骗过“人工智能”快递柜,取出父母的包裹。比利时鲁汶大学的两位少年仅仅通过在肚子上贴一张图片就轻松躲过了目标检测界翘楚YOLOv2的火眼金睛,成为了一个“隐形人”。 此外,随着人工智能技术的发展,我们生活中将有更多的方面需要用到这种生物识别技术,其一旦可以被轻而易举地攻击便贻害无穷。除了图像领域,在语音系统上,全球知名媒体TNW(The Next Web)在早些时候也进行过报道,黑客能够通过特定的方式欺骗语音转文本系统,比如在用户最喜爱的歌曲中偷偷加入一些语音指令,即可让智能语音助手转移用户的账户余额。 此外,对抗性攻击还可以欺骗GPS误导船只、误导自动驾驶车辆、修改人工智能驱动的导弹目标等,对抗攻击对人工智能系统在关键领域的应用构成了真正的威胁。 基于深度学习的网络威胁 全球数字化时代才刚开始,黑客的攻击却存在已久,尤其是近年来的黑客袭击事件给网民们留下深刻阴影。2007年,熊猫烧香病毒肆虐中国网络;2008年,Conficker蠕虫病毒感染数千万台电脑;2010年,百度遭史上最严重的黑客袭击;2014年,索尼影业遭袭导致董事长下台;2015年,美国政府遭袭,雇员资料外泄…… 当人工智能技术的研究风声迭起时,也就是网络世界战争的白热化阶段。对于黑客利用人工智能技术进行攻击的可能性预测,或许会帮助我们在网络世界的攻守里达到更好效果。 目前,网络威胁的大部分恶意软件都是通过人工方式生成的,即黑客会编写脚本来生成电脑病毒和特洛伊木马,并利用Rootkit、密码抓取和其他工具协助分发和执行。 那么,机器学习如何帮助创建恶意软件? 机器学习方法是用作检测恶意可执行文件的有效工具,利用从恶意软件样本中检索到的数据(如标题字段、指令序列甚至原始字节)进行学习可以建立区分良性和恶意软件的模型。然而分析安全情报能够发现,机器学习和深度神经网络存在被躲避攻击(也称为对抗样本)所迷惑的可能。 2017年,第一个公开使用机器学习创建恶意软件的例子在论文《Generating Adversarial Malware Examples for Black-Box Attacks Based on GAN》中被提出。恶意软件作者通常无法访问到恶意软件检测系统所使用的机器学习模型的详细结构和参数,因此他们只能执行黑盒攻击。论文揭示了如何通过构建生成对抗网络(generative adversarial network, GAN)算法来生成对抗恶意软件样本,这些样本能够绕过基于机器学习的黑盒检测系统。 如果网络安全企业的人工智能可以学习识别潜在的恶意软件,那么黑客就能够通过观察学习防恶意软件做出决策,使用该知识来开发“最小程度被检测出”的恶意软件。 2017 DEFCON会议上,安全公司Endgame透露了如何使用Elon Musk的OpenAI框架生成定制恶意软件,其所创建的恶意软件无法被安全引擎检测发现。Endgame的研究看起来是有恶意的二进制文件,通过改变部分代码,改变后的代码可以躲避防病毒引擎检测。 数据投毒 不论是人工智能的对抗性攻击还是黑客基于深度学习的恶意软件逃逸,都属于人工智能的输入型攻击(Input Attacks),即针对输入人工智能系统的信息进行操纵,从而改变该系统的输出。从本质上看,所有的人工智能系统都只是一台机器,包含输入、计算、输出三环节。攻击者通过操纵输入,就可以影响系统的输出。 而数据投毒便属于典型的污染型攻击(Poisoning Attacks),即在人工智能系统的创建过程中偷偷做手脚,从而使该系统按照攻击者预设的方式发生故障。这是因为人工智能通过深度学习 “学会”如何处理一项任务的唯一根据就是数据,因此污染这些数据,通过在训练数据里加入伪装数据、恶意样本等破坏数据的完整性,进而导致训练的算法模型决策出现偏差,就可以污染人工智能系统。 数据中毒的一个示例就包括训练面部识别认证系统以验证未授权人员的身份。在2018年Apple推出新的基于神经网络的Face ID身份验证技术之后,许多用户开始测试其功能范围。正如苹果已经警告的那样,在某些情况下,该技术未能说出同卵双胞胎之间的区别。 但其中一个有趣的失败是两兄弟的情况,他们不是双胞胎,看起来不一样,但年龄相差多年。这对兄弟最初发布了一段视频,展示了如何用Face ID解锁iPhone X。但后来他们发布了一个更新,说明了他们实际上通过使用他们的面部训练其神经网络来欺骗Face ID。当然,这是一个无害的例子,但很容易看出同一模式如何为恶意目的服务。 中国信息通信研究院安全研究所发布的《人工智能数据安全白皮书(2019年)》也提到了这一点。白皮书指出,人工智能自身面临的数据安全风险包括:训练数据污染导致人工智能决策错误;运行阶段的数据异常导致智能系统运行错误(如对抗样本攻击);模型窃取攻击对算法模型的数据进行逆向还原等。 值得警惕的是,人工智能与实体经济深度融合,医疗、交通、金融等行业对于数据集建设的迫切需求,使得在训练样本环节发动网络攻击成为最直接有效的方法,潜在危害巨大。比如在军事领域,通过信息伪装的方式可诱导自主性武器启动或攻击,可能带来毁灭性风险。 人工智能时代的攻与防 未来的机器时代是道高一尺魔高一丈的世界,而今天的网络安全问题早已突破了虚拟与现实的边界。国家与地域的边界,成为广泛存在的全球性问题。网络安全是一个庞大的系统工程,构建这个系统则需要以全球的深度连接为基础。 此外,网络安全要以人与人工智能的共同值守为特征。随着各类互联网技术的爆发式成长,网络攻击的手段也不断丰富和升级,但是唯一不变的就是变化本身。防御网络攻击,必须具备快速识别、快速反应、快速学习的能力。 如果是病毒威胁入侵,用机器学习检测的方法,势必很难解决。因此,只有在综合的技术运用下,理解信息泄露及其中的关联,弄清黑客如何入侵系统,攻击的路径是什么,又是哪个环节出现了问题。找出这些关联,或者从因果关系图谱角度进行分析,增加分析端的可解释性,才有可能做到安全系统的突破。 对抗网络安全的风险还需要拥有智慧的动态防御能力,网络安全的本质是攻防之间的对抗。在传统的攻防模式中,主动权往往掌握在网络攻击一方的手中,安全防御力量只能被动接招。但在未来的安全生态之下,各成员之间通过数据与技术互通、信息共享,实现彼此激发,自动升级安全防御能力甚至一定程度的预判威胁能力。 当然,网络安全本来就是一个高度对抗、动态发展的领域,这也给杀毒软件领域开辟了一个蓝海市场。人工智能杀毒行业面临着重大的发展机遇,杀毒软件行业首先应该具有防范人工智能病毒的意识,然后在软件技术和算法安全方面重视信息安全和功能安全问题。 以现实需求为牵引,以高新技术来推动,就有可能将人工智能病毒查杀这个严峻挑战转变为杀毒软件行业发展的重大契机。 |
|