基于数字疫苗的隐遁勒索病毒攻击动态防御模型
张瑜1, 刘庆中2, 石元泉3, 曹均阔1    
1. 海南师范大学 计算机系, 海口 571158, 中国;
2. 萨姆休斯顿州立大学 计算机系, 休斯顿 77340, 美国;
3. 怀化学院 计算机科学与工程学院, 怀化 418000, 中国
摘要:针对隐遁勒索病毒攻击威胁性极大以及传统方法对其防御不力的问题,该文提出了一种基于数字疫苗的隐遁勒索病毒攻击动态防御模型。借鉴生物免疫机理,给出了数字疫苗、抗原、抗体及抗体浓度等免疫概念的形式化定义。首先,通过接种数字疫苗(创建诱饵文件和文件夹),使系统生成抵御隐遁勒索病毒攻击的未成熟抗体;其次,通过免疫抗体动态演化机制,生成能抵御隐遁勒索病毒抗原的成熟抗体与记忆抗体;最后,通过在内核层和应用层实施双重动态监控抗体浓度变化,并借助交叉视图法来实时感知隐遁勒索病毒攻击。理论分析与实验结果表明:该模型有效解决了隐遁勒索病毒攻击难以实时检测的问题,且较传统方法性能更高。
关键词数字疫苗    免疫危险理论    隐遁勒索病毒攻击    危险信号    抗体浓度    
Digital vaccine-based dynamic defense model for stealthy ransomware attacks
ZHANG Yu1, LIU Qingzhong2, SHI Yuanquan3, CAO Junkuo1    
1. Department of Computer Science, Hainan Normal University, Haikou 571158, China;
2. Department of Computer Science, Sam Houston State University, Houston 77340, USA;
3. School of Computer Science and Engineering, Huaihua University, Huaihua 418000, China
Abstract: Ransomware is a type of malware from cryptovirology that threatens to publish the victim's data or permanently block access to it unless a ransom is paid. Stealthy ransomware is a new type of ransomware that tries to evade detection by deleting all hard copies of its files and just residing in a process running in memory. This study uses danger theory for the biological immune system to design a digital vaccine-based dynamic defense model for stealthy ransomware attacks. Formal definitions are given for some immune concepts such as digital vaccine, antigen, antibody and antibody concentration. Vaccinations with digital vaccines (creating bait files and folders) give the system immature antibodies against stealthy ransomware attacks. The system quickly detects stealthy ransomware attacks using dynamic monitoring of the stealthy ransomware attack antigens in both the core and application layers and by monitoring the dynamic evolution of antibodies and changes of the antibody concentration. Analyses and tests show that the model provides effective real-time detection of stealthy ransomware attacks that are more effective than traditional methods.
Key words: digital vaccine    immune danger theory    stealthy ransomware attacks    danger signals    antibody concentration    

隐遁勒索病毒攻击已成为当前网络空间所面临的重要安全威胁之一[1-2]。隐遁勒索病毒攻击是指利用隐遁技术,通过伪装或修饰攻击痕迹,规避或阻碍安全系统检测与取证,进而悄无声息地劫持数据资源(加密文件、拒绝访问、锁定屏幕等), 敲诈勒索赎金, 维持长期隐蔽的一种新型恶意网络攻击[3-4]。隐遁勒索病毒规避安全系统的方式如下[5-6]:1)驻留系统注册表,2)钩挂系统服务调用,3)篡改系统内核数据。其威胁性主要体现于:1)持续存在、长期隐蔽,这导致传统的安全防御技术难以有效检测;2)劫持数据、勒索赎金,这导致用户遭受数据与经济双重损失。总之,隐遁勒索病毒寓攻击于无形之中,攻击威力极大,攻击后果惨烈,已成为企业与个人挥之不去、防不胜防的网络安全梦魇[7-9]

