◆何韶军孔 睿 刘江伟 姚 乐
基于原子动作的网络恶意行为识别方法
◆何韶军1孔 睿2通讯作者刘江伟1姚 乐3
(1.中国人民解放军31003部队 北京 100191;2.中国人民解放军军事科学院战争研究院 北京 100091;3.中国人民解放军军事科学院 北京 100091)
本文提出一种基于原子动作的网络恶意行为识别方法,实现快速识别网络恶意行为特征。首先,由于信息系统提供面向用户的各种业务,其各类业务由服务资源和数据资源提供支撑,因此将信息系统基本资源的分为四层;其次,本质上网络恶意行为是通过影响系统基本资源属性来达到影响系统的目的,基于此,将恶意原子动作分为对资源的增加、删除、修改、窃取、解析、占用;最后,采用二元组将恶意动作表述为针对某个系统基本资源实施了某类恶意原子动作。该方法能够描述网络恶意行为全集,反映网络恶意行为中包含的受恶意影响的资源序列信息,可以从保护受恶意行为影响的系统资源的角度着手防范该类恶意行为。
原子动作;网络恶意行为;识别方法;基本资源
随着网络的普及,网络安全威胁日益突出,网络恶意行为也受到越来越多的关注。网络恶意行为[1-2],是为实现一定的目的针对某一目标所采取的一系列操作的过程,是一个不断向攻击目的逼近的动态过程。通常采用扫描[3]、口令攻击[4]、恶意代码[5]、缓冲区溢出[6]、欺骗[7]、后门[8]、会话劫持[9]、网络监听[10]、拒绝服务[11]等方法,对目标网络或系统产生影响和破坏,如篡改信息、骗取和假冒数据、盗取服务和资源、破坏系统可用性等。
大数据时代下,网络安全事件呈现出数据多样化、数据量快速递增等特点,安全事件的事态与特性分析决策面临巨大的挑战。国家互联网应急中心[12](CNCERT)仅在2018年就关闭了772个控制规模较大的僵尸网络,切断了黑客对境内约390万台感染主机的控制,全年捕获勒索软件近14万个,捕获的计算机恶意程序样本数量超过1亿个。2018年,CNCERT抽样监测发现我国境内峰值超过10Gbps的大流量分布式拒绝服务攻击(DDoS攻击)事件数量平均每月超过4000起。2019年网络安全事件更是层出不穷。澳大利亚维多利亚州政府3万名雇员个人信息外泄,万豪酒店5亿客户数据泄漏,俄罗斯50多家大型企业遭到未知攻击者勒索。如何高效、准确识别网络安全事件中的恶意行为的类型,并为事件处置决策提供帮助,已经成为国家与网络空间安全领域的关键性问题。
为了做到主动防御,争取在网络攻击与防护的安全对抗中占据主动地位,我们需要深入研究并把握网络恶意行为的规律。在研究和分析现有网络恶意行为和事件的基础上进行网络恶意行为分析是研究、设计和实现黑客入侵防范体系的第一步,网络恶意行为分析的一个有效方法是对网络恶意行为进行分类。
对网络恶意行为进行分类识别是防范网络攻击、降低攻击损失的重要工作内容。目前,对网络恶意行为有多种分类方法,不同的分类方法会得到不同的分类结果,要获得一个理想的结果,需要一个好的分类方法和分类标准。下面就对网络恶意行为的分类方法进行讨论。
基于经验术语的分类描述方法[13]利用网络恶意行为中常见的技术术语、社会术语等对网络恶意行为进行描述。Lcove[14]按照该方法把攻击类型分为病毒、蠕虫、DDoS、网络欺骗等20余类,但此种分类方法只能描述已知恶意行为,术语之间存在较大交叉,术语内涵不明确。
基于单一属性的描述方法[15]是指从某个特定属性描述网络恶意行为的方法。典型的将恶意行为实施手段分为5种:中断、拦截、窃听、篡改、伪造,或将恶意行为分为外部滥用、硬件滥用、伪造、有害代码、绕过认证或授权、主动滥用、被动滥用、恶意滥用、间接滥用。此种方法只能笼统地反映出恶意行为属性的特点。
基于多维属性的描述方法指同时抽取恶意行为的多个属性,并利用这些属性组成的序列来表示一个恶意行为过程,具体属性包括:实施者的类型、所使用的工具、过程信息、结果和目的。王昭等人[16]提出了一种基于多维属性的网络攻击分类方法,将攻击过程用技术手段、攻击来源、攻击入口等14个方面的属性来进行描述。这种方法能全面反映恶意行为的各个属性,但较为复杂,适用于深入解读恶意行为后对其进行描述。
基于应用的分类描述法是对特定类型应用、特定系统而发起的恶意行为的属性进行分类描述的方法。Welch等人[17]对无线网络的攻击进行了研究,从嗅探、中间人和重放攻击等方面进行了描述。该方法有利于描述恶意行为固有特点及其关键属性,但也正是因为过多地考虑专用性的原因,这种方法在普适性方面的表现较差,难以适用于不同的应用领域,无法穷尽恶意行为。
网络恶意行为最终可描述为影响或破坏目标网络、系统的业务。为描述网络恶意行为针对的系统业务,提出一种基于原子动作的网络恶意行为分类描述方法,该方法提取恶意动作作用的系统业务基本资源,依据系统业务基本资源受到的影响提取恶意原子动作,形成对该恶意动作的描述,集合全部恶意动作的描述即形成对恶意行为的描述,最后受恶意动作影响的系统业务基本资源对恶意行为进行分类识别。将具有同样的受影响业务资源的恶意行为分为一类进行识别,可以从保护受恶意行为影响的系统资源的角度着手防范该类恶意行为。
本方法采用二元组(y,d)描述网络恶意动作g:g(y,d)描述网络恶意行为的一个动作,y表示受影响的系统资源,d表示恶意原子动作,该二元组将网络恶意行为动作表述为针对某个系统基本资源实施了某类恶意原子动作。一种网络恶意行为可以由多个恶意动作组成,也可以只有一个恶意动作,表述为:G{ g1(y1,d1),g2(y2,d2),……,gn(yn,dn)},n≥1。
作为最早使用的漆器胎骨,“刳器”的优点和缺点都是显而易见的。其优点是结实耐用。因为“刳器”是整块木料加工而成的,未经拼接,且较为厚重,因而不易折损。缺点在于,加工时要挖去很多不必要的部分,因而费工、费料。而且,“刳器”一般比较厚重,有失轻巧。
图1 基于恶意原子动作的恶意行为描述方法流程
将信息系统视为面向用户提供多项业务的整体,业务由运行的硬件/软件程序和数据共同支撑,因此每项业务包含服务资源和数据资源。动态运行着的程序代码提供服务,服务包括硬件服务、操作系统服务和用户服务,其中,硬件面向系统程序代码提供硬件服务,操作系统面向业务程序代码提供操作系统服务,业务程序代码面向用户提供用户服务;数据是指硬件/软件程序运行所需要的代码、管理参数等运行数据及其运行中生成的数据。服务包括服务管理和服务应用,相应地,数据包括管理数据和生成数据。基于此,对信息系统基本资源进行分层描述,如图2。
服务资源指动态运行的代码面向程序/用户提供的应用,包括硬件服务、操作系统服务和用户服务。
(1)硬件服务资源
硬件服务资源指支撑信息系统运行的各种物理设备资源,是硬件面向系统程序代码提供的服务,包括主机设备、外围设备、网络设备。主机设备包括CPU、内存、硬盘、光驱、电源、BIOS、网卡以及其他输入输出控制器和接口;外围设备包括输入/输出设备、外存储器、键盘、打印机、磁盘驱动器;网络设备包括中继器、路由器、网关、交换机、防火墙、网桥等设备。
操作系统服务资源指信息系统运行所依赖的操作系统环境提供的各种系统应用,是面向业务软件代码的操作系统服务,包括操作系统管理和操作系统应用。其中操作系统管理包括设备管理、程序管理、组件与服务管理、网络管理、用户管理、存储管理、文件管理、策略管理、任务管理、日志管理;操作系统应用包括网络传输、服务组件、文字处理、系统命令、图像处理、打印输出等。
图2 信息系统基本资源结构组成
(3)用户服务资源
用户服务资源指信息系统所提供的运行于操作系统之上的用户应用和系统其他配套应用,是面向用户的应用服务,包括服务管理和服务应用。用户服务资源包括用户服务管理和用户服务应用;系统其他应用是指附加于操作系统之上区别于信息系统主要业务的用户服务,这些用户服务是构成整个操作系统运行环境的一部分,例如系统安全应用、游戏、音视频应用等,这些用户服务也包括用户服务管理和用户服务应用。
数据资源指信息系统运行所需的代码、参数及运行中生成的数据。包括硬件数据资源、操作系统数据资源和用户服务数据资源。
硬件数据资源包括硬件管理数据和硬件生成数据。硬件管理数据指管理信息系统运行的各种物理设备储存的参数和代码,包括BIOS运行参数和运行代码、打印机运行参数和运行代码、中继器运行参数和运行代码、路由器运行参数和运行代码、网关运行参数和运行代码、交换机运行参数和运行代码、防火墙运行参数和运行代码、网桥运行参数和运行代码等;硬件生成数据是信息系统中各种物理设备运行过程中产生的数据,包括BIOS、打印机、中继器、路由器、网关、交换机、防火墙、网桥等在运行过程中输出的数据。
(2)操作系统数据资源
操作系统数据资源包括操作系统管理数据和操作系统生成数据。操作系统管理数据包括设备数据、程序数据、组件数据、网络数据、用户数据、存储管理数据、文件管理数据、策略数据、任务数据、日志数据;操作系统生成数据包括网络传输数据、服务组件生成数据、文字处理生成数据、图像处理生成数据、系统安全应用生成数据、打印输出生成数据等。
(3)用户服务数据资源
用户服务数据资源包括用户服务管理数据和用户服务生成数据。用户服务管理数据是指运行于操作系统之上的业务所需要的代码/管理数据,用户服务生成数据是指运行于操作系统之上的业务运行中生成的数据。
资源可以通过可用性、占用率、响应速率/时间、正确度、保密性等基本属性进行描述。本质上,网络恶意行为正是通过影响系统基本资源属性来达到攻击系统的目的。一个恶意动作可影响一个或多个系统业务,只要做好相关系统资源的防护即可达到对整个网络恶意行为的防范。
恶意原子动作d的取值范围包括增加、删除、修改、窃取、解析、占用,其内涵如下文所述。
增加是指恶意原子动作将不合法的资源插入到目标系统中的行为,例如植入病毒、木马、逻辑炸弹等属于此类行为。删除是指恶意原子动作去掉合法的系统资源的行为,例如删除硬盘引导数据、删除文件等属于此类行为。修改是指恶意原子动作改变正确的系统资源内涵的行为,例如修改用户配置文件、修改操作提供安全配置策略等属于此类行为。窃取是指恶意原子动作对系统资源实施不合法读取的行为,例如网络探测、信息窃取属于此类动作。解析是指恶意原子动作对窃取的系统资源进行分析理解有用信息的行为,例如密码破译、协议分析等属于此类行为。占用是指恶意原子动作非法使用系统资源从而影响资源正常使用的行为,例如拒绝服务攻击等属于此类行为。
一种网络恶意行为可能包含了若干恶意动作,按照时序集合这些恶意动作描述即可形成对完整网络恶意行为的描述,将具有同样的受影响业务资源的网络恶意行为分为一类进行识别,可以从保护受影响的系统资源的角度着手防范该类网络恶意行为。
中间人攻击是网络恶意行为的常见手段之一,本文结合基于原子动作的网络恶意行为分类描述方法对基于ARP欺骗的中间人攻击进行分析。
由于ARP协议设计的初衷是为了方便数据传输,未考虑网络安全因素,存在设计缺陷,主要表现为该协议未提供一种检验IP地址与MAC地址对应关系真实性的机制,使所有ARP响应均认为合法,无须认证。以上缺陷,使得ARP欺骗成为网络中中间人攻击的一种常用手段。
基于ARP欺骗的中间人攻击包括网络侦察、插入通信链路、截获数据、转发数据四个步骤。
在对目标进行中间人攻击前,通过使用“嗅探”获取目标网络关键信息,“嗅探”的过程是对操作系统运行/管理数据的网络运行数据进行窃取和解析的过程,表示如下:
网络数据窃取:g1(网络运行数据,窃取);
网络数据解析:g2(网络运行数据,解析)。
“嗅探”完成后,主机C插入合法主机A、B通信路径之间,使主机A、B间通过C通信:A←→C←→B。为此,主机C向网络广播错误ARP响应信息,使主机A、B更新ARP缓存(主机B的lP--主机C的MAC、主机A的IP--主机C的MAC),此后主机A会将主机C的MAC地址作为主机B的MAC地址,而主机B也会将主机C的MAC地址作为主机A的MAC地址。当A、B之间通信时,数据帧均会发往主机C,通过定时广播伪造ARP响应,可将攻击主机C插入到主机A、B通信路径中。
以上修改ARP缓存的行为,可以视为对操作系统运行/管理数据中网络运行数据正确性的修改,可以表示为:g3(网络运行数据正确性,修改)。
当成功将主机C插入主机A、主机B的通信链路后,主机A、B的数据均发往主机C,运行在混杂模式的网卡可以截获这些数据。
截获主机A、主机B通信数据的行为,可以视为对业务生成数据的窃取,具体何种业务生成数据,因被攻击业务而异,表示为:g4(某业务生成数据,窃取)。
为了保证主机A、主机B之间通信的连续性,主机C必须转发所有截获的数据包,主机C应修改数据帧的目的MAC地址为主机A或B的真实MAC地址,例如,对主机B发给主机A的数据包,主机C需要将目的MAC地址由主机C的地址变更为主机A的MAC地址。此外,根据恶意行为目标,可以更改数据包的业务内容,达到欺骗主机A、主机B的目的。
转发数据的过程,可以视为对业务生成数据正确性的修改,具体何种业务生成数据,因被攻击业务而异,表示为:g5(某业务生成数据正确性,修改)。
在对基于ARP欺骗的中间人攻击流程进行梳理分析后,该网络恶意行为可以表述为以下恶意动作的集合G:{g1(网络运行数据,窃取),g2(网络运行数据,解析),g3(网络运行数据正确性,修改),g4(某业务生成数据,窃取),g5(某业务生成数据正确性,修改)}。
该方法可以描述网络恶意行为全集,当新的网络攻击出现时,可以采取本方法对尚未完全认知的网络恶意行为按照作用于系统资源属性的效果进行分类描述,如表1所示。
表1 典型网络恶意行为的恶意动作表示
为描述网络恶意行为针对的系统业务,提出一种基于原子动作的网络恶意行为分类描述方法,该方法提取恶意动作作用的系统业务基本资源,依据系统业务基本资源受到的影响提取恶意原子动作,形成对该恶意动作的描述,集合全部恶意动作的描述即形成对恶意行为的描述,最后对恶意行为进行分类识别。将具有同样的受影响业务资源的恶意行为分为一类进行识别,可以从保护受恶意行为影响的系统资源的角度着手防范该类恶意行为。
[1]熊泽明.计算机网络安全技术在网络安全维护中的应用[J].网络安全技术与应用,2020(03):4-5.
[2]SELVAKUMAR B,MUNEESWARAN K. Firefly Algorithm Based Feature Selection for Network Intrusion Detection[J]. Computers & Security,2018.
[3]RING M,LANDES D,HOTHO A. Detection of Slow Port Scans in Flow-based Network Traffic.[J]. PloS one,2018,13(9).
[4]ANOUD B H,MUNIR M,AISHA A. Online Authentication Methods Used in Banks and Attacks Against These Methods[J]. Procedia Computer Science,2019,151.
[5]孙泽浩.基于深度学习的恶意代码检测技术[J].网络安全技术与应用,2018(02):61-62+67.
[6]孙文豪.缓冲区溢出的安全隐患[J].网络安全技术与应用,2010(05):9-10.
[7]XIA Jing,CAI Zhiping,HU Gang,XU Ming. An Active Defense Solution for ARP Spoofing in OpenFlow Network[J].Chinese Journal of Electronics,2019,28(01):172-178.
[8]马颜军.Web的安全威胁与安全防护[J].网络安全技术与应用,2016(11):20-21.
[9]KRISHNAN V A,AMRITHA P P,SETHUMADHAVAN M .Sum Chain Based Approach against Session Hijacking in MPTCP[J]. Procedia Computer Science,2017,115:794-803.
[10]樊强.网络安全中网络监听与防范技术探析[J].网络安全技术与应用,2015(09):53+56.
[11]LI Yuancheng,ZHANG Pan,MA Longqiang. Denial of Service Attack and Defense Method on Load FrequencyControl System[J]. Journal of the Franklin Institute,2019,356(15).
[12]王小群,韩志辉,徐剑,等.2018年我国互联网网络安全态势综述[J].保密科学技术,2019(05):4-9.
[13]高见,王安.面向网络攻击的能力评估分类体系研究[J/OL].计算机应用研究:1-7[2019-11-09].https://doi.org/10.19734/j.issn.1001-3695.2019.01.0075.
[14]王萌,王亚刚,韩俊刚. 基于NDNN 的入侵检测系统[J]. 微电子学与计算机,2018,35(7):89-92.
[15]JAYARAM N D,MORSE P L R. Network Security-a Taxonomic View [C]//Proc of European Conference on Security & Detection. IET,2002.
[16]王昭,李翔宇,胡建斌. 一种基于多维属性的网络攻击分类方法[J]. 微计算机应用,2009,30 (6):24-29.
[17]AYROUR Y,RAJI A,NASSAR M. Modelling Cyber-attacks:a Survey Study [J]. Network Security,2018,2018(3):13-19.
铁道部科技研究开发计划[2012X004-A]