《软件与网络安全研究综述.pdf》由会员分享,可在线阅读,更多相关《软件与网络安全研究综述.pdf(27页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、软件学报1SSN 1 0009825,CODEN RUXUEWJournal ofSoftware,2018,29(1):4268doi:1013328jcnkijos005320中国科学院软件研究所版权所有软件与网络安全研究综述+刘剑t,2,苏璞睿3,杨珉4,和亮3,张源4,朱雪阳5,林惠民51(中国科学院信息工程研究所网络测评技术重点实验室,北京 100195)2(北京市网络安伞技术重点实验室(中国科学院信息工程研究所),北京 100195)3(中国科学院软件研究所可信计算与信息保障实验室,北京 100190)4(复旦大学软件学院,上海201203)5(计算机科学国家重点实验室(中国科学院
2、软件研究所),北京 100190)通讯作者:朱雪阳,Email:zxyiosaccnE-mail:jOSiscas accnhttp:wwwjosorgcnTel:+861 062562563摘要: 互联网已经渗入人类社会的各个方面,极大地推动了社会进步与此同时,各种形式的网络犯罪、网络窃密等问题频繁发生,给社会和国家安全带来了极大的危害网络安全已经成为公众和政府高度关注的重大问题由于互联网的大量功能和网络上的各种应用都是由软件实现的,软件在网络安全的研究与实践中扮演着至关重要的角色事实上,几乎所有的网络攻击都是利用系统软件或应用软件中存在的安全缺陷实施的研究新形势下的软件安全问题日益迫切从恶
3、意软件、软件漏洞和软件安全机制这3个方面综述了国内外研究现状,进而分析软件生态系统面临的全新安全挑战与发展趋势关键词: 软件:网络安全:恶意软件:软件漏洞:软件安全机制中图法分类号:TP311中文引用格式:刘剑,苏璞睿,杨珉,和亮,张源,朱雪阳,林惠民软件与网络安全研究综述软件学报,2018,29(1):4268http:wwwjosorgcn100098255320htm英文引用格式:Liu J,Su PR,Yang M,He L,Zhang Y,Zhu XY,Lin HMSoftware and eyber security-A surveyRuan Jian XueBaoJournal
4、ofSoftware,2018,29(1):4268(in Chinese)http:fwwwjosorgcn100098255320htmSoftware and Cyber SecurityA SurveyLIU Jianl一,SU PuRui3,YANG Min4,HE Lian93,ZHANG Yuan4,ZHU XueYan95,LIN HuiMin51(Key Laboratory of Network Assessment Technology,Institute of Information Engineering,The Chinese Academy of Sciences
5、,Beijing100195,China)2(Beijing Key Laboratory of Network Security Technology(Institute of Information Engineering,The Chinese Academy of Sciences),Beijing 100195,China)3(Trusted Computing and Information Assurance Laboratory,Institute of Software,The Chinese Academy of Sciences,Beijing 100190,China)
6、4(School of Software,Fudan University,Shanghai 201203,China)(State Key Laboratory of Computer Science(Institute of Software,The Chinese Academy of Sciences),Beijing 1 00 1 90,China)基金项目:国家自然科学基金(61572483,61572481,61602123,61572478,U1636204,61602457);上海市青年科技英才扬帆计戈0f16YFl400800)Foundation item:Nationa
7、l Natural Science Foundation of China(61572483,61572481,61602123,61572478,U163620461602457);Shanghai Sailing Program f16YFl4008001收稿时间:201612-22;修改时间:2017-0208;采用时间:2017-0619;jOS在线出版时间:2017-0712CNKI网络优先出版:2017-0712 16:17:02,http:knscnkinetkcmsdetail112560TP201 707121617018html本文作者贡献说明:刘剑、苏璞睿和杨珉负责主体内
8、容的组织及撰写,为共同第一作者;和亮与张源参与资料收集与撰写;朱雪阳负责合稿及部分内容的撰写:林惠民发起并主持本文撰写万方数据刘剑等:软件与网络安全研究综述 43Abstract:The Internet has penetrated into all aspects of human society and has greatly promoted social progressAt the same time,various forms of cybercrimes and network theft occur frequently,bringing great harm to our
9、society and national security Cyber securityhas become a major concern to the public and the governmentAs a large number of Intemet functionalities and applications areimplemented by software,software plays a crucial role in cyber security research and practiceIn fact,almost all cyberattacks werecar
10、ried out by exploiting vulnerabilities in system software or application softwareIt is increasingly urgent to investigate the problems ofsoftware security in the new age This paper reviews the state of the art of malware,software vulnerabilities and software securitymechanism,and analyzes the new ch
11、allenges and trends that the software ecosystem is currently facingKey words:software,cyber security,malware,software vulnerabilities,software security mechanism互联网已经渗透到人类社会的各个方面,极大地推动了社会进步但与此同时,各种形式的网络犯罪、网络窃密等问题频繁发生,给社会和国家安全带来了极大的危害网络安全已经成为公众和政府高度关注的重大问题由于互联网的大量功能和网络上的各种应用都是由软件实现的,软件在网络安全的研究与实践中扮演着
12、至关重要的角色随着互联网的发展,由软件引起的安全问题波及面越来越广,厉害关系越来越大,影响层次也越来越深根据国际权威漏洞发布组织CVE的统计,1999年发现的软件漏洞数量不到1 600个:而2014年,新发现的软件漏洞数量己接近10 000个2016年6月,国家互联网应急中一Ij,(CNCERT)发布的互联网安全威胁报告显示,境内感染网络病毒的终端数近297万个,被植入后门的网站数量8 815个,境外3 637个IP地址通过植入后门对境内66 186个网站实施远程控制【12016年4月,CNCERT监测到一个名为“Ramnit”的网页恶意代码,该恶意代码被挂载在境内近600个党政机关、企事业单
13、位网站上,一旦用户访问网站就有可能受到挂马攻击,这对网站访问用户的PC主机构成安全威胁,对国家安全及政府公信力造成重大影响【2J随着互联网进入移动互联阶段,人类的社会活动与网络空间的融合更加深入透过泛在网络和各型感知设备,人、机、物彼此交织,密不可分,而软件作为人类智慧的二进制投射,操控硬件平台,提供着各型服务,在网络空间中的枢纽特性被进一步强化2016年10月21日,恶意软件Mirai控制的僵尸网络对美国域名服务器管理服务供应商Dyn发起DDoS攻击(分布式拒绝服务攻击),由于Dyn为GitHub、Twitter、PayPal等平台提供服务,攻击导致这些网站无法访问本次Mirai的攻击目标与
14、以往控制服务器或个人PC机的方式有所不同,它主要通过控制大量的物联网(IoT)设备,如路由器、数字录像机、网络摄像头等,形成僵尸网络来进行大规模协同攻击,造成特别严重的危害【3J研究新形势下的软件安全问题日益迫切随着平台的发展,软件形态产生了重要变化软件的目标由最初的提供基本功能进化为提供更好的服务和体验:围绕多种异构互联的硬件平台,形成了差异化的软件群体;软件核心服务往往通过云平台完成部署,功能和服务在云和端之间体现出很强的交互性和个性化;软件普遍基于开放式的第三方开源组件快速构造,开发周期和版本迭代周期明显缩短,导致软件开发门槛显著降低;出现集中式软件分发渠道,可以将软件快速传播给大量的用
15、户,使得软件的受众范围明显增大;软件系统之间的协同配合显著增强,敏感数据的网f-q流动大幅增加在软件形态的这种演变趋势下,软件安全逐渐演变为整个软件生态系统的体系安全,涵盖了平台、软件和数据等诸多维度,对国家网络空间安全和公众权益的重要性与日俱增目前,软件生态系统面临的威胁呈现出如下特点11软件生产环节引入多种新型攻击面软件生产过程中,代码复用程度越来越高,各种开发包、核心库的应用越来越广泛一些攻击者利用开源代码植入后门,这些代码的复用度越高,其中的后门影响范围越广,为攻击者创造新的攻击途径提供了机会:软件之间协同越来越普遍,软件中的一些服务共享、数据共享越来越多,单一软件产品的安全已经不仅仅
16、影响其功能或服务的安全,还会直接影响到其他一系列软件功能或服务的安全,从单一软件产品服务而言,其可能被攻击的渠道增加;软件开发过程、分发过程在逐步发生变化,依赖的工具手段越来越多,各种支撑环境、开发工具和分发渠道是否安全可信,也直接关系到出产软件产品的安全,造成软件功能或服务可能被攻击的环节越来越多万方数据Journal of Software软件学报V0129,No1,January 20 1 82)漏洞的形成机理、利用方式、危害程度出现新的特点软件之间的依赖性导致漏洞的危害由“软件内”蔓延到“软件间”,为攻击者提供了更灵活的渠道,对防御者提出了更复杂的分析与防御难题;更加灵活、复杂的软件功
17、能也为攻击者提供了更多的攻击方式,以致新的漏洞模式不断涌现,逻辑型漏洞越来越普遍;而软件漏洞的多样化以及软件之间的依赖关系增强也带来了漏洞之间的交叉协同,攻击者组合应用多个漏洞进行攻击越来越普遍3)恶意软件的生产方式、攻击方式、对抗能力以及分析方法等方面出现新的特点在恶意软件生产方式方面,随着开源软件的发展,恶意软件开始通过重打包、共享库、恶意编译工具链等机制进行生产和传播;新的网络技术也为恶意软件的传播和增强提供了新的途径在恶意攻击方面,传统平台上的恶意攻击趋向于高度定向化,智能移动平台、物联网设备上恶意软件大量爆发,针对新网络技术的恶意攻击正在形成此外,恶意软件应用多种对抗技术反分析、反检
18、测,出现以协同攻击和深度攻击为特点的APT(advanced persistent threat)等高级攻击模式在恶意软件分析方面,趋向静态和动态分析相融合,以便全面获取样本的行为,同时趋向利用数据分析技术来处理大规模恶意样本为了应对这些威胁,学术界近些年在恶意软件、软件漏洞和软件安全机制方面开展了大量的研究工作本文将在接下来的3节里综述这3方面的国内外研究现状第4节理清软件生态系统面临的全新安全挑战与发展趋势1恶意软件恶意软件(malware)是对非用户期望运行的、怀有恶意目的或完成恶意功能的软件的统称4,5】恶意软件种类繁多,如木马、病毒、蠕虫、DDoS、劫持、僵尸、后门陷门、恶意编译、间
19、谍软件、广告软件、勒索软件、跟踪软件等早期恶意软件的概念主要局限于计算机病毒等,但近年来,随着网络平台的发展和网络攻击的多样性,恶意软件的概念已经超越了传统的狭义概念特别是随着勒索软件、后门陷门、恶意编译、APT等新型恶意软件的出现,恶意软件更多地凸显出对期望目标的控制性、专有性、定制性、规模性和破坏性在强制执行目标对象的非法功能、限制或变更系统正常执行程序功能等方面,它们在某种人为控制专有目标程度上远比计算机病毒体现出更强的攻击性和更大的危害性随着互联网的普及和广泛应用,网络环境下多样化的传播途径和复杂的应用环境给恶意软件的攻击和传播带来巨大便利,对网络系统及网络上主机的安全构成巨大威胁总的
20、来说,恶意软件的发展与软硬件平台的发展息息相关,大致可分为单机传播、网络传播和协同攻击这3个阶段在20世纪80年代,计算机应用以单机为主,计算机之间的数据交换主要借助于磁盘,因此当时的恶意软件主要是磁盘病毒、文件宏病毒,如Brain、黑色星期五、Wazzu等随着网络技术的发展和应用。计算机之间实现了直接互联,邮件等应用也越来越普遍,随之而来的是Melissa、Loveetter、Nimda和Code Red等邮件病毒和蠕虫【61等通过网络传播的恶意软件这一变化带来的结果就是恶意软件的传播能力大大增强传统的病毒、木马实施破坏仍以单一的节点单独实施,而僵尸网络的出现则实现了被感染节点之间的协同,可
21、以实施分布式拒绝服务攻击(DDoS攻击)、多链跳转攻击等大规模的协同攻击特别是结构化P2P僵尸网络【7,它可以高效地管理大规模的节点,进一步提升了僵尸网络的控制能力近年来,随着软件向互联化、生态化方向发展,恶意软件在生产、攻击、对抗和传播等方面都有了深刻的变化一方面,传统平台和体系上的恶意软件对抗正在加剧;另一方面,随着新的软硬件环境、网络技术的发展,新平台中的恶意软件正在兴起;新IEt平台上的恶意软件相互协作,出现以协同攻击和深度攻击为特点的APT攻击模式此外,随着开源软件等开发模式的兴起,软件开发无论在平台和环境(例如操作系统、网络),还是在开发工具链本身(例如编译器、第三方库),都大量基
22、于开源或遗留代码,在提高了软件生产率的同时,也出现了通过恶意编译器、第三方库等软件“供应链”进行传播的恶意攻击代码例如:2015年9月在我国发现的XcodeGhost恶意软件,具有窃取用户隐私信息和远程控制的恶意行为下面首先综述当前恶意软件在不同平台上的攻击和对抗模式,然后介绍恶意软件分析、清除方面的最新研究进展万方数据刘剑等:软件与网络安全研究综述 4511恶意软件攻击111 传统软件平台上的恶意软件随着传统平台上软硬件的多样性发展,恶意软件的开发更有针对性,朝着高度定向的方向发展这类恶意代码的开发采用环境敏感、休眠行为和条件触发等机制,攻击行为在具备特定的触发条件时才会表现出来如Stuxn
23、et、Duqu、Gauss和Flame等,都是针对特定平台或者操作系统版本的恶意软件xu等人【81通过分析近期赛门铁克等安全厂商信息,认为恶意软件采用Querytheninfect模式,朝定制化发展成为趋势恶意软件数量本来已呈指数级增长,定制化的发展趋势给恶意软件分析带来了更大的挑战为此,他们提出了当前恶意软件分析面临的两个新问题:(1)给定一个恶意软件样本,如何确定该样本是否是环境敏感恶意代码?(2)如果是环境敏感的恶意代码,如何确定其目标环境,并触发其恶意行为?基于这样的研究背景,该工作还提出了主动(proactively)、动态(dynamically)及白适应(adaptively)l
24、拘 意软件分析工具GOLDENEYE较之相关工作,该工具在时间、效率、性能上均能获得更好的平衡佐治亚理工大学的团队【9通过分析现有的恶意代码分析机制,提出了恶意软件定制和强化技术HIE(host identitybased encryption)和ISL(instruction set localization)其中,HIE的思想是恶意软件在投放前根据目标主机系统特征(host ID)进行加密,在执行前进行环境识别如果目标环境和定制环境不一致,说明其被捕获分析,恶意软件将执行不同的系统行为,从而构造针对特定目标系统的恶意代码ISL类似于代码虚拟化技术,主要是通过设计特定的二进制代码和中间代码变
25、换机制来规避对恶意软件的逆向分析112智能移动平台上的恶意软件近年来,移动智能系统和移动互联网迅速发展,越来越多的软件运行于移动终端,软件互联网化变得十分流行移动系统呈现“碎片化”发展的趋势智能终端的安全风险增大,针对Android和iOS的恶意软件层出不穷除熟知的木马、病毒、蠕虫、DDoS、劫持、僵尸、后门之外,移动互联平台也出现了间谍软件、广告软件、恐吓软件、勒索软件和跟踪软件(trackware)等恶意软件【10,11Zhou等人系统化地总结了Android系统中恶意软件的形态、分类和演化,将恶意软件分为重打包(repackaging)、更新攻击(update attack)、诱惑下载(
26、drive-bydownloadl、提权攻击(privilege escalation)、远程控$1(remote contr01)等9种,并进一步针对恶意软件攻击的行为(权限)进行细化,例如针对短信、电话、网络、个人通信录等分析指出:在所考察的1 260个恶意软件样本中,有1 083个属于重打包型恶意软件,占比为86Android上的恶意软件也呈现出一些特有的攻击模式和传播渠道例如,在恶意攻击方面出现“越狱(root exploit)”【12,131、困惑代理(confused deputy)攻击14,15、合谋攻击fcollusion attack)16,17、中间人攻击【1 8,19等为
27、主的攻击模式“越狱”是指用户可以获取Android操作系统的超级用户权限,某些用户通过Root越过手机制造商的限制进行设备定制,卸载预装在手机中的某些应用程序,或运行一些需要超级用户权限的应用程序“越狱”软件主要通过利用Android系统层的代码漏洞来实现攻击,例如,Android SetuidO机制的漏洞等恶意软件则通过Root提升权限,绕过Android系统的安全机制最著名的三大Android root exploit恶意软件是Zimpeflichtl21、Exploid和RATC(RageAgainstTheCage)许多其他恶意软件都是在它们的基础上研发的,如DroidDream、Zh
28、ash、DroidKungFu和Basebridge201Android应用和传统的Windows、Linux系统应用有很多不同的特性,例如四大组件、权限机带1(permission)等Chin等人21发现:Android应用之间的消息传递机带1(message passing)成为恶意软件的主要攻击点,消息常常被监听、修改、替换、注入他们还系统化地总结了针对Intent的主要攻击模式:广播信息窃取(broadcast theft)、Activity劫持(activity hijackin91、Service劫持(ServiceHijacking)、恶意广播消息注X(malicious bro
29、adcast injection)、恶意Activity启动(maliciousactivity launch)等提权(permission redelegation)攻击【22】是针对Android权限机制的恶意行为,是指一个拥有较低(较少)权限的应用程序访问拥有较高(较多)权限的组件而不受任何限制的行为具体的提权攻击实现方法各不相同,有的利用Intent盗窃劫持,有的需要多个应用程序之间的相互配合,例如困惑代理、合谋攻击等在传播方式方面,Android生态系统中出现了以Piggypacking【23】、第三方库(thirdparty library)251、恶意编译工具、刷机等新的传播模式
30、Piggypacking指的是恶意软件开发者通过在正常发布的软件中注入恶意payload的方式来传播恶意软件的行为,被注入了恶意代码的应用称为Piggypacking应用Zhou等人【2 3分析了来自多个应用市万方数据Journal of Software软件学报Vol,29,No1,January 20 1 8场的84 767个Android应用,发现在谷歌官方应用市场中,1,O的应用是Piggypacking应用,在第三方应用市场中,有09727不等的应用是Piggypacking应用通过手工分析,该团队发现,在注入的恶意代码中主要包含两类代码:一类是通过注入恶意广告库来窃取正常广告收入,
31、如admob、wooboo、youmi等15个广告库常被攻击;另一类是注入恶意代码攻击用户手机,发现了Geinimi、ADRD、Pjapps等5种重要的攻击代码在Android第三方库研究方面,中国科学院信息工程研究所的研究团队【261研制了基于特征的、变异敏感的挖掘工具LibD,对包括Google Play在内的45个国内外主要的Android应用市场的1 427 395个Android应用进行分析,发现了11 458个第三方库在其工作中,还发现很多第三方库都是多包库(multipackage libraries),共5 141个,占比84所谓多包库就是一个第三方库由多个已有的包组成该工作还
32、发现大量第三方库采用混淆(obfuscation)技术,主要是名字混淆(name obfuscation),共5 000个;很多库还具有多个不同的版本(或变种),这些变种中,有一些是开发人员迭代开发产生的正常版本,但有很多只修改了部分opcode,往往注入了恶意代码此外,中国科学院信息工程研究所的研究团队对Android应用市场和iOS应用市场第三方库中恶意代码进行了研究【z制通过对130万个Android应用和14万个iOS应用进行分析,发现了117个潜在的Android恶意库PHLib(potentiallyharmfullibraries),共1 008个变种:发现23个潜在的iOS恶意
33、库,共706个变种该工作还发现,很多恶意库不仅有Android版本,还有iOS版本例如,lOS的恶意库mobiSage有多个Android版本,其中6个是最新发现的,这些库往往从用户手机上窃取音视频或个人隐私数据上述Android恶意代码的发展主要呈现3个方面的特点(1) 由于移动互联网融合了传统的互联网和电信网,恶意软件除了管理软件信息外,还能获取短信、IEMIfinternational mobile equipment identity)等重要的用户隐私资源因此,出现了如伪造电话或短信、恶意扣费等针对用户隐私信息的攻击行为:(2) 很多恶意移动应用的开发模式、发布模式和软件生态密切相关例
34、如:互联网服务的应用常常提供第三方库和通用接口,移动应用的开发以重打包等方式开发,恶意广告、跟踪软件随之产生;(3) 移动平台恶意软件的开发与移动平台体系架构及编程语言等相关例如,Android系统采用4层架构体系:在编程语言方面,主要包括底层的CC+代码和上层的Java代码:在安全控制方面,包括Permission、UIDGID、SELinux等机制恶意软件往往利用编程语言的特性或者系统安全机制的漏洞进行攻击,例如通过反射代码进行恶意提权,利用静态Permission机制的缺陷收集个人隐私信息等11,3物联网平台上的恶意软件随着网络空间的不断延伸,越来越多的物理设备接入互联网平台,例如传感器
35、、网络摄像头、激光扫描器、网络打印机、全球定位设备等,形成了上规模的物联网目前,普遍将物联网的体系架构分为3个层次:感知层、传输层和应用层感知层解决对物理世界的数据获取的问题,以达到对数据全面感知的目的;传输层主要通过移动通信网、互联网等网络对数据进行传输:应用层利用高性能计算设备、智能计算技术,解决对海量数据的智能处理问题,以达到信息为人所用的目的物联网设备上通常运行着嵌入式操作系统和应用软件,并通过特定的网络协议进行互联物联网系统中,上述3个层次都存在各种恶意攻击模式【2”,如:针对无线传感网,存在虚假路由信息、Sinkhole攻击、Wormholes攻击等2引;针对传输层安全,存在拒绝服
36、务攻击、中间人攻击、异步攻击等291:而在物联网应用层,通常会收集和处理用户大量隐私数据,如个人信息、通讯薄、出行线路、消费习惯等,因此也存在针对网络服务设备的攻击工业控制终端也成为恶意软件攻击的平台,Chen等人【3 oJ分析了Stuxnet等工控恶意软件,指出工控恶意软件和通用平台的恶意软件相比所具有的独特特征,例如:工控恶意软件很多是条件触发的,感染途径独特,往往利用了PC和特定嵌入式设备的连接通道,采用混合编程语言,涉及传统平台的编程和PLC编程等114新型网络平台上的恶意软件传统网络以CS(clientserver)结构提供服务,然而,随着P2P、云计算和网络虚拟化等新网络技术的出现
37、和普及,针对网络的恶意软件有了新的演化和发展,出现了P2P蠕虫、云计算攻击代码,甚至针对SDNNFV网络的攻击行为一些恶意软件和恶意攻击与P2P、云计算或SDNNFV独特的软硬件架构密切相关在P2P网络中,出现Sybil攻击和路由欺骗攻击等311这类攻击消耗了P2P网络的资源,削弱了网络的冗余性在云计算平台中,万方数据刘剑等:软件与网络安全研究综述 47出现了针对虚拟化架构的恶意攻击软件、交叉虚拟机侧信道攻击(cross VM side channels attack)jtl定向共享内存攻击(targeted shared memory)32-35等利用虚拟化体系结构的特点攻击云计算租户,甚至
38、底层的虚拟监控机Wu等人p纠研究了云计算环境下x86体系结构计算机面临的侧信道攻击,发现传统的侧信道不可行的主要原因包括地址访问的不确定。I生(addressing uncertainty)、调度机制的不确定It(scheduling uncertaintyl以及Cache缓存的物理局口艮(cache physical limitations)在此基础上,该团队设计了一种基于时间的数据传播模式,并利用内存总线作为高带宽的侧信道传输中介,从而提出了一种针对云计算系统的、鲁棒的高带宽侧信道攻击方法该方法在Amazon EC2 cloud的实际环境中能获得100bps传输速率Yarom等人341针对
39、云计算和多核架构提出了一种利用LLC(1astlevel cache)进行侧信道攻击的模式传统的利用Cache进行侧信道攻击主要利用L1 cache,但在很多虚拟监控机(VMM)的实现中,一个VM在一个独立核上运行,L1 cache是隔离的,限制了攻击的成功率该团队发现:尽管很多攻击模式在LLC上不可行,但是FLUSH+RELOAD攻击是可行的为此,他们设计了针对LLC的攻击算法,获得了12 Mbs时间侧信道传输率,并成功获得了GnuPG的秘钥在SDNNFV方面,也出现了针对控制器、开放式编程接口等核心组件或薄弱环节的攻击方式36,37德州A&M大学的团队361研究了SDN网络中的Openfl
40、ow控制器,提出一种新的SDN攻击模式该攻击模式类似于传统的ARP欺骗攻击(ARPspoofing attack),其思想是:通过伪造路由信息,引导Openflow控制器服务或上层应用错误的访问,从而导致劫持、拒绝服务或者中间人攻击等恶意行为在该项工作中,作者分析了Openflow控制器中拓扑管理服务(topology management services)的漏洞,提出了主机定位劫持攻击(host location hijacking attack)、链接伪造攻击(1ink fabrication attack),并在Floodlight、OpenDaylight、Beacon以及POX等主
41、流的SDN控制中实现了实际的攻击场景云环境下,针对网络应用层的恶意攻击既继承了传统网络的攻击模式,又融合了新的网络结构特点,出现了一些演化形式以云计算模式为例,弹性的计算资源与灵活的访问方式为僵尸网络提供了良好的运行环境,攻击者既可以使用云服务器作为主控机,也可以使用窃取到的高性能虚拟机作为僵尸机,有效地降低了被检测或追溯的可能性针对云计算的按需计费模式,出现了欺骗性资源耗尽攻击(fraudulent resource consumptionattack)38此外与传统的Web应用环境不同,云计算环境的虚拟化特征加剧了恶意代码注入攻击的安全威胁3 91中国科学院信息工程研究所和西安交通大学的团
42、队391协同设计了一种利用云计算系统中推送服务的僵尸网络,该网络利用谷歌的云到设备消息服务(cloud to device messaging service,简称C2DM)控制多个“肉鸡”,具有隐蔽、资源消耗低、稳定等特点并通过C2DM实现了SMSSpamandClick等多种攻击模式云端的服务迁移、虚拟机共存等操作使得恶意代码的检测工作异常困难115 APT等高级攻击模式随着软件承载越来越多的经济价值和国家利益,恶意软件已被广泛用作牟利工具,形成规模化、专业化的黑色产业链一方面,各类黑客组织或一部分民间的技术爱好者开发恶意软件,通过窃取网络虚拟资产、个人隐私信息等方式牟利:另一方面,一些国
43、家、组织机构也在发展这方面的能力,以对其他国家和组织实施破坏或从中获取情报恶意软件成为实施主动攻击、情报搜集的重要手段,恶意软件的发展,上升到国家间“网络战”对抗层面恶意软件开发者综合利用隐私信息、漏洞挖掘等知识,发展出APT高级攻击形态,成为当前网络安全的重要威胁【4 01从2009年谷歌公司报告遭受代号为“极光”(aurora)的攻击开始,“震网(stuxnet)”“火焰(flame)”“夜龙(night dragon)雷金(regan)”“方程式(equation)”等APT攻击不断被发现【4。4 21RAS实验室的Juels等人【4 2J认为,现有工作常常将APT攻击分为社会工程、渗透
44、、平行移动、窃取数据4个步骤,但是这样的分析方法往往限制了对APT的认识,要应对新型APT攻击,需要排除这种固化认识,用更广的视野来进行研究分析12恶意软件对抗为了达到获取信息或破坏信息的目的,恶意软件常常利用对抗技术来逃避反病毒软件和分析人员的检测和分析,以延长存活时间,获取更大的利益恶意软件的对抗技术从实现原理上主要分为两类:反静态分析和反动态分析,具体包括加壳、代码混淆、信息隐藏、代码虚拟化、调试工具检测、沙箱和监视工具检测等121 传统软件平台上恶意软件对抗传统平台上的恶意软件大量使用加壳、混淆等对抗手段目前,恶意软件采用的反分析技术进一步深化,针万方数据48 Journal of S
45、oftware软件学报V0129,No1,January 201 8对性更强在反静态分析技术方面,加壳、花指令(junk instruction)变换等技术出现新的变化以加壳技术为例,一方面,目前加壳软件种类繁多,常用的加壳软件就有UPX、PECompact、ASPack、Petite和WinUpackTM等;另一方面,加壳程序会有针对性地误导分析软件Linn等人43的工作发现:主流的逆向或调试工具,如IDA Pro、Ollydbg、Windbg等,在反汇编阶段大都采用线性扫描(1inear sweep)算法和递归遍历(recursive traversal)算法他们针对两种算法提出了对抗技术
46、针对线性扫描算法设计了分支翻转(branch flipping)花指令,针对递归遍历算法设计分支函数(branch function)、调用转换(call conversion)以及跳表伪造(jump table spoofing)等多种控制流混淆技术实验结果表明:这些技术在对抗逆向工具方面效果明显,加入这些混淆技术后,最坏情况下导致65的指令和85的函数被错误反汇编Moser等人【44】分析了传统恶意代码对抗静态分析能力的演变过程,他们认为:早期的恶意软件查杀工具依靠特征匹配(pattern matching)来分析恶意软件,已很难应对新型恶意软件随着模型检测等基于语义特征(semantic
47、 signature)的静态分析方法的出现,恶意软件的分析能力得到提升但是恶意软件静态分析技术本身存在很多局限性,例如:通过设计透明常量(opaque constant)等变换技术,基于语义特征的静态分析方法不能正确跟踪变量值的计算过程因此,仅仅依靠静态分析不足以应对恶意软件对抗技术,需要动、静态结合的解决方案动态反分析技术也日益丰富,触发条件更加复杂,隐蔽性和不确定性进一步增强,可通过人机操作检测、系统配置检测等手段来触发恶意行为例如:当检测到左键点击后,恶意软件UpClicker才会连接远程的C&C服务器;当检测到3次鼠标点击后,恶意软件BaneChant才会激活功能恶意软件Trojan
48、Nap通过睡眠(19分钟)来躲避检测,代码里还使用了未公开的API以对其他可疑操作提供掩护;ActionScript恶意代码中,下载恶意Flash时需要输入系统安装的Flash player版本号,如果版本号不满足要求,则无法下载恶意Flashl451Kolbitsch等人【46J介绍了一种恶意代码对抗动态沙箱分析的手段,无论该样本在什么环境下,执行恶意动作前都要先执行Stalling CodeStalling Code会调一些无关紧要的系统API,由于沙箱一般会对系统API进行监视,因此,如果在沙箱环境中运行就会产生较大的开销,从而规避分析如果是真实环境,则其开销变得微不足道,并不影响程序正常执行该恶意代码在Anubis环境中执行需要数天,但在真实环境中仅需数秒加密技术(encrypted malware)也是恶意软件主要的对抗机制之一,恶意软件主要通过加密关键代袒J(payload等1或数据(流量)的方式进行保护,例如,将加密数据混入正常的HTTP或DNS流量中加以隐藏近年来,恶意勒索软件也利用加密函数劫持用户数据,勒索钱财4”122移动智能平台上恶意软件对抗在移动智能平台上,由于Android应用市场通常采用静态分析的方法对上载