目前,针对隐遁勒索病毒攻击的检测响应可概括为3类[4, 10]:1)静态特征码防御。通过查寻文件或内存中的勒索病毒特征码来加以判断。其检测逻辑为:分析已知勒索病毒样本→提取其特征码入库→扫描待检测文件→以是否匹配特征码来判断之。2)静态蜜罐防御。通过监控人为设置的诱捕陷阱去感知攻击行为。其检测逻辑为:逆向分析勒索病毒→投放诱饵文件、设置诱捕陷阱→监控诱饵、感知勒索病毒攻击。3)动态进程监控防御。通过监测文件系统或者内存进程的异常行为来判断是否为勒索攻击行为。其检测逻辑为:钩挂系统调用相关函数→比对调用行为→告警异常调用行为。

上述方法存在的问题分别表现为:1)无力应对未知勒索病毒攻击。特征码防御尽管能有效检测已知勒索病毒,但由于隐遁勒索病毒通常会采取驻留系统注册表、钩挂系统服务调用或篡改系统内核数据等方式,在文件系统或内存中隐匿其静态文件或动态进程,因此导致特征码根本无法检测。2)知其然,而不知其所以然。尽管蜜罐防御能快速检测到勒索病毒攻击,但却无法准确定位攻击源。3)无力检测隐遁勒索病毒攻击。动态进程监控防御是依据进程行为是否异常来判定,具有误报率低、能快速有效应对未知勒索病毒攻击的技术优势。然而,由于该类方法将勒索病毒攻击过程视为“黑盒”,忽略了对勒索病毒攻击机理与交互行为进行分析,致使难以准确定位其隐匿之处、无法精准杀灭隐遁勒索进程,从而导致隐遁勒索病毒攻击死灰复燃、卷土重来。

鉴于网络防御系统与生物体免疫系统的惊人相似性:两者均需在不确定性环境中动态防御有害入侵抗原并维持系统稳定,生物免疫系统的概念与机理将有助于改进网络防御系统性能[11]。受此启发,本文提出一种基于数字疫苗的隐遁勒索病毒攻击动态防御模型。首先,接种数字疫苗。即通过创建诱饵文件和文件夹,完成诱捕陷阱设置,使系统具备抵御勒索病毒攻击的免疫抗体。其次,实时监控数字疫苗。通过在内核层和应用层双重实时监控已接种的数字疫苗,并借助交叉视图法完成对隐遁勒索病毒攻击的快速感知。最后,借鉴免疫危险理论,通过抗体浓度监测、免疫识别,构建基于数字疫苗的隐遁勒索病毒攻击动态防御模型。理论分析与实验仿真结果表明,本模型有效克服了传统方法存在的免疫抗体完备性问题和抗原危险性难以动态定量计算的问题,因而较传统方法有更好的适应性。

1 模型理论 1.1 免疫危险理论

生物免疫系统是在经历亿万年的优胜劣汰自然选择过程中保留并遗传下来保障生物体免受外来病毒或细菌侵袭的一种生物体安全防御系统:监视体内外有害物质,识别并清除此类有害物质。

免疫危险理论[12]认为:在有害物质侵袭生物体时,动态监视的免疫细胞(抗体)接受到危险信号Ⅰ;之后除非继续接受到危险信号Ⅱ而进入免疫应答状态,否则将继续保持免疫静默状态。免疫危险理论有效解决了免疫误判问题,即只有在抗体浓度达到危险临界值出现真正危险时才进行免疫应答。

1.2 相关定义

本文采用勒索病毒攻击进程运行时对文件或目录的操作行为序列作为抗体和抗原。Windows系统中的ReadDirectoryChangesW函数为监控勒索病毒对相关文件与目录的更改提供了可能。该函数的FILE_NOTIFY_INFORMATION结构[13]中存储了文件或目录变化的数据。通过该数据可获知勒索病毒对目录或文件进行了何种操作。

为方便定量计算抗体浓度及免疫识别,本文对FILE_NOTIFY_INFORMATION结构中的操作行为进行了编码,如表 1所示。

