本发明属于网络安全的技术领域,具体涉及一种基于同源性分析的apt攻击识别及归属方法、系统和存储介质。
背景技术:
apt高级持续性威胁,是利用先进的攻击手法对特定的目标进行长期持续性的网络攻击的攻击形式。与传统的网络攻击不同,apt攻击具有针对性、连续性、先进性、阶段性、共享性、间接性等特点,其攻击手段变化多端、攻击效果显著且难以防范。结合国内外各个安全研究机构、安全厂商对apt威胁活动的持续跟踪和分析,可以看出apt攻击组织大多有政府背景,而且很多apt组织开发出自己独特的网络武器库,使用的攻击方法、手段、流程皆相当熟练,能掌握利用各种网络攻击对目标实施打击,常常配合人工智能使用0day攻击,给企业、机构、国家造成严重的损害,最危险的是攻击的目标涵盖了能源、电力、金融、国防等关系到国家核心利益的基础设施。
apt攻击的归属分析一直是apt威胁分析中最为重要的一个环节,识别不同apt攻击所采用的恶意软件的同源性,有利于构建攻击场景,跟踪攻击者,甚至防御新的apt攻击。另外,由于apt攻击具有先进性和共享性,同一apt组织发布的apt攻击具有相似性,威胁共享是发现apt攻击的重要支撑。
目前apt攻击的识别和归属分析研究大部分依赖于安全专家的人工分析,分析过程中花费的时间和人力资源的成本较高,效率过低;已有的自动化分析方法中选取的静态特征过于单一,而且会因为恶意软件的混淆和加壳技术使得特征提取困难,导致方法失效。
技术实现要素:
本发明的主要目的在于克服现有技术的缺点与不足,提供一种基于同源性分析的apt攻击识别及归属方法、系统和存储介质,不仅可有效检测apt攻击事件,而且基于已知的apt组织库可找到相似的apt攻击,有利于构建攻击场景,跟踪攻击者,并有效识别后续出现的事件的apt攻击组织。
为了达到上述目的,本发明采用以下技术方案:
本发明提供的一种基于同源性分析的apt攻击识别及归属方法,包括下述步骤:
从监控的威胁数据中采集apt相关的攻击数据,并提取定义的apt四元特征组中各集合中的特征元素值;
与任意已有的某个apt组织库中的apt攻击特征元组进行特征向量化;
对两组攻击的特征向量计算相似性,发现该攻击与选取apt攻击的关系及所属的组织,并将该攻击样本保存到apt组织库中。
作为优选的技术方案,所述特征元素值的提取,具体为:
将apt攻击长期持续性的一系列活动定义为一个4元组:it=(ikc,traffic,tool,target),每个攻击根据元组中的类别均可提取零到多个特征值;所述四元组中:
①ikc为攻击过程集合,ikc=(c1,c2,...,c7);使用攻击链描述apt攻击的各个阶段以及其攻击手段,将攻击者的攻击过程分解为7个步骤:c1=reconnaissance侦察,c2=weaponization武器构建,c3=delivery载荷投递,c4=exploitation漏洞利用,c5=installation驻留,c6=c2命令控制,c7=actionsonobjectives采取行动;
②traffic为攻击中提取的流量数据的属性集合,包括源ip、目的ip、源端口、目的端口和协议号,traffic=(sourceip,destinationip,sourceport,destinationport,protocol);
③tool为攻击者使用的工具集合,工具集由一个或多个组件组成,apt组织通常自己开发工具集并实施攻击,tool=(component1,component2,...,componentn)
④target为攻击目标集合,apt攻击对攻击目标针对性强,目标明确,target=(target1,target2,...,targetn)。
作为优选的技术方案,通过监测各个被感染设备的状态变化、内网的流量变化和权限的改变,对ikc每个阶段的行为记录好数据,并按时间顺序组成攻击链ikc集合。
作为优选的技术方案,将网络设备中收集到的信息可以先用端口镜像获取流量数据,然后用tcpdump解析流量数据并将必要属性值记录到traffic集合;
作为优选的技术方案,所述威胁数据包括:主机入侵检测系统、网络入侵检测系统、防火墙的各种传感器输出的数据包和日志记录数据。
作为优选的技术方案,所述进行特征向量化,具体为:
首先将攻击数据it的每个类别的元素值分别与aptj相对应的类别的元素值合并并对里面的元素值去重,得到setj=(set1,set2,set3,set4),然后分别独立地对setj中的四个集合中的每个元素值进行索引编号;当it攻击的traffic集合数据为:trafficit=(sourceipit,destinationipit,sourceportit,destinationportit,protocolit)),在已知apt组织库中任意选取某一aptj,它的traffic集合数据为
以此类推分别基于以上步骤计算出it和aptj的四个元组数据集合的向量数组得到:
作为优选的技术方案,所述同源性分析具体为:
基于生成的vit和
作为优选的技术方案,it和aptj对应的两两向量集合之间通过余弦相似度算法计算公式如下:
其中xi,yi分别代表向量x和y的分量,θ代表两个向量的夹角;trafficit和
依次计算得到
最终it和aptj的相似度定义为:
其中权值w为it各个集合里面的元素值出现在已知apt组织库里面的频率占比。
本发明还提供了一种基于同源性分析的apt攻击识别及归属系统,应用于所述的基于同源性分析的apt攻击识别及归属方法,包括特征提取模块、特征向量化模块以及同源性分析模块;
所述特征提取模块,用于从监控的威胁数据中采集apt相关的攻击数据,并提取定义的apt四元特征组中各集合中的特征元素值;
所述特征向量化模块,用于与任意已有的某个apt组织库中的apt攻击特征元组进行特征向量化;
所述同源性分析模块,用于对两组攻击的特征向量计算相似性,发现该攻击与选取apt攻击的关系及所属的组织,并将该攻击样本保存到apt组织库中。
本发明还提供一种存储介质,存储有程序,所述程序被处理器执行时,实现基于同源性分析的apt攻击识别及归属方法。
本发明与现有技术相比,具有如下优点和有益效果:
(1)本发明将ikc攻击链与其他能区分apt组织的特征相融合形成多维特征集合,并结合权重进行相似度计算,不仅可有效检测apt攻击事件,而且基于已知的apt组织库可找到相似的apt攻击,有利于构建攻击场景,跟踪攻击者,并有效识别后续出现的事件的apt攻击组织。另外本发明计算过程简单,提高了apt识别和归属分析的自动化效率。
(2)本发明基于两两攻击特征组联合,采用one-hot编码特征值向量化,结合余弦相似度并赋予权值加权求和得相似度值衡量二者之间是否同源,并判断是否apt攻击或归属划分,提高了自动化识别效率。
附图说明
图1是本发明实施例基于同源性分析的apt攻击识别及归属方法的流程图;
图2是本发明实施例基于同源性分析的apt攻击识别及归属系统的结构示意图;
图3是本发明实施例的存储介质的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
实施例
本实施例基于同源性分析的apt攻击识别及归属方法,首先,从监控的大量威胁数据中采集apt相关的攻击数据并提取定义的apt四元特征组中各集合中的特征元素值;其次,与任意已有的某个apt组织库中的apt攻击特征元组进行特征向量化;最后,对两组攻击的特征向量计算相似性,发现该攻击与选取apt的关系及所属的组织,并将该攻击样本保存到apt组织库中。
如图1所示,本实施例的方法具体包括下述步骤:
s1、从监控的威胁数据中采集apt相关的攻击数据,并提取定义的apt四元特征组中各集合中的特征元素值。
更为具体的,步骤s1中,基于监视器收集的各种威胁数据,包括从主机入侵检测系统(hids)、网络入侵检测系统(nids)、防火墙等各种传感器输出的数据包和日志记录数据等。首先从收集的威胁数据中采集与apt相关的特征,并利用大数据技术将特征分类别提取,这里将apt攻击长期持续性的一系列活动定义为一个4元组:it=(ikc,traffic,tool,target),每个攻击根据元组中的类别均可提取零到多个特征值,下面对4元组做具体的阐述:
①ikc为攻击过程集合,ikc=(c1,c2,...,c7)。这里引用的攻击链是2011年洛克希德马丁公司提出的ikc(入侵杀死链)模型,该模型使用攻击链描述apt攻击的各个阶段以及其攻击手段,将攻击者的攻击过程分解为7个步骤:c1=reconnaissance(侦察),c2=weaponization(武器构建),c3=delivery(载荷投递),c4=exploitation(漏洞利用),c5=installation(驻留),c6=c2(命令控制),c7=actionsonobjectives(采取行动)。完整攻击链是由各个阶段由攻击事件组成,事件中含有的元素信息是系统中实际的元数据。通过监测各个被感染设备的状态变化、内网的流量变化和权限的改变等,对ikc每个阶段的行为记录好数据,并按时间顺序组成攻击链ikc集合。
②traffic为攻击中提取的流量数据的属性集合,其中包括源ip,目的ip,源端口,目的端口和协议号,traffic=(sourceip,destinationip,sourceport,destinationport,protocol)。将网络设备中收集到的信息可以先用端口镜像获取流量数据,然后用tcpdump解析流量数据并将必要属性值记录到traffic集合。
③tool为攻击者使用的工具集合,工具集由一个或多个组件组成,apt组织通常自己开发工具集并实施攻击,tool=(component1,component2,...,componentn)。
④target为攻击目标集合,apt攻击对攻击目标针对性强,目标明确。target=(target1,target2,...,targetn)
从apt攻击链可知,每个攻击环节都会产生相应的威胁行为数据,本实施例将收集到的威胁数据根据事件划分提取apt相关的特征,然后利用大数据技术提取各类别中元素数据。
s2、与任意已有的某个apt组织库中的apt攻击特征元组进行特征向量化;
更为具体的,步骤s2是基于已有apt组织库中的任意apt攻击样本aptj将步骤s1提取的攻击it样本向量化,具体方法如下:
首先将攻击it的每个类别的元素值分别与aptj相对应的类别的元素值合并并对里面的元素值去重,得到setj=(set1,set2,set3,set4),然后分别独立地对setj中的四个集合中的每个元素值进行索引编号。比如it攻击的traffic集合数据为:trafficit=(sourceipit,destinationipit,sourceportit,destinationportit,protocolit)),在已知apt组织库中任意选取某一aptj,它的traffic集合数据为
s3、对两组攻击的特征向量计算相似性,发现该攻击与选取apt攻击的关系及所属的组织,并将该攻击样本保存到apt组织库中。
基于步骤s2中生成的vit和
余弦值越接近1,就表明夹角越接近0度,也就是两个向量越相似,夹角等于0,即两个向量相等。it和aptj对应的两两向量集合之间通过余弦相似度算法计算公式如下:
其中xi,yi分别代表向量x和y的分量,θ代表两个向量的夹角。比如trafficit和
依次计算得到
最终it和aptj的相似度定义为:
其中权值w为it各个集合里面的元素值出现在已知apt组织库里面的频率占比。
如图2所示,在另一个实施例中,提供了基于同源性分析的apt攻击识别及归属系统,该系统特征提取模块,特征向量化模块,同源性分析模块;
所述特征提取模块,用于从监控的威胁数据中采集apt相关的攻击数据,并提取定义的apt四元特征组中各集合中的特征元素值;
所述特征向量化模块,用于与任意已有的某个apt组织库中的apt攻击特征元组进行特征向量化;
所述同源性分析模块,用于对两组攻击的特征向量计算相似性,发现该攻击与选取apt攻击的关系及所属的组织,并将该攻击样本保存到apt组织库中。
在此需要说明的是,上述实施例提供的系统仅以上述各功能模块的划分进行举例说明,在实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能,该系统是应用于上述实施例的基于同源性分析的apt攻击识别及归属方法。
如图3所示,在本申请的另一个实施例中,还提供了一种存储介质,存储有程序,所述程序被处理器执行时,实现基于同源性分析的apt攻击识别及归属方法,具体为:
从监控的威胁数据中采集apt相关的攻击数据,并提取定义的apt四元特征组中各集合中的特征元素值;
与任意已有的某个apt组织库中的apt攻击特征元组进行特征向量化;
对两组攻击的特征向量计算相似性,发现该攻击与选取apt攻击的关系及所属的组织,并将该攻击样本保存到apt组织库中。
应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。