书 书 书
第44卷 第4期
2021年4月 计 算 机 学 报
CHINESEJOURNALOFCOMPUTERS Vol.4A4Npr.2o0.241
收稿日期:20200224;在线发布日期:20200512.本课题得到广东省重点领域研发计划(2019B010137004,2019B010136003)、北京邮电 大学博士生创新基金资助项目(CX2019115)资助.冀甜甜,博士研究生,主要研究方向为网络安全.Email:jitiantian0728@gmail.com. 方滨兴,博士,教授,博士生导师,中国工程院院士,主要研究领域为计算机体系结构、计算机网络、网络安全.崔 翔(通信作者),博士,教 授,博士生导师,主要研究领域为网络安全.Email:cuixiang@gzhu.edu.cn.王忠儒(通信作者),博士,高级工程师,主要研究方向为人工 智能、网络安全.Email:wangzhongru@bupt.edu.cn.甘蕊灵,硕士研究生,主要研究方向为网络安全.韩 宇,硕士研究生,主要研究方 向为网络安全.余伟强,硕士,主要研究方向为网络安全、人工智能.
深度学习赋能的恶意代码攻防研究进展
冀甜甜
1)1
方滨兴
) 1),2) 崔 翔2) 王忠儒1),3) 甘蕊灵1) 韩 宇1) 余伟强
4)
甘蕊灵1) 韩 宇1) 余伟强
4)
余伟强
4)(北京邮电大学网络空间安全学院可信分布式计算与服务教育部重点实验室 北京 100876)
2)(广州大学网络空间先进技术研究院 广州 510006)
3)(中国网络空间研究院 北京 100010)
4)(北京丁牛科技有限公司 北京 100081)
摘 要 深度学习赋能的恶意代码攻防研究已经成为网络安全领域中的热点问题.当前还没有针对这一热点问题 的相关综述,为了及时跟进该领域的最新研究成果,本文首先分析并总结了恶意代码攻击的一般流程.基于该攻击 流程,本文对深度学习的赋能攻击点和赋能防御点进行了定位,将深度学习助力攻击的技术分为5类:(1)基于对 抗样本生成的自动化免杀;(2)基于自然语言生成的自动化网络钓鱼;(3)基于神经网络的精准定位与打击;(4)基 于生成对抗网络的流量模仿;(5)基于黑盒模型的攻击意图隐藏,并将深度学习助力防御的新型技术分为3类:
(1)基于深度学习的恶意代码查杀;(2)自动化网络钓鱼识别;(3)深度学习赋能的恶意行为检测;其次,基于以上 分类,本文对恶意代码攻防研究中的前沿技术进行了综述,并从技术原理、实际可行性、发展趋势等不同的角度对 这些技术进行了深入剖析;再者,由于深度学习的伴生安全问题与其在恶意代码攻防领域的赋能安全问题紧密相 关,本文对其中代表性的模型后门攻击与防御的相关技术也进行了关注;之后,本文分析并总结了当前深度学习赋 能的恶意代码攻防研究领域中的主要研究方向,并对其未来的发展趋势进行了讨论;最后,深度学习赋能的恶意代 码攻防研究才刚刚起步,基于恶意代码攻击链的更多可能的赋能攻击与防御点有待研究者继续探索和发掘.此外, 深度学习助力恶意代码攻防的一大挑战是数据集的限制,如何建立有效、公开的数据集供研究者使用,这也是一个 非常值得思考和研究的问题.
关键词 恶意代码;深度学习;赋能攻击;赋能防御;攻击链
中图法分类号TP309 犇犗犐号10.11897/SP.J.1016.2021.00669
犚 犲 狊 犲 犪 狉 犮 犺 狅 狀 犇 犲 犲 狆 犔 犲 犪 狉 狀 犻 狀 犵 犘 狅 狑 犲 狉 犲 犱犕 犪 犾 狑 犪 狉 犲 犃 狋 狋 犪 犮 犽 犪 狀 犱 犇 犲 犳 犲 狀 狊 犲 犜 犲 犮 犺 狀 犻 狇 狌 犲 狊
JITianTian1) FANGBinXing1),2) CUIXiang2) WANGZhongRu1),3) GANRuiLing1) HANYu1) YUWeiQiang4)
1)(犓犲狔犔犪犫狅狉犪狋狅狉狔狅犳犜狉狌狊狋狑狅狉狋犺狔犇犻狊狋狉犻犫狌狋犲犱犆狅犿狆狌狋犻狀犵犪狀犱犛犲狉狏犻犮犲(犅犝犘犜),犕犻狀犻狊狋狉狔狅犳犈犱狌犮犪狋犻狅狀, 犅犲犻犼犻狀犵犝狀犻狏犲狉狊犻狋狔狅犳犘狅狊狋狊犪狀犱犜犲犾犲犮狅犿犿狌狀犻犮犪狋犻狅狀狊,犅犲犻犼犻狀犵 100876)
2)(犆狔犫犲狉狊狆犪犮犲犐狀狊狋犻狋狌狋犲狅犳犃犱狏犪狀犮犲犱犜犲犮犺狀狅犾狅犵狔,犌狌犪狀犵狕犺狅狌犝狀犻狏犲狉狊犻狋狔,犌狌犪狀犵狕犺狅狌 510006)
3)(犆犺犻狀犲狊犲犃犮犪犱犲犿狔狅犳犆狔犫犲狉狊狆犪犮犲犛狋狌犱犻犲狊,犅犲犻犼犻狀犵 100010)
4)(犅犲犻犼犻狀犵犇犻犵犃狆犻狊犜犲犮犺狀狅犾狅犵狔犆狅.,犔狋犱,犅犲犻犼犻狀犵 100081)
犃犫狊狋狉犪犮狋 Theresearchondeeplearningpoweredmalwareattackanddefensetechniqueshas becomeahotissueinthefieldofcybersecurity.Tothebestofourknowledge,therearenorelevant reviewonthisburningissueatpresent,andourreviewisthefirstwork.Inordertofollowupon thelatestresearchresultsinthisfield,thisarticlefirstanalyzesandsummarizesthegeneral malwareattackprocess.Basedonthisattackprocess,thisarticlelocatestheattackpointsand
《 计
算 机
学 报
》
defensepointspoweredbydeeplearning.Thedeeplearningassistedattacktechnologiesare dividedintofivecategories:(1)Automatedvirusevasionbasedonadversarialsamplegeneration, correspondingtothe“preparation”stageinthemalwareattackprocess,(2)Automatedphishing basedonnaturallanguagegeneration,correspondingtothe“delivery”stageinthemalwareattack process,(3)Pinpointandstrikebasedonneuralnetworks,correspondingtothe“impact”stages inthemalwareattackprocess,(4)Trafficimitationbasedongenerativeadversarialnetworks, correspondingtothe“commandandcontrol”and“evasion”stagesinthemalwareattackprocess,
(5)Theblackboxmodelbasedattackintenthiding,correspondingtothe“evasion”stageinthe malwareattackprocess.Inaddition,thedeeplearningassisteddefensetechnologiesaredivided intothreecategories:(1)Malwareresistancebasedondeeplearning,whichisadefensetechnology forthe“engagement”and“presence”stages;(2)Automatedphishingrecognition,whichisa defensetechnologyforthe“delivery”stage;and(3)Maliciousbehaviordetectionpoweredby deeplearning,whichisadefensetechnologyforthetwostagesof“impact”and“commandand control”.Secondly,basedontheaboveclassification,thisarticlereviewsthecuttingedge technologiesinthisfield.Also,itanalyzesthesetechnologiesindepthfromdifferentperspectives, suchastechnicalprinciples,practicalfeasibility,anddevelopmenttrends.Furthermore,dueto theaccompanyingsecurityissuesofdeeplearningiscloselyrelatedtodeeplearningpowered malwaresecurityissues,thispaperalsopaysattentiontotheaccompanyingsecurityissuesof deeplearninganddiscussestherepresentativebackdoorattackanddefensetechnologiesinthis field.Afterthat,thisarticleanalyzesandsummarizesthemainresearchdirectionsinthefieldof deeplearningpoweredmalwareattacksanddefenses,anddiscussesitsfuturedevelopmenttrend. Amongthem,forthetwonewattacktechnologies“pinpointandstrikebasedonneuralnetworks” and“theblackboxmodelbasedattackintenthiding”,thispaperanalyzesandconcludesthatthey haveopenedthefirststepforattackerstouseneuralnetworksasattackcomponentsactively.In thefuture,thiswillbeadirectioninwhichattackersareverylikelytoexploreindepthand generateattacks,whichdeservesourattention.Finally,theresearchondeeplearningpowered malwareattacksanddefensesisinitsinfancy,andmorepossiblepoweredattackanddefense pointsbasedonmalwareattackchainsremaintobeexploredbyresearchers.Furthermore,a significantchallengefordeeplearningpoweredmalwareattackanddefenseisthelimitationof datasets.Howtoestablishavalidandopendatasetforresearcherstouseisalsoaveryworthy considerationandresearch.
犓犲狔狑狅狉犱狊 malware;deeplearning;AIPoweredAttack;AIPoweredDefense;attackchain
1 引 言
“恶意代码(Malware)”主要包括病毒(Virus)、 蠕虫(Worm)、远控木马(RemoteAccessTrojan, RAT)、僵尸程序(Bot)、勒索软件(Ransomeware) 等攻击形态.自1988年Morris蠕虫出现以来,恶意 代码的破坏力开始引发国际关注.从近年来网络安 全厂商和媒体报道的重大安全事件报告中可以发 现,大多数报告实际上是以恶意代码分析为重心
的.毫无疑问,恶意代码在网络空间安全中占据重 要位置.从实际案例来看,近年来爆发的僵尸网络
(Botnet)、高级持续性威胁(AdvancedPersistent Threat,简称APT)和勒索软件(Ransomware)等重
大网络安全事件,大多数是以恶意代码为核心攻击 组件并由此造成实质危害的.例如,2001年爆发的 CodeRed蠕虫在不到一周的时间内感染了近40万 台服务器,造成全球经济损失约26亿美元;2006年 出现的Zeus僵尸网络至今依然活跃,据统计该僵尸
0 7
6 计 算 机 学 报 2021年
《 计
算 机
学 报
》
网络拥有高达100万台计算机设备,造成了超过一 亿美元的损失;2010年发起的针对工控系统中核设 施的APT攻击,其核心攻击组件是Stuxnet蠕虫, 该攻击对伊朗纳坦兹核电站的上千台铀浓缩离心机 造成了实质性破坏;2015年造成乌克兰电网断电事 故的APT攻击,其核心攻击组件是BlackEnergy恶意 工具包,这是首次导致停电的网络攻击;2017年 WannaCry勒索软件全球大爆发,造成的损失达80亿 美元.诸如此类,不胜枚举.
恶意代码对抗一直是国际网络安全厂商关注 重点,国内外安全厂商已研发出较为成熟的终端 查杀和网络检测系统,如反病毒软件(Antivirus Software)、主机入侵防护系统(HIPS)、入侵检测与
防护系统(IDPS).然而,近年来人工智能热潮的再 度兴起,对恶意代码的免杀、传播、驻留/持久化、隐 蔽通信和精准打击等能力产生了显著的助力效应, 并由此引发了新一轮的由人工智能赋能的恶意代码 攻防研究,这对传统的恶意代码攻防技术发展将产 生重要影响.
人工智能技术对恶意代码发展的影响可分为 两种,分别是“赋能效应”和“伴生效应”.所谓赋能 效应,主要体现在两个方面,一是指人工智能技术 很强大,可以助力恶意代码研发和利用,引发更大 的危害,笔者将其称为“赋能攻击”(AIPowered Attack);二是指人工智能技术也可以助力恶意代 码防御,让安全问题借助人工智能技术得到更好 的解决,笔者将其称为“赋能防御”(AIPowered Defense).所谓伴生效应,是指尽管人工智能技术在
酝酿之初会根据以往的经验去充分地考虑安全问 题,但在推出之后,势必会在不断地应用中发现新的 脆弱性伴生而来.
本文重点关注赋能效应,并聚焦于人工智能领 域中一个重要分支———深度学习技术.在下文中,本 文将围绕恶意代码,对深度学习在“助力恶意代码攻 击”和“助力恶意代码防御”两个方面的最新研究工 作展开综述和分析.值得一提的是,恶意代码的存在 形式有多种,涵盖二进制、JavaScript、PowerShell 等,但当前的很多研究[13]表明,这些类型的恶意代 码均可通过深度学习进行处理,因此它们均被包含 在本文的研究范畴之内,这也进一步突显了本文综 述的一般性和通用性.
助力攻击方面:通过对恶意代码攻击链的分析, 能够更加清晰地定位可赋能的攻击阶段.针对不同
攻击阶段的行为特点,可以发现面向不同攻击阶段 的赋能技术,有效地实现对这些技术的分类.安全研 究人员已经提出了多种知名的网络威胁框架,其中, CyberKillChain
①
、MITREATT&CK②
和NSA/ CSS网络威胁框架v2(NSA/CSSCyberThreat Frameworkv2,简称NTCTFv2)③
三者具有很高的权威性.本文基于以上网络威胁框架和知名网络安 全事件,总结形成恶意代码攻击的一般流程(以下称 为“恶意代码攻击链”或简称“攻击链”,Attack Chain),如图1所示.攻击链包括七个阶段,分别为: 准备(Preparation)、投递(Delivery)、突破(Engage ment)、存在/持久化(Presence/Persistense)、影响
(Effect)、命令与控制(CommandandControl,简称 C2)和规避(Evasion).与之对应地,本文将深度学 习助力攻击的赋能技术分为九类,分别是:基于对抗 样本生成(AdversarialSampleGeneration)的自动 化免杀、基于自然语言生成(NaturalLanguage Generation,简称NLG)的自动化网络钓鱼、基于深
度学习分类的精准定位与打击、基于生成对抗网络
(GenerativeAdversarialNetwork,简称GAN)的流 量模仿、基于黑盒模型的攻击意图隐藏、自动化漏洞 挖掘、自动化漏洞利用、自动化绕过凭证和基于深度 学习的密码破解.其中自动化漏洞挖掘与利用以及 自动化绕过凭证和密码破解技术分属于一个独立的 研究领域,且已有大量的工作和研究进展的跟踪,故 本文不将它们作为关注的重点,而是重点关注与恶 意代码紧密相关的其他5类研究工作.
助力防御方面:假设深度学习赋能的恶意代码 攻击实际可行,安全防御人员在理论层面也进行了 很多超前探索,因此本文对当前最新的深度学习赋 能的恶意代码防御研究工作进行了总结归纳,以期 推动赋能恶意代码防御的研究进展.同理,由图1所 示,我们不关注与自动化漏洞挖掘与利用对应的自 动化漏洞修复技术,而是重点关注基于深度学习的 恶意代码查杀、自动化网络钓鱼攻击识别、深度学习 赋能的恶意行为检测三类赋能防御技术,旨在从防 御者可检测的目标侧对恶意代码攻击链的各个环节 开展防御研究.
1 7 4期 冀甜甜等:深度学习赋能的恶意代码攻防研究进展 6
①
② ③
CyberKillChain.https://www.lockheedmartin.com/en us/capabilities/cyber/cyberkillchain.html
MITREATT&CK.https://attack.mitre.org/
NSA/CSSCyberThreatFrameworkv2.https://media. defense.gov/2019/Jul/16/2002158108/1/1/0/CTR_NSA CSSTECHNICALCYBERTHREATFRAMEWORK_V2. PDF2018,11,29
《 计
算 机
学 报
》
图1 基于恶意代码攻击链的赋能技术分类
综上,将本文的贡献总结如下:
(1)通过对网络威胁框架和知名网络安全事件 的分析,本文提取并总结了具有通用性的恶意代码 攻击链,通过刻画攻击流程,帮助有效定位恶意代码 攻防赋能点;
(2)以攻击链为主线,本文关注深度学习在恶 意代码攻防研究中的赋能效应,对深度学习助力恶 意代码攻击和防御两个方面的研究工作进行了分 析、归纳、总结与思考;
(3)本文基于深度学习的助力安全问题进行了 扩展延伸,总结并分析了模型后门攻击与防御的相 关研究工作,它属于深度学习的伴生效应,但在恶意 代码“投递”阶段也起到助力安全的作用;
(4)本文对恶意代码攻防研究的未来发展趋势 进行了分析与展望,旨在从更前沿的视角研究基于 恶意代码的智能安全问题.
具体地,本文第2、3节分别对深度学习赋能的 恶意代码攻击和防御的相关研究进行梳理和总结; 第4节扩展综述深度学习的伴生安全研究;第5节 概括总结全文工作,并对深度学习赋能的恶意代码 攻防研究的未来发展趋势进行分析与讨论.
2 深度学习助力攻击
在深度学习助力攻击方面,攻击者试图基于恶 意代码攻击链对可操作的各个攻击环节进行赋能, 以增强攻击的鲁棒性.基于恶意代码攻击链刻画的 攻击流程,本文将深度学习赋能研究的新型攻击技
术具化为5类,它们分别是:(1)基于对抗样本生成 的自动化免杀;(2)基于自然语言生成的自动化网 络钓鱼;(3)基于深度学习分类的精准定位与打击;
(4)基于生成对抗网络的流量模仿;(5)基于黑盒模 型的攻击意图隐藏.
21 基于对抗样本生成的自动化免杀
在恶意代码攻击过程的“准备”阶段中必要的一 件事情是恶意代码构建,以提升恶意代码的免杀和 生存能力.而每当恶意代码出现新的趋势和威胁时, 反病毒引擎作为与恶意代码对抗过程中的产物则需 要不断发展以制衡恶意代码.当前反病毒引擎在变 种检测方面的健壮性正在不断加强,基于深度学习 的反病毒引擎已经面世,例如,腾讯开发的TRPAI 反病毒引擎就是基于深度学习来查杀恶意代码的. 但相应地,反病毒引擎的发展也必定会促进恶意代 码的研究.为了深入了解攻击者的意图,并提前做好 防御措施,安全研究人员尝试以攻击者视角预测未 来恶意代码的发展趋势,以期提前洞悉恶意代码的 范式转变.
在恶意代码免杀方面,深度学习对比机器学习的 优势在于:(1)深度学习会自动学习到重要的特征,不 需要人工选择特征;(2)对于恶意代码中某些潜在且 关键特征的增加或删除,深度学习可以通过自主学习 实现自适应,在恶意代码查杀的可扩展性上也优于 机器学习的方法.因此,从开发新型恶意代码的角度 出发,一种深度学习赋能免杀的对抗性恶意代码被 提出,用于实现基于对抗样本生成的自动化免杀.
2016年,Grosse等人[4]基于前向导数算法生成
2 7
6 计 算 机 学 报 2021年
《 计
算 机
学 报
》
具有对抗性的恶意代码示例,以对抗深度神经网络
(DeepNeuralNetwork,简称DNN)的查杀,通过实 验证明,该方法对恶意代码实现了85%的误分类率, 验证了基于对抗样本生成的恶意代码攻击的可行性. 2017年,Hu等人[5]基于GAN提出了MalGAN模
型来生成对抗性恶意代码,以绕过黑盒检测系统,实 验结果表明MalGAN能够将检测率降低到接近零, 并使基于再训练的防御性方法难以对抗此类攻击; 同年,Hu等人[6]还将深度学习中的递归神经网络
(RecurrentNeuralNetwork,简称RNN)与GAN 相结合,在原始恶意代码的API序列中插入一些不 相关的API,生成基于顺序的对抗性恶意代码,可有 效对抗多种不同RNN结构的模拟反病毒引擎.
2018年,Kolosnjaji等人[7]首次在字节粒度上提出 在恶意代码末尾填充字节的方式来生成对抗性恶意 代码,并基于梯度下降算法指导决定要填充的字节, 其测试准确率高达92.83%,并在实际对抗基于字 节粒度的检测系统MalConv[8]时获得了60%的 成功率;同年,Anderson等人[9]利用深度强化学习 网络(DeepReinforcementlearningNetwork,简称 DRN),提出了一种基于对抗样本生成的黑盒攻击 方法,用于攻击静态PE反杀毒引擎,这是当前第一 个可以产生对抗性PE恶意代码的工作,在模拟现 实的攻击中达到了90%的成功率.
以上基于对抗样本生成的自动化免杀方法中, API或字节填充等操作是直接反馈到恶意代码的样 本中的,体现在深度学习的赋能效应上则是恶意代 码的免杀和生存能力的增强,表1中的测试成功率 便很好地证明了深度学习在该类技术上赋能的有效 性.此外,这些自动化免杀方法,它们分别从不同的 角度为生成对抗性恶意代码提供了不同的攻击思 路.为了深入了解并探索该类新型赋能攻击技术的 实际可行性以及其未来的发展趋势,从不同维度对
这些方法做深度分析与对比是必要的.如表1所示, 本文从这些方法基于的前提/假设、使用的验证引 擎、实验数据集、实验结果等几个角度进行了概述. 从该表中可以看出基于对抗样本生成的自动化免杀 正在不断发展进步,但同时也面临着很多问题,具体 总结如下:
(1)三个方面的发展与进步
①自动化免杀这一研究的限制条件越来越严 苛,研究从最初的白盒假设上升了到黑盒假设,这意 味着研究者对于攻击的预测也越来越偏向于实际应 用场景,有利于防御者提前构建面向实际应用的新 型防御措施,掌握攻防主动性.
②验证引擎中使用的深度神经网络结构也已经从 单纯的DNN涵盖到包含GAN、RNN、DRN等多种 网络模型.从广义上讲,DNN泛指包含了全连接、深 度卷积神经网络(ConvolutionalNeuralNetwork,简 称CNN)、RNN等具体变种形式的神经网络结构, 但有时研究者也用于特指全连接的神经网络结构, 具体取决于不同文献中对DNN定义的不同;CNN 的主要功能在于特征提取;RNN主要用于序列生 成;GAN的主要作用是序列生成和鉴别;DRN则用 于预测和评估.由表1可以看出,以上这些深度学习 模型均可用于自动化免杀技术的攻击验证,可见 基于对抗样本的自动化免杀已经建立了对模型结 构的普适性,并可针对多种模型架构的反病毒引 擎实施攻击,使得该类攻击的实际可操作性进一 步增强.③恶意代码的生成方式除了涵盖粗粒度的功 能添加和删除,还扩展到了字节填充等细粒度的方 法上,并且通过实验测试,对抗性恶意代码成功绕过 验证引擎的概率也越来越高,有的甚至达到了 100%,从技术细节和攻击性能上为防御者提供了启
发和警示的作用.
表1 深度学习赋能的自动化免杀技术对比与分析
年份文献 前提/假设 验证引擎 数据集(来源) 测试成功率 核心方法 实际可行性 2016[4]白盒假设(攻击者知道神经
网络模型的结构、参数) DNN DREBINAndroid 85% 基于攻击神经网络 的前向导数算法 否 2017[5]黑盒假设,但攻击者知道恶
意代码检测算法使用的功能GAN https://malwr.com/ 接近100% 替代检测器拟合 黑盒检测系统 否 2017[6]黑盒假设(攻击者不知道神
经网络模型的结构、参数)RNN、GANhttps://malwr.com/ 96.97%~99.56% 不相关的API序 列插入 否 2018[7]黑盒假设 DNN VirusShare,Citadel,APT192.83% 字节粒度的梯度
下降算法 否 2018[9]黑盒假设 DRN VirusShare,VirusTotal 90%(犃犝犆:99.3%)深度强化学习算法
做预测与策略评估 否
3 7 4期 冀甜甜等:深度学习赋能的恶意代码攻防研究进展 6