表 1 FILE_NOTIFY_INFORMATION操作类型及其编码
FILE_NOTIFY_INFORMATION操作类型 编码
FILE_ACTION_ADDED 1
FILE_ACTION_REMOVED 2
FILE_ACTION_MODIFIED 3
FILE_ACTION_RENAMED_OLD_NAME 4
FILE_ACTION_RENAMED_NEW_NAME 5
其他 #

定义1  抗原空间是计算机系统中所有进程运行时所产生的FILE_NOTIFY_INFORMATION操作序列的集合,表示为$\mathrm{Ag}=\bigcup\limits_{i=1}^{\infty} H^{i}$,其中H={1, 2, 3, 4, 5, #},i为正整数。

定义2  数字疫苗是勒索病毒经常访问的文件类型与目录类型。

定义3  疫苗接种是指在目标系统中创建供勒索病毒访问的诱饵文件与诱饵目录。

定义4  抗原是引发危险信号的进程运行时所产生的FILE_NOTIFY_INFORMATION操作序列,表示为

D={x|x=发出危险信号的进程运行时产生的FILE_NOTIFY_INFORMATION操作序列,x∈ Ag}.

定义5  抗体是勒索病毒攻击检测器,Ab= $\{<n, c>| n \in \mathrm{Ag}, c \in \mathbb{R}\}$,其中,n是FILE_NOTIFY_INFORMATION操作码,c为抗体浓度。

定义6  亲和力是表征抗体与抗原之间的耦合强度,即:$F(t)=\sum f(t)$

$ f(t) = \left\{ {\begin{array}{*{20}{l}} {1, }&{\exists i, j, 0 < ijl, {x_i} = {y_j}, }\\ {}&{{x_{i + 1}} = {y_{j + i}}, \cdots , {x_d} = {y_{j + d - 1}};}\\ {0, }&{{\rm{ 其他}}{\rm{. }}} \end{array}} \right. $

定义7  危险信号Ⅰ是未成熟抗体与抗原之间的亲和力F1超出设定的初始阈值Fα(即F1Fα)时所发出的告警信号。

定义8  危险信号Ⅱ是成熟抗体与抗原之间的亲和力F2超出设定的临界阈值Fδ(即F2Fδ)时所发出的告警信号。

定义9  抗体浓度$c(t)=1-\frac{1}{1+\ln F(t)}$,定量地表征勒索病毒攻击强度,攻击强度与浓度值成正比关系。

1.3 勒索病毒攻击动态防御模型

借鉴免疫危险理论,本文提出的勒索病毒攻击动态防御模型如图 1所示。首先,通过疫苗接种产生初始的未成熟抗体,该抗体浓度初始值设为0,在免疫识别抗原期间,如其浓度仍为0则凋亡,如发出危险信号Ⅰ,则抗体浓度提升,演化为成熟抗体。其次,成熟抗体进一步免疫识别抗原,如继续发出危险信号Ⅱ,则进一步提升抗体浓度并演化为记忆抗体,否则凋亡。最后,记忆抗体启动免疫应答,杀灭抗原,同时进入疫苗库以备后续的疫苗接种。

图 1 基于数字疫苗的隐遁勒索病毒攻击动态防御模型

本文采用代数集合方法,定量描述模型中的疫苗库、抗原免疫识别、抗体等的动态演化过程。

1.3.1 疫苗库动态演化

疫苗是指勒索病毒经常访问的文件类型和目录类型。疫苗动态演化机制将确保本模型的自适应性与完备性,为实时响应勒索病毒攻击提供动态疫苗支撑。

本模型的疫苗库由3部分组成:初始疫苗、成熟抗体的疫苗和记忆抗体的疫苗。其动态演化方程如下:

$ V(t) = \left\{ {\begin{array}{*{20}{l}} {{V_{{\rm{inital }}}}, }&{t = 0;}\\ {V(t - 1) + {V_{{\rm{maturity }}}}(t) + }&{}\\ {{V_{{\rm{memory }}}}(t) - {V_{{\rm{dead }}}}(t), }&{t \ge 1.} \end{array}} \right. $

其中:Vinitial为初始疫苗,源于各种已知勒索病毒攻击所特有的FILE_NOTIFY_INFORMATION操作序列;Vmaturity为成熟抗体的疫苗,免疫识别时的危险信号Ⅰ浓度超出阈值时,勒索病毒攻击抗原将作为新疫苗进入疫苗库;Vmemoy为记忆抗体的疫苗,免疫识别时的危险信号Ⅱ浓度超出阈值时,勒索病毒攻击抗原将作为新疫苗进入疫苗库;Vdead为周期性随机删掉的部分低亲和力疫苗。

显然,假以时日,本模型疫苗库将覆盖所有勒索病毒抗原空间。由此可得:

定理1  疫苗库的动态演化将最终覆盖所有勒索病毒攻击抗原集合。

1.3.2 抗体动态演化

抗体是勒索病毒攻击特征识别器,主要源于疫苗接种,并通过对勒索病毒攻击抗原进行免疫识别而不断演化自身。抗体的动态演化方程如下:

$ A(t) = \left\{ {\begin{array}{*{20}{l}} {{A_{{\rm{initial }}}}, }&{t = 0};\\ {A(t - 1) + {A_{{\rm{maturity }}}}(t) + }&{}\\ {{A_{{\rm{memory }}}}(t) - {A_{{\rm{dead }}}}(t), }&{t \ge 1};\end{array}} \right. $

其中:Ainitial为初始未成熟抗体,直接源于疫苗接种。未成熟抗体在遭遇勒索病毒攻击抗原而发出危险信号Ⅰ时,如危险信号Ⅰ浓度小于设定的阈值,则自动凋亡;如达到或超过该阈值,则提升抗体浓度,并演化为成熟抗体Amaturity。成熟抗体在遭遇勒索病毒攻击抗原而发出危险信号Ⅱ时,如危险信号Ⅱ浓度小于设定的阈值,则自动凋亡;如达到或超过该阈值,则提升抗体浓度,启动免疫应答,杀灭攻击抗原,同时由成熟抗体演化为记忆抗体AmemoryAdead为2次抗原免疫识别时因抗体浓度未达到设定阈值而自行凋亡的抗体。

在抗原免疫识别期间,由于未成熟抗体既能因分别发出的危险信号Ⅰ和危险信号Ⅱ达到阈值而演化为成熟抗体和记忆抗体,又可在其浓度未达到阈值而自行凋亡,因此,依据免疫抗体完备性理论[14],本模型将逐渐生成能有效识别整个抗原空间的抗体。于是可得:

定理2  抗体动态演化机制将逐渐产生能免疫识别所有勒索病毒攻击抗原的有效抗体。

1.3.3 抗原免疫识别

抗原免疫识别是指抗体对勒索病毒攻击抗原的免疫辨认。在本模型中,用抗体与抗原之间的亲和力来定量计算。在抗原免疫识别时,会发出2种危险信号:1)当未成熟抗体与抗原的亲和力达到或超出设定阈值时,发出危险信号Ⅰ,抗体浓度提升并演化为成熟抗体;2)当成熟抗体与抗原的亲和力达到或超过设定阈值时,发出危险信号Ⅱ,抗体浓度提升并演化为记忆抗体。只有在发出危险信号Ⅱ之后,才启动免疫应答,杀灭抗原。

2 仿真实验与结果分析 2.1 实验环境

勒索病毒攻击检测实验的特殊性决定了实验必须在受控环境中完成。因此,选择由VMWare 5.5+Windows 10作虚拟支撑平台,模拟真实网络环境,并确保测试系统安全。

勒索病毒攻击样本主要包括WannaCry、NotPetya、BadRabbit、GlobeImposter等50个典型的勒索病毒攻击案例,基本涵盖了当前勒索病毒攻击所使用的各类技术。

2.2 实验过程

实验分为2个阶段:免疫识别检测阶段和对比实验检测阶段。其中,免疫识别检测阶段的主要目的是:通过疫苗接种建立初始的未成熟抗体,并借助危险信号提升其浓度,以实时检测勒索病毒攻击;对比实验检测阶段的主要目的是:通过与同类的实用反病毒技术的对比实验,验证本模型的有效性。鉴于此,本文采用检测率(true positive, TP)值和误报率(false positive, FP)值来表征实验结果。

实验具体步骤如下:

1) 疫苗库建立。在受控的实验平台中,通过静态的逆向分析与动态的行为分析,初步构建50个典型勒索病毒攻击的FILE_NOTIFY_INFORMATION操作码序列,经冗余处理后加入疫苗库,为疫苗接种生成未成熟抗体提供数字疫苗支撑。

2) 成熟抗体生成。通过疫苗接种而生成未成熟抗体,其初始抗体浓度为0。在遭遇勒索病毒攻击抗原时,如抗体浓度达到设定阈值,则引发危险信号Ⅰ,并演化为成熟抗体。成熟抗体是本模型中检测勒索病毒攻击的活跃检测器,用于检测未知勒索病毒攻击。

3) 记忆抗体生成。成熟抗体在遭遇勒索病毒攻击时,如其抗体浓度超过设定阈值,则演化为记忆抗体,并启动免疫应答以实时检测勒索病毒攻击。记忆抗体是本模型中检测勒索病毒攻击的重要检测器,用于检测已知勒索病毒攻击。

2.3 实验结果与分析

模型参数的选取需依据具体网络实验环境而定。由于本模型采用动态演化方式更新疫苗库、实时生成抗体、实时检测勒索病毒攻击抗原,因此在不影响模型性能的情况下,可适当考虑较大的疫苗库V值。未成熟抗体浓度阈值α和成熟抗体浓度阈值δ取值在0.2~0.6。各种参数设置下的实验结果如图 24所示。

图 2 未成熟抗体浓度α对模型TP值和FP值的影响其中δ=0.4,V=50

图 3 成熟抗体浓度δ对模型TP值和FP值的影响其中α=0.5,V=50

图 4 疫苗库V对模型TP值和FP值的影响其中α=0.4,δ=0.5

实验结果表明:

1) 如图 2所示,由于未成熟抗体直接源于疫苗接种,在其浓度阈值α较小时,TP值与FP值都较高;随着勒索病毒攻击抗原不断增多,未成熟抗体浓度也不断增加,最终保持较高的TP值和较低的FP值。

2) 如图 3所示,在未成熟抗体演化为成熟抗体后,随着抗体浓度阈值δ的增加,成熟抗体的活性也随之升高,导致较高的TP值和较低的FP值。

3) 如图 4所示,疫苗库V主要用于疫苗接种而产生未成熟抗体,其规模大小直接影响TP值和FP值。因为未成熟抗体的多样性与疫苗数量成正比关系,随着疫苗库V规模增大(疫苗数量增多),抗体浓度更易提升,从而导致较高的TP值和较低的FP值。

4) 当参数设置为α=0.4、δ=0.5、V=50,实验获得较满意的TP值和FP值(TP>95%,FP < 5%)。

为验证本模型的整体防御有效性,本文选择部分通过国际权威评测机构AV-Comparatives测试的反病毒软件进行对比实验。反病毒软件包括:ESET、Bitdefender、Kaspersky、Tencent、Symantec、AVG、McAfee、Trend Micro、Avast等。在对比实验中,隐遁勒索病毒样本共100个,源于著名的病毒样本网站VX Hevean,用于检测率测试。此外,还从Windows系统中随机收集了1 000个各类良性程序(系统程序和应用程序),用于误报率测试。实验结果如图 56所示。

图 5 检测率对比实验结果

图 6 误报率对比实验结果

图 5可知,在检测率测试方面,从高到低依次为:本模型方法100%、ESET 98%、Bitdefender 98%、Tencent 97%、Symantec 97%、Trend Micro 96%、Kaspersky 96%、Avast 95%、AVG 95%、McAfee 95%。

图 6可知,在误报率测试方面,从高到低依次为:Avast 2%、Bitdefender 2%、McAfee 2%、Symantec 1.5%、Trend Micro 1.5%、Tencent 1.5%、ESET 1%、Kaspersky 1%、AVG 0.5%、本模型方法0.5%。

实验结果表明:与其他反病毒软件相比,本模型方法有较高的检测率和较低的误报率。究其原因在于:本模型构建的疫苗库动态演化机制使疫苗最终涵盖了所有隐遁勒索病毒,解决了隐遁勒索病毒抗原覆盖的完备性问题;构建的抗体动态演化机制使各类抗体通过演化逐渐识别全部隐遁勒索病毒抗原,解决了抗体覆盖的完备性问题;通过危险信号、抗体浓度变化以及内核层与应用层的交叉视图法,快速有效识别勒索病毒抗原,解决了抗原识别的有效性问题。

3 结论

本文提出了一种基于数字疫苗的隐遁勒索病毒攻击动态防御模型。通过疫苗库动态演化机制,解决了抗原集完备性问题;通过引入抗体浓度,解决了实时定量计算隐遁勒索病毒攻击抗原评估问题;通过抗体动态演化机制,解决了抗体免疫识别隐遁勒索病毒攻击抗原的有效性问题。本模型直接引入数字疫苗、疫苗库、疫苗接种和抗体浓度等免疫概念,从而使抗体随攻击抗原而自行提升抗体浓度,并通过在内核层和应用层同时实时监控并定量计算抗体浓度的变化,来实现快速感知、动态检测隐遁勒索病毒攻击。

参考文献
[1]
[2]
KRUNAL G, VIRAL P. Survey on ransomware:A new era of cyber attack[J]. International Journal of Computer Applications, 2017, 168(3): 38-41.
[3]
MANSFIELD-DEVINE S. Fileless attacks:Compromising targets without malware[J]. Network Security, 2017, 2017(4): 7-11.
[4]
AL-RIMY B A S, MAAROF M A, SHAID S Z M. Ransomware threat success factors, taxonomy, and countermeasures:A survey and research directions[J]. Computers & Security, 2018, 74: 144-166.
[5]
KHARRAZ A, ROBERTSON W, KIRDA E. Protecting against ransomware:A new line of research or restating classic ideas?[J]. IEEE Security & Privacy, 2018, 16(3): 103-107.
[6]
HAMPTON N, BAIG Z, ZEADALLY S. Ransomware behavioural analysis on windows platforms[J]. Journal of Information Security and Applications, 2018, 40: 44-51.
[7]
HOMAYOUN S, DEHGHANTANHA A, AHMADZADEH M, et al. Know abnormal, find evil:Frequent pattern mining for ransomware threat hunting and intelligence[J]. IEEE Transactions on Emerging Topics in Computing, 2018. DOI:10.1109/TETC.2017.2756908
[8]
SRINIVASAN C R. Hobby hackers to billion-dollar industry:The evolution of ransomware[J]. Computer Fraud & Security, 2017, 2017(11): 7-9.
[9]
MCGILL J K. Ransomware:Is your practice protected?[J]. Journal of Clinical Orthodontics:JCO, 2018, 52(4): 237-239.
[10]
BREWER R. Ransomware attacks:Detection, prevention and cure[J]. Network Security, 2016, 2016(9): 5-9.
[11]
LI T. Dynamic detection for computer virus based on immune system[J]. Science in China Series F:Information Science, 2008, 51(10): 1475-1486.
[12]
PENNISI E. Immunology:Teetering on the brink of danger[J]. Science, 1996, 271(5256): 1665-1667.
[13]
YOSIFOVICH P, RUSSINOVICH M E, SOLOMON D A, et al. Windows internals, Part 1:System architecture, processes, threads, memory management, and more[M]. 7th ed. Hoboken: Microsoft Press, 2017.
[14]
PERELSON A S, WEISBUCH G. Immunology for physicists[J]. Review of Modern Physics, 1997, 69(4): 1219-1263.