一种基于目标模型的网络攻击检测方法

xiaoxiao2020-10-23  7

一种基于目标模型的网络攻击检测方法
【技术领域】
[0001] 本发明涉及信息安全领域,具体涉及一种基于目标模型的网络攻击检测方法。
【背景技术】
[0002] 随着信息技术的发展和网络环境的日益复杂,网络攻击范围越来越大,攻击手段 越来越先进,攻击形式也更为隐蔽和多元化。当前的网络攻击呈现出以下趋势:
[0003] 1.社会工程学方法越来越频繁的出现在网络攻击中;
[0004] 2.综合利用多种攻击手段实现网络攻击;
[0005] 3.Oday漏洞等先进的攻击方式大量出现在网络攻击中;
[0006] 4.攻击持续时间变长,长期潜伏于攻击目标;
[0007] 5.攻击手段更加隐蔽,不易被安全软件检测;
[0008] 6.针对特定目标的精准攻击越来越频繁。
[0009] 网络攻击的演变给攻击检测带来了新的挑战。高级持续性威胁(Advanced PersistentThreat,APT)攻击是当前网络攻击的典型代表。本发明以APT攻击检测分析当 前攻击检测中存在的问题
[0010]APT攻击是传统网络入侵、渗透手段的集成和综合运用,具有如下特征:
[0011] 1.针对性:APT攻击有明确的客体对象及目标,包括攻击范围、目标资产、攻击时 限、破坏程度、终止条件等,需要针对目标网络及信息系统的类型、防御机制,以及部署的安 全设备进行攻击规划,在攻击进行时通过采集到的信息、状态数据等动态调整攻击策略,以 实现最优的攻击效果。APT攻击的针对性体现在每一次发动攻击前都必须针对目标进行 详细的探测并对攻击进行专门设计,前次有效的攻击手段往往无法直接应用于下一次攻击 中。
[0012] 2.持续性:攻击者为了达到目的会进行长时间、持续、多手段的入侵和渗透,直到 成功。在潜伏期花费几个月甚至一年,甚至在入侵成功后继续探测三到五年。这种持续性 的攻击使黑客的行为可以不断演变发展,但防护体系的静态特征却难以适应这种动态的变 化:也许防护机制可以抵挡一时的攻击,但随着时间的推移,信息系统、应用软件不断有新 的漏洞被发现,这一段防御体系的空档期就是攻击者突破防线的最好时机。
[0013] 3.多态性:攻击者的攻击方式不是一成不变的,既包括病毒、木马植入等传统入 侵手段,也包括SQL注入、零日漏洞、软件后门、操作系统缺陷等,甚至结合社会工程学、心 理学等各种线下手段实施攻击。综合采用多类技术首先是为了使受害者难于防范,提高攻 击的成功率,其次也可以通过并行实施起到掩盖其真实攻击意图的作用。
[0014] 4.隐蔽性:APT攻击的隐蔽性表现在攻击者对目标系统的探测、入侵及信息窃取 都尽量尝试以不被察觉的方式进行。
[0015] 基于以上分析,传统的网络攻击检测方法已经很难满足当前的网络攻击检测需 求。

【发明内容】

[0016] 鉴于现有技术的上述状况,本发明提出一种基于目标模型的网络攻击检测方法, 基于被保护目标的目标模型,在攻击过程的大量安全事件中,根据安全事件与保护目标的 距离、安全事件对目标的安全影响检测网络攻击。
[0017] 一种基于目标模型的网络攻击检测方法,包括:
[0018] 步骤一、建立通用目标模型框架,通用目标模型框架中描述了可能成为网络攻击 目标的实体以及实体之间的关联关系;根据待保护的目标T向通用目标模型框架中填入信 息,形成目标模型;所述实体是物理的、虚拟的、逻辑的或社会的元素;
[0019] 步骤二、利用目标模型所体现的关联关系,建立扩展影响树和安全影响图;
[0020] 所述扩展影响树采用树结构记载了直接或间接访问到目标T的实体与目标T之间 的关联关系以及实体之间的关联关系;所述安全影响图以节点、节点间连线的方式记载了 扩展影响树所涉及到的实体之间的攻击传播通道;扩展影响树和安全影响图的节点间具有 权值,表示一个节点对另一个节点的影响大小,且对于具有父子关系的节点,同一父节点下 各子节点的关系有"与"以及"或";
[0021] 步骤三、针对检测到的每个安全事件,确定该安全事件与目标T之间的距离d和对 目标T的安全影响H;
[0022] 针对距离d,其组成元素至少包括安全事件终端和目标T之间的逻辑距离Ld;逻辑 距离Ld的值利用扩展影响树的节点间关系和权值,从安全事件终端所在的层级向上推算, 最终获得安全事件与目标T之间的逻辑距离Ld;
[0023] 针对安全影响H,利用安全影响图的节点间关系和权值,从安全事件终端所在的层 级向上推算,获得安全事件对目标T的安全影响H;
[0024] 步骤四、根据各个安全事件的距离d和安全影响H进行攻击检测。
[0025] 优选地,所述扩展影响树从上至下包括目标、子目标、扩展目标、扩展子目标共4 种层级;第一层级为目标T,第二层级为组成目标T的子目标,根据子目标相互关系第二层 级包含至少1层;第三层级为扩展目标,是攻击者在攻击目标前很有可能攻击的目标;第四 层为组成扩展目标的扩展子目标,根据扩展子目标相互关系第四层级包含至少1层;所述 目标、子目标、扩展目标、扩展子目标均为实体;父节点与子节点之间具有权值,表示子节点 对父节点的影响大小;同一父节点下各子节点的关系有"与"以及"或";
[0026] 所述安全影响图根据扩展影响树所涉及到的实体之间的攻击传播通道构建;安全 影响图中的权值沿用扩展影响树中的权值,对于没有权值的节点对,采用节点对中的其中 一个受到攻击时另外一个被攻击的可能性大小作为权值;
[0027] 所述步骤三具体包括两部分:
[0028] (1)计算每个安全事件与目标T之间的距离:
[0029]Ld的计算方式是:确定出安全事件终端属于扩展影响树中的哪一层,记为第L层, 计算安全事件终端与扩展影响树第L层中各节点的物理距离,记为Dis,以该物理距离Dis 为初始数据从扩展影响树的第L层开始,利用节点间关系和权值向上推算,获得每一层的 逻辑距离,直到目标T,从而计算出安全事件从逻辑距离的角度对目标T的影响程度,即 Ld;
[0030] (2)计算每个安全事件对目标T的安全影响H:
[0031] 简化安全影响图,简化方式是:删除与安全事件终端不直接相连、也不在安全事件 终端到目标T的路径上的节点;通过所述简化获得安全事件终端到目标T可能经由的路径 分支,以安全事件对安全事件终端的安全影响为初始数据,利用节点间权值沿所述路径分 支向上推算,获得每一层的安全影响,直到目标T,从而计算出安全事件对目标T的安全影 响H〇
[0032] 优选地,步骤一中,所述关联关系包括物理连接、逻辑连接和社交连接;所述逻辑 连接为通信连接、服务连接或管理连接。
[0033] 优选地,步骤二中,采用节点对中的其中一个受到攻击时另外一个被攻击的可能 性大小作为权值时,该权值采用下式计算:
[0034] HorgX(kjXb+^Xad)
[0035] 其中,HOTg为安全事件对直接受害者的影响,采用CVSS评分标准获得;b为传播因 子,描述一个节点遭受攻击时目标T遭受同样攻击的可能性的;ad为递进因子,描述一个节 点遭受攻击时目标T遭受以此为基础的进一步攻击的可能性;匕和k2分别为b和ad的重 要性系数。
[0036] 优选地,传播因子b由直接受害节点和保护目标节点的相似性,以及两节点间网 络跳数决定:
[0037] b=Rs/ (2+ln(Dlogic))
[0038]其中,&为节点间相似性,取值空间[0, 1],相似性越高,数值越小;Dlogic为节点 间物理距离,取值为大于等于1的正整数。
[0039] 优选地,递进因子ad由Dag决定;
[0040] ad= 1/(1+Dag)
[0041] 其中,Dag为在安全领域的攻击图中保护目标节点与攻击直接受害节点相应的受 攻击状态之间的跳数。
[0042] 优选地,所述距离d的组成元素进一步包括安全事件终端和目标T之间的物理距 离Pd和/或安全事件所处的攻击阶段Cd;
[0043] 针对攻击阶段Cd,将攻击过程分为多个阶段,为每个阶段赋予数值作为Cd的值, 越接近最后一个阶段,Cd的值越小。
[0044] 优选地,步骤三在进行逻辑距离推算时,对于一个节点N,当其子节点的关系为 "与"时,将各子节点的逻辑距离除以各自与节点N间的权值后,再相加,即得到节点N的逻 辑距离;当其子节点的关系为"或"时,将各子节点的逻辑距离除以各自与节点N间的权值 后,取最小值,即得到节点N的逻辑距离。
[0045] 优选地,步骤三在进行安全影响推算时,对于一个节点N,当其子节点的关系为 "与"时,将各子节点的安全影响乘以各自与节点N间的权值后,再相加,即得到节点N的安 全影响;当其子节点的关系为"或"时,将各子节点的安全影响乘以各自与节点N间的权值 后,取最大值,即得到节点N的安全影响。
[0046] 优选地,所述步骤四为:将各个安全事件的距离d和安全影响H整合为多维向量, 然后对各个安全事件的多维向量进行聚类,距离目标T最近的一类对应的安全事件即为发 现的核心事件;
[0047] 将各核心事件的安全影响之和与报警阈值进行比较,如果大于报警阈值,则判定 针对目标T的攻击已经发生。
[0048] 有益效果:
[0049] (1)本发明考虑到在网络攻击中,并不能提前确定攻击者,然而保护的目标却是明 确的,因此基于通用目标模型架构,为被保护目标构建目标模型,从而建立起一树一图,基 于这一树 一图,能够在获知出现安全事件时,基于安全事件距离目标的距离d以及对目标 T的安全影响H,层层递推,获得发生在与目标有关联关系的实体上的安全事件对目标的影 响,从而发现核心安全事件以实现攻击检测。
[0050] (2)本发明的关联关系包括物理连接、逻辑连接和社交连接,实体包括物理的、虚 拟的、逻辑的、社会的元素,这样可以将更多与攻击相关的信息关联在一起,提高网络攻击 检测的准确性。
[0051] (3)本发明在安全影响图中,对于没有主从关系的节点,以安全事件对直接受害者 的影响为基础,结合传播因子和递进因子,从而使得计算出来的权值不仅能够体现相同攻 击的传播和影响,还能够体现进一步攻击的传播和影响,实现全面地安全影响计算,进而获 得更准确、更全面的计算结果。
【附图说明】
[0052] 图1为本发明实施方式中一个示例的网络架构图;
[0053] 图2为针对图1所示对象构建的目标、子目标、扩展目标和扩展子目标的关系图;
[0054] 图3为针对图1所示对象构建的扩展影响树;
[0055] 图4为本发明实施方式中另一个示例的网络架构图;
[0056] 图5为图4所示对象中目标T的子目标组成;
[0057] 图6为针对图4所示对象构建的部分扩展影响树;
[0058] 图7为针对图4所示对象构建的部分安全影响图;
[0059] 图8为将安全事件表示在图7的安全影响图中的结果;
[0060] 图9为根据安全事件对图8进行简化的过程和结果。
【具体实施方式】
[0061] 在网络攻击中,并不能提前确定攻击者,然而保护的目标却是明确的。所以本发明 提出一种基于目标模型攻击检测方法。该方法基于被保护目标建立一个目标模型,目标模 型中描述了可能成为攻击目标的实体以及实体之间的关联关系;利用目标模型所体现的关 联关系,建立构建扩展影响树和安全影响图;进行网络攻击检测时,根据这一树一图,获得 安全事件与目标之间的距离和安全影响,从而分析实体上所发生安全事件之间的关联性, 最终寻找到核心安全事件。
[0062] 下面结合附图对本发明实施方式进行详细描述。
[0063](一)通用目标模型框架和目标模型的建立。
[0064] (1)通用目标模型框架
[0065] 通用目标模型框架是目标模型的建模基础,通过通用目标模型框架,能够为任何 保护目标进行建模。通用目标模型框架用于描述可能成为攻击目标的实体以及实体之间的 关联关系。
[0066] 因此通用目标模型框架的建立应该包括所有可能被攻击的实体,例如操作系统、 文件、数据库、账户、主机等等,可以看出这些实体中包含实际存在的物理实体,还包含承载 于物理实体上的虚拟实体。虚拟实体进一步可分为逻辑元素、虚拟元素和社会元素。如下 表所示,实体按类型分为物理层、信息层和社会层三类。
[0067]
[0068]表1
[0069] 其中,物理层实体为实际存在的物理设备,包括核心设备例如主机,还包括环境设 置例如网络设施等。
[0070] 信息层实体为物理设备上承载的各种信息,包括数据层信息、应用层信息、网络层 信息和系统层信息。具体来说:数据层信息是与文件和数据相关的信息,应用层信息是与应 用程序相关的信息,网络层信息是与网络传输相关的信息,系统层信息是与操作系统相关 的信息。
[0071] 社会层实体包括实体人和虚拟人;社会层主要描述人的相关属性以及人与人之间 的关系。
[0072] 在构建通用目标模型框架使,实体可以采用属性值对(A,B)的方式进行描述,A为 实体的属性名称,B为属性值,B可以是单纯属性值,例如文件长度的属性值,B也可以是另 外一个实体名称,例如文件驻留主机的属性值就是一个主机名称,属于物理层实体。无论如 何描述,只要体现实体的基本性质和实体间的相互联系即可。由于是通用目标模型框架,因 此属性值的部分为"空"。下表2为一个通用目标模型的示例,其中只有部分类型的实体。
[0073]
[0074]

[0075] 表 2
[0076] 如表2所示,上述文件名,文件创建时间,文件长度都属于基本属性;文件驻留主 机属于物理层实体,文件所属打包或管理软件属于应用层实体,文件访问权限属于数据层 实体,文件宿主属于社会层实体。
[0077] 由于上述实体的多样性,实体间的关联关系也包括物理连接、逻辑连接和社交连 接。
[0078] 物理连接指在两实体之间有一条物理连接链路。
[0079] 逻辑连接指在两实体之间有一条逻辑连接链路。逻辑链路可以用来作通信连接、 服务连接和管理连接。
[0080] (I)通信支持。在两实体a和b之间存在通信支持。a是网络服务设备,例如交换 机,b是连接在网络中的设备,例如主机。
[0081] (II)服务支持。在两实体a和b之间存在服务支持。a是服务提供者,例如FTP 服务器,b是连接服务的设备,例如FTP客户端。
[0082] (III)管理连接。在两实体a和b之间存在管理连接。a是管理节点,例如云计算 中的管理节点,b是被管理的节点,例如云计算中的计算节点。
[0083] 社交连接指在两实体之间有一条社交连接链路或虚拟连接。
[0084] 在实际中,鉴于简化安全影响的计算,可以主要考虑后两者连接,对于物理连接, 主要考虑处于同一个局域网中的连接。
[0085] (2)目标模型
[0086] 通用目标模型框架是一个内容为空的架构,根据待保护的目标T向通用目标模型 框架中填入信息,就形成了目标模型。填入信息时可以选择部分实体。
[0087] 针对上述属性对的表达方式,目标模型建立简单来说就是从通用目标模型框架中 选取部分实体并进行属性对赋值的过程。例如对于某个文件的防护,选择表2所示的文件 实体,根据表2获得与保护文件相关的其他实体包括主机、子网、用户、软件等,从而得到了 与保护文件相关的所有实体,这些实体就是在网络攻击检测时需要重点关注的实体。当这 些实体上发生安全事件或出现安全事件影响时,属性对就将它们联系起来了。
[0088](二)利用目标模型所体现的关联关系,建立扩展影响树和安全影响图。
[0089] 在构建上述一树一图之前,先介绍一下几个定义:A目标,B子目标,C扩展目标,D 扩展子目标。
[0090]A目标:
[0091] 目标T是APT攻击检测系统要保护的对象,也是APT攻击获取攻击收益时最可能 的攻击对象,它可以是一个网络、一台主机、甚至一个具体的数据库等。图1是目标T的目 标模型的一个实例,包含一台交换机,一台主机,两台服务器和相应的文件、连接、应用及软 硬件设施等。目标模型的规模是可以变化的,大规模的目标可以进一步划分多个称之为子 目标(ST)。
[0092] B子目标:
[0093] 子目标ST定义为目标T的一个子部分,保护目标T可分解为多个子目标,子目标 还可以继续分解为更小的子目标。根据用户需求当不需要进一步划分了则分解终止。图1 中攻击目标可分为四个子目标:ST1、ST2、ST3和ST4。
[0094] C扩展目标:
[0095] 对于目标T,所有的设备、应用、社交角色等,及目标以外的实体都称之为外边的物 体。总有一些与目标相关联的物体,攻击者在攻击目标前很有可能攻击这些物体。这些相 关联的物体称之为扩展目标ET,它们也应该受到监视。扩展目标的范围根据需要来确定。 [0096] D扩展子目标
[0097] 扩展目标ET和目标在结构上很相似。也可以划分为多个子目标,这里成为扩展 子目标。图2为图1中目标、子目标、扩展目标和扩展子目标的关系图,可以看出,EOpEOy E03、E04是目标T的扩展目标。其中,每个扩展目标中都有它的子目标,例如EOi中的扩展子 目标是一部手机(Phone)。
[0098](三)计算安全事件与目标T之间的距离d和安全影响H。
[0099] 本发明衡量一个安全事件主要是通过安全事件距离目标的距离d、对目标的安全 影响H实现的。所以一个安全事件可以通过一个多维向量(d,H)定义,其中d可以包含1 个或多个子元素,H也可以包含1个或多个子元素。
[0100] 其中,距离d表示当安全事件SE发生后攻击者对攻击目标T的影响。攻击事件有 可能发生在目标上也可能发生在扩展目标上,两方面都要考虑。本发明根据扩展影响树来 计算距离d。攻击者距离子目标越近,则越有可能接近攻击目标。
[0101] 另外一方面,安全事件发生后,目标和子目标的安全属性会受到影响。而攻击者对 目标和子目标这种影响、危害被定义为安全影响H。针对安全影响H本发明采用安全影响图 进行计算。
[0102] (1)距离d的计算:
[0103] (I)构建扩展影响树。
[0104] 利用目标模型所体现的关联关系,建立扩展影响树。该扩展影响树采用树结构记 载了直接或间接访问到目标T的实体与目标T之间以及实体之间的关联关系。
[0105] 为了更加清晰的展示实体间关系,如图3所示,扩展影响树从上至下包括目标、子 目标、扩展目标、扩展子目标共4种层级,且所述目标、子目标、扩展目标、扩展子目标均为 实体;第一层级为目标T,第二层级为组成目标T的子目标子目标,根据子目标相互关系第 二层级包含至少1层;第三层级为扩展目标,是攻击者在攻击目标前很有可能攻击的目标; 第四层为组成扩展目标的扩展子目标,根据扩展子目标相互关系第四层级包含至少1层。
[0106] 在扩展影响树中,父节点与子节点之间具有权值w,表示子节点对父节点的影响大 小。同一父节点下各子节点的关系有"与"以及"或",通过子节点的与、或关系能够到达父节 点。如果两个子节点之间是相与的关系,则表示当且仅当这两个子节点全部实现才可能达 到父节点,如果两个子节点之间是相或的关系,则表示两个子节点当中有一个实现了就可 以达到父节点。树中通过权值表示子节点对父节点的影响程度,权值的取值范围为[0,1], 同一父节点下的子节点如果是相与的关系,则所有子节点的权值之和为1,同一父节点下的 子节点如果是相或的关系,则所有子节点的权值之和可以大于或等于1。如果某个父节点下 只有一个子节点,则二者之间的权值为1。
[0107] (II)距离表达
[0108] 本实施例中,优选地每个安全事件与目标T之间的距离采用三维距离d= (Pd,Cd, Ld)表达;其中,Ld必不可少,Pd和Cd可以根据需要选取,或者还可以加入其他的能够表达 距离的参数。
[0109] 其中,Pd为安全事件终端和目标T之间的物理距离,可由空间距离、安全距离、跳 数表示;通常来说空间距离和安全距离主要指事件联系类型的影响,例如人类信息窃取和 自然灾害,然而跳数和网络距离主要针对网络攻击事件定义的。空间距离指事件和目标实 体的物理空间距离。当物理空间距离增加,事件对实体的影响将减弱。安全设备例如权限 控制像位于安全事件和目标之间的一个障碍物。当权限控制阻挡在安全事件和目标之间, 安全距离被认为是无限大。跳数指目标和安全事件发生的地点之间设备的个数。网络攻击 受带宽、延迟、丢包率的影响。例如,拒绝服务攻击和带宽有很大关系,还和蠕虫传播速度、 网络连接环境有关。所以QoS是影响物理距离的一个重要因素。
[0110] Cd表示安全事件所处的攻击阶段;攻击过程通常包含五个阶段:信息采集、单点 突破、控制通道建立、横向渗透和攻击目标。根据安全事件类型可以识别出处于哪个阶段。 这五个阶段依次赋予数值,信息采集阶段的Cd值最大,攻击目标阶段的Cd值最小,未知攻 击过程Cd取中值。
[0111] Ld为安全事件终端和目标T之间的逻辑距离。本发明的逻辑距离主要指:可信主 机是否被入侵,目标网络是否被入侵,目标暴漏了多少信息等。逻辑距离Ld的值利用扩展 影响树的节点间关系和权值,从安全事件终端所在的层级向上推算直至目标T,最终获得安 全事件与目标T之间的逻辑距离Ld。
[0112]具体来说Ld的计算方式是:确定出安全事件终端属于扩展影响树中的哪一层,记 为第L层,计算安全事件终端与扩展影响树第L层中各节点的物理距离,记为Dis,以该物理 距离Dis为初始数据从扩展影响树的第L层开始,利用节点间关系和权值向上推算,获得每 一层节点的逻辑距离,直到目标T,从而计算出安全事件从逻辑距离的角度对目标T的影响 程度,即Ld。
[0113] (III)在推算过程中,已知从第n-1层节点的逻辑距离,推算第n层节点的逻辑距 离时:
[0114] 对于一个节点N,当其子节点的关系为"与"时,将各子节点的逻辑距离除以各自与 节点N间的权值后,再相加,即得到节点N的逻辑距离;当其子节点的关系为"或"时,将各 子节点的逻辑距离除以各自与节点N间的权值后,取最小值,即得到节点N的逻辑距离。
[0115] 表达式为:
[0116] 设子节点1和子节点2的关系为"与",如果安全事件到子节点1和子节点2的逻 辑距离分别为屯和d2,且子节点1到其父节点的权值为Wl,子节点2到其父节点的权值为 w2,则安全事件到该父节点的逻辑距离为: c/|cL
[0117] - + 一 w,w2
[0118] 设子节点1和子节点2的关系为"或",如果安全事件到子节点1和子节点2的逻 辑距离分别为屯和d2,且子节点1到其父节点的权值为Wl,子节点2到其父节点的权值为 w2,则安全事件到该父节点的逻辑距离为:
[0119]
[0120] (2)安全影响H的计算:
[0121] (I)构建安全影响图
[0122] 网络攻击往往是多步骤的,往往会通过先攻击中间目标来达到攻击保护目标的目 的。攻击受害者并不一定就是保护目标,因此需要解决的是如何将对直接攻击目标的影响 转换为对保护目标的影响。为此,本发明构建了安全影响图,该安全影响图根据扩展影响树 所涉及到的实体之间的攻击传播通道构建的,该安全影响图以节点和节点间连线的方式记 载了扩展影响树所涉及到的实体之间的攻击传播通道。最简单地,攻击传播通道可以采用 物理连通通道。安全影响图的示例参见下文示例中的图7、图8。
[0123] 安全影响图中,对于有主从关系(即具有父节点与子节点的关系)的节点对,节点 间权值沿用扩展影响树中的权值。对于没有主从关系的节点对,即没有在扩展影响树中找 到相关权值的节点对,采用节点对中的其中一个受到攻击时另外一个被攻击的可能性大小 作为权值。
[0124] 优选地,对于没有主从关系的节点对,本发明以安全事件对直接受害者的影响,加 入了传播性和递进性的考虑,采用下式计算节点间权值WPass,从而使得计算出来的权值不 仅能够体现相同攻击的传播和影响,还能够体现进一步攻击的传播和影响,实现全面地安 全影响计算。为了进一步提供传播性和递进性的重要性调节,进一步加入了重要性因子h 和k2,从而形成了下式的权值计算方案:
[0125] WPass=HorgX(k1Xb+k2Xad)
[0126] 其中,HOTg是安全事件针对直接受害者的危害,采用通用漏洞评分系统(CVSS)评 分标准获得;匕和k2为已知系数,可根据实际情况动态调整,其表达的是b和ad的重要性。 b是传播因子,ad是递进因子。
[0127] 传播因子描述在一个节点遭受攻击时,保护目标节点遭受同样攻击的可能性。例 如病毒在节点间传播,则传播因子由直接受害节点和保护目标节点的相似性以及两节点间 网络跳数决定:
[0128]b=Rs/ (2+ln(Dlogic))
[0129] 其中,艮为节点间相似性,取值空间[0, 1],相似性越高,数值越小;是否相似可以 从网段、操作系统、开启的服务、开启端口、漏洞信息等方面是否相似考虑,这些内容可从目 标模型获取;Dlogic为节点间物理距离,取值为大于等于1的正整数,Dlogic越大,相应的 安全影响值越小,为体现该衰减,将Dlogic取对数。
[0130] 递进因子ad描述在一个节点遭受攻击时,保护目标节点遭受以此为基础的进一 步攻击的可能。例如攻击者在取得直接受害节点权限后攻击邻近节点。递进因子依据攻击 图的描述进行计算:
[0131] ad=1/(1+Dag)
[0132]Dag为在安全领域的攻击图中保护目标节点与攻击直接受害节点相应的受攻击状 态之间的跳数。
[0133] 在实际中,也可以不加入重要性因子,认为传播性和递进性同等重要;或者只考虑 传播因子或递进因子。
[0134] 如果保护目标为简单的单个目标,通过上述的计算方法即可将安全事件与保护目 标之间的距离和影响计算出来,但如果是复杂的目标树,则根据子目标间的相与或相或关 系以及权值对距离和影响进行计算。
[0135] (II)每个安全事件对目标T的安全影响H的确定方式为:
[0136] 与扩展影响树类似,安全影响H也需要利用安全影响图的节点间关系和权值,从 安全事件终端所在的层级向上推算直至目标T,最终获得安全事件对目标T的安全影响H。
[0137] 具体来说,需要先根据安全事件终端所在位置简化安全影响图,简化方式是:删除 与安全事件终端不直接相连、也不在安全事件终端到目标T的路径上的节点;通过所述简 化获得安全事件终端到目标T可能经由的路径分支,采用CVSS评分标准确定安全事件终端 的安全影响,再以安全事件终端的安全影响为初始数据,利用节点间权值沿所述路径分支 向上推算,获得每一层的安全影响,直到目标T,从而计算出安全事件对目标T的安全影响 H〇
[0138] 其中,安全影响H可以为1维或多维,例如可以包括可用性、机密性和完整性,针对 每一维都可以采用CVSS评分标准获得上述路径分支最底层的安全事件终端在这一维的安 全影响。
[0139] 安全影响推算时,与逻辑距离相同,对于一个节点N,当其子节点的关系为"与"时, 将各子节点的安全影响乘以各自与节点N间的权值后,再相加,即得到节点N的安全影响; 当其子节点的关系为"或"时,将各子节点的安全影响乘以各自与节点N间的权值后,取最 大值,即得到节点N的安全影响。
[0140] 表达式为:
[0141] 设子节点1和子节点2的关系为"与",如果安全事件到子节点1和子节点2的安 全影响分别为仏和H2,且子节点1到其父节点的权值为Wl,子节点2到其父节点的权值为 w2,则安全事件到该父节点的安全影响为:
[0142] HjX?j+H;,X?2
[0143] 设子节点1和子节点2的关系为"或",如果安全事件到子节点1和子节点2的安 全影响分别为仏和H2,且子节点1到其父节点的权值为Wl,子节点2到其父节点的权值为 w2,则安全事件到该父节点的安全影响为:
[0144]max(H:Xco1;H2Xco2)
[0145] (4)根据各个安全事件的距离d和安全影响H进行攻击检测。
[0146] 由于距离d的值越小,目标T被攻击的可能性越大,安全影响H越大,目标T被攻 击的可能性越大。因此,最简单的方案就是将安全影响H映射为随攻击可能性增大而增大 的数值,将距离d和安全影响H的所有元素值相加,和值 越小,目标T被攻击的可能性越大。 可以设定一个阈值,当所述和值小于该阈值后,认为攻击发生。
[0147] 为了更加精确地实现攻击检测,可以采用聚类的方法,将各个安全事件的距离d 和安全影响H整合为多维向量,如果距离d采用(Pd,Cd,Ld),安全影响H包括可用性、机密 性和完整性,则整合结果为6维向量;然后对各个安全事件的6维向量进行聚类,每个聚类 中心到目标T的空间距离,空间距离最小的一类对应的安全事件即为发现的核心事件。接 着,将各核心事件的安全影响之和与报警阈值进行比较,如果大于报警阈值,则判定针对目 标T的攻击已经发生。
[0148] 其中,在计算空间距离时,可以将目标T的6维向量表示为(0,0,0, 1_,1_,1_) 其中,前3维的0表示距离为0,后三维的Imax,表示影响最大,Imax是CVSS评分标准中规定 的数据Imax=0.66。针对每个聚类,计算聚类中心的6维向量与(0,0,0,I_,1_,1_)的 空间距离,即可到聚类与目标T的距离。
[0149] 至此,本流程结束。
[0150] 示例
[0151] 下面通过一个实例演示本发明方法。该实验基于2011年RSA遭受黑客攻击为背 景。黑客通过向该公司一些员工发送邮件达到非法入侵的目的。该邮件的附近是一个名为 "2011recruitmentplan,xls"的文件。错误的拼写误导用户打开该附件。不幸的是至少有 一名员工打开,该附件被精心设计布置陷阱,包含一个恶意的Flash负载。该文件包含一个 Adobe零日漏洞,打开此文件后一个名叫Poisonivy的远端木马被下载到本台电脑。一旦 木马安装成功,黑客就可以开始窃取信息入侵RSA的网络设施。攻击场景如图4所示,一共 有四个局域网,攻击目标是位于核心局域网文件服务器HS1上的四份知识产权文件。这些文 件是该公司非常重要的资产,所以权限控制是异常严格的。位于局域网1和局域网2中的 员工只有在输入正确的用户口令才能把文件上传到文件服务器。只有三名员工有权利从文 件服务器下载文件。同时,这三名员工也必须正确输入用户口令。
[0152] 黑客通过社交工程技术搜集到一些用户邮箱,然后向攻击目标的此类用户发送钓 鱼邮件。
[0153]1) 一名名字为PE3J^员工读了此封邮件并打开了邮件中的附件。所以名字为 PoisnIvy的远程端木马程序即被下载到了此台电脑H3e上。
[0154] 2)木马在电脑H36和控制服务器之间建立通信通道,之后在控制服务器的遥控下 工作。
[0155] 3)木马程序很快在局域网3传播,在此期间黑客搜集了大量有关攻击目标的珍贵 信息。
[0156] 4)黑客再次发送又一轮钓鱼邮件,不幸的是一名名字为PE2d读了此封邮件也打开 了附件。木马程序也被下载到此台电脑H2d上。
[0157] 5)木马程序很快在局域网2传播,最终到达主机H2a。
[0158] 6)在监控主机PM2a-段时间后,黑客最终获取从服务器HS1下载文件的权利。
[0159] 7)主机H2a上的木马程序下载主机HS1上的目标文件并打包。加密过的文件将发 送到目标公司以外的一台黑客准备的FTP服务器上。
[0160]A建立一树一图
[0161] 本案例被保护的目标是如图所示的四份知识产权文件,每份文件都是一个子目 标。因为这些文件位于同一台电脑,在任何两份文件之间都有物理关联。目标文件之间的 关联关系如图5所示,其中的r%表示文件i与文件j之间存在关联关系。文件的属性如 表3所示:
[0162]
[0163]
[0164]表 3
[0165] 根据通用目标模型框架将图4所示的网络关系进行分析填入通用目标模型框架, 获得目标模型,基于目标模型所表示的关联关系,目标的扩展影响树如图6所示。目标T由 四份文件组成,每一份文件用子目标表示。对于每一个子目标,可以继续划分为四个子目 标。因为四个子目标的扩展是一样的,所以图6仅示出ST2的扩展。ST2和ET1/ET2/ET3/ ET4是管理关系,其中ET1是服务器管理角色,其他三个是客户机角色。针对每个扩展目标, 其扩展子目标由允许访问文件的用户的主机和账户组成,对于ET2,主机Hla和PMla的账户 AC(PMla)是其扩展子目标。由于必须采用AC(PMla)经由主机Hla访问文件才有效,因此二者 是与的关系,权值分别是0.5。
[0166] 进一步根据目标模型和建立的扩展影响树构建如图7所示的安全影响图。
[0167] 为了保护网络信息安全,一些主要的服务器例如HS1安装了主机入侵检测程序,每 个局域网都安装了网络入侵检测snort,每名员工的电脑都安装了赛门铁克的杀毒软件。这 些安全软件的日志文件还有员工考勤信息全部作为攻击检测系统的输入。假设在某个时 间,检测到了下列安全事件:
[0168]E3:主机^被攻击。
[0169]E4:主机H2a被攻击。
[0170]所以有了以下分析。
[0171] (1)计算安全事件E3、E4距离攻击目标T距离d。
[0172] 如上述叙述,距离是个三维向量:
[0173] 物理距离:本例中被攻击主机即安全事件终端为叶子节点,因此安全事件和扩展 影响树各叶子节点间的物理距离,可通过事件终端和叶子节点终端之间的网络跳数计算得 到。具体可以是,如果安全事件终端和某叶子节点在同一局域网,则它们之间的距离是〇 ; 如果安全事件终端和某叶子节点的终端在同一局域网,那么它们之间的距离是1 ;否则,它 们之间的距离是2n,n是安全事件终端和某叶子节点终端之间的网络跳数。
[0174] 安全事件所处的攻击阶段:是一种未知攻击过程Cd取中值5。
[0175] 逻辑距离:对于事件E3,每一个子目标的扩展影响树是一样的,所以安全事件E3 距离每一个子目标的距离是相同的。下面仅给出一个示例:
[0176] 计算E3的事件终端H2b到叶子节点HS1的距离:2
[0177] 计算E3的事件终端H2b到叶子节点AC(HS1)所在终端的距离:2
[0178] 计算E3的事件终端H2b到叶子节点Hla的距离:2
[0179] 计算E3的事件终端H2b到叶子节点AC(PMla)所在终端的距离:2
[0180] 计算E3的事件终端H2b到叶子节点Hlc;所在终端的距离:2
[0181] 计算E3的事件终端H2b到叶子节点AC(PMle)所在终端的距离:2
[0182] 计算E3的事件终端H2b到叶子节点H2a所在终端的距离:1
[0183] 计算E3的事件终端H2b到叶子节点AC(PM2a)所在终端的距离:1
[0184] 则根据扩展影响树上的权值关系,采用下式计算E3到目标T的逻辑距离d:
[0185] min(2/0. 5+2/0. 5, 2/0. 5+2/0. 5, 2/0. 5+2/0. 5, 1/0. 5+1/0. 5) = 4
[0186] 同理,对于事件E4:
[0187] 计算E4的事件终端H2a到叶子节点HS1的距离:2
[0188] 计算E4的事件终端H2a到叶子节点AC(HS1)所在终端的距离:2
[0189] 计算E4的事件终端H2a到叶子节点Hla的距离:2
[0190] 计算E4的事件终端H2a到叶子节点AC(PMla)所在终端的距离:2
[0191] 计算E4的事件终端H2a到叶子节点Hle所在终端的距离:2
[0192] 计算E4的事件终端H2a到叶子节点AC(PMle)所在终端的距离:2
[0193] 计算E4的事件终端H2a到叶子节点H2a所在终端的距离:0
[0194] 计算E4的事件终端H2a到叶子节点AC(PM2a)所在终端的距离:0
[0195]贝I」,根据扩展影响树上的权值关系,E4到目标T的逻辑距离d为:
[0196]min(2/0. 5+2/0. 5, 2/0. 5+2/0. 5, 2/0. 5+2/0. 5, 0/0. 5+0/0. 5) = 0
[0197] (2)计算安全事件E3、E4距离攻击目标T的安全影响H。
[0198] 在两个实体间存在三种关系:物理连接、逻辑连接和社交连接。本例鉴于简化安全 影响的计算,主要考虑后两者连接,对于物理连接,主要考虑处于同一个局域网中的连接。
[0199] 加入事件E3和E4后,安全影响图如图8所示。最上面的圆圈表示目标攻击,下部 左侧圆圈表示事件E3发生,下部右侧圆圈表示事件E4发生。主要考虑如下两方面因素进 行简化计算:
[0200] I:只考虑事件发生的直接影响效应。
[0201] II:忽略不在距离目标攻击路径上的节点。
[0202] 通过简化,删除与安全事件终端不直接相连、也不在安全事件终端到目标T的路 径上的节点,简化后的安全影响图,如图9所示。图9上部分的两图中删除与安全事件终端 不直接相连的节点后的结果,左为E3,右为E4;图9下部分的两图中删除不在安全事件终端 到目标T的路径上的节点后的结果,左为E3,右为E4。从图中可以看出,对于事件E3,需要 计算事件E3到H2b的安全影响,还要计算H2b到H2a的权值,H2a到AC(PM2a)的权值,因为它 们不属于具有主从关系的节点对,其他节点对之间的权值继承扩展影响树即可,然后就可 以根据事件E3到H2b的安全影响结合图9向上推算出事件E3到目标T的安全影响。
[0203] ?由于此种攻击是未知 的,认为对H2b的影响是最大的,因此事件E3到H2b的安全 影响I_(E3,H2b)采用CVSS评分标准获得为:
[0204] Ic〇n(E3,H2b) =Imax= 0. 66
[0205] ?计算到H2a的安全影响
[0206]
[0207]其中,表示H2b到H2a的节点间权值。由于在H%和H23之间只有 物理连接,所以认为当H2b受到攻击时对H2a影响是最大的,因此HOTg取最大值1,则 ,此处,心和1相似程度几乎一样,所以设置Rs= 0.8。由于 攻击类型未知,设置Dag= 0,设置kl=k2 = 0. 5,所以
[0213] 其中,表示H2a到AC(PM2a)的节点间权值。由于在H2a和AC(PM2a)之间 只有一条管理连接,所以设Rs= 0. 8。设置Dag= 0,设置kl=k2 = 0. 5,所以计算结果为WPiSS =0.8 rACiC>H2a.AC(PM2&)
[0214] ?利用安全影响图中的路径分支进行推算:
[0215] 对于安全事件E3:
[0216]
[0217] :0)
[0218]
[0219]
[0220] 上述四个公式中,%表示节点X和节点Y之间的权值。
[0221] 对于事件E4,不光计算H2a的安全影响,H2a到Hsi的安全影响,还要计算H2a到 AC(PM2a)的安全影响。
[0222] ?事件E4到H2a的安全影响I_(e4,H2a)采用CVSS评分标准获得为:
[0223] Icon(e4,H2a) =Imax= 0? 66
[0224] ?在主机H2a和AC(PM2a)之间有一个管理连接,所以设置影响系数为0.8。H2a和 HSl2间是服务关系,设置影响系数为0. 6,那么事件E4到Hsl和H2a的安全影响分别为:
[0225]

[0235] (3)聚类。聚类基于安全事件和攻击目标的距离d和安全影响H,由于事件E3、E4 距离攻击目标的距离有很小的差别,所以这两个事件属于同一个距离攻击目标最近的类。 当然在这个类中也可能存在其他事件。
[0236] (4)攻击判断。
[0237] 安全事件E3和安全事件E4对目标T的安全影响之和已经超过了阈值0.61_。故 可判断针对目标T的攻击已经发生。
[0238] 综上所述,本发明提出一种基于目标模型的网络攻击检测方法,描述了有可能成 为攻击目标的对象。根据内部关联和外部关联,保护目标可以分为子目标和扩展目标,根据 安全事件与保护目标的距离、安全事件对目标的安全影响,量化安全事件对目标的影响,从 而检测针对保护目标的网络攻击。
[0239] 以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发 明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围 之内。
【主权项】
1. 一种基于目标模型的网络攻击检测方法,其特征在于,包括: 步骤一、建立通用目标模型框架,通用目标模型框架中描述了可能成为网络攻击目标 的实体以及实体之间的关联关系;根据待保护的目标T向通用目标模型框架中填入信息, 形成目标模型;所述实体是物理的、虚拟的、逻辑的或社会的元素; 步骤二、利用目标模型所体现的关联关系,建立扩展影响树和安全影响图; 所述扩展影响树采用树结构记载了直接或间接访问到目标T的实体与目标T之间的 关联关系以及实体之间的关联关系;所述安全影响图以节点、节点间连线的方式记载了扩 展影响树所涉及到的实体之间的攻击传播通道;扩展影响树和安全影响图的节点间具有权 值,表示一个节点对另一个节点的影响大小,且对于具有父子关系的节点,同一父节点下各 子节点的关系有"与"以及"或"; 步骤三、针对检测到的每个安全事件,确定该安全事件与目标T之间的距离d和对目标 T的安全影响H ; 针对距离d,其组成元素至少包括安全事件终端和目标T之间的逻辑距离Ld ;逻辑距离 Ld的值利用扩展影响树的节点间关系和权值,从安全事件终端所在的层级向上推算,最终 获得安全事件与目标T之间的逻辑距离Ld ; 针对安全影响H,利用安全影响图的节点间关系和权值,从安全事件终端所在的层级向 上推算,获得安全事件对目标T的安全影响H ; 步骤四、根据各个安全事件的距离d和安全影响H进行攻击检测。2. 如权利要求1所述的方法,其特征在于,所述扩展影响树从上至下包括目标、子目 标、扩展目标、扩展子目标共4种层级;第一层级为目标T,第二层级为组成目标T的子目 标,根据子目标相互关系第二层级包含至少1层;第三层级为扩展目标,是攻击者在攻击目 标前很有可能攻击的目标;第四层为组成扩展目标的扩展子目标,根据扩展子目标相互关 系第四层级包含至少1层;所述目标、子目标、扩展目标、扩展子目标均为实体;父节点与 子节点之间具有权值,表示子节点对父节点的影响大小;同一父节点下各子节点的关系有 "与"以及"或"; 所述安全影响图根据扩展影响树所涉及到的实体之间的攻击传播通道构建;安全影响 图中的权值沿用扩展影响树中的权值,对于没有权值的节点对,采用节点对中的其中一个 受到攻击时另外一个被攻击的可能性大小作为权值; 所述步骤三具体包括两部分: (1) 计算每个安全事件与目标T之间的距离: Ld的计算方式是:确定出安全事件终端属于扩展影响树中的哪一层,记为第L层,计算 安全事件终端与扩展影响树第L层中各节点的物理距离,记为Dis,以该物理距离Dis为初 始数据从扩展影响树的第L层开始,利用节点间关系和权值向上推算,获得每一层的逻辑 距离,直到目标T,从而计算出安全事件从逻辑距离的角度对目标T的影响程度,即Ld ; (2) 计算每个安全事件对目标T的安全影响H : 简化安全影响图,简化方式是:删除与安全事件终端不直接相连、也不在安全事件终端 到目标T的路径上的节点;通过所述简化获得安全事件终端到目标T可能经由的路径分支, 以安全事件对安全事件终端的安全影响为初始数据,利用节点间权值沿所述路径分支向上 推算,获得每一层的安全影响,直到目标T,从而计算出安全事件对目标T的安全影响H。3. 如权利要求1所述的方法,其特征在于,步骤一中,所述关联关系包括物理连接、逻 辑连接和社交连接;所述逻辑连接为通信连接、服务连接或管理连接。4. 如权利要求2所述的方法,其特征在于,步骤二中,采用节点对中的其中一个受到攻 击时另外一个被攻击的可能性大小作为权值时,该权值采用下式计算: HorgX (Ic1X b+k2 X ad) 其中,Hots为安全事件对直接受害者的影响,采用CVSS评分标准获得;b为传播因子,描 述一个节点遭受攻击时目标T遭受同样攻击的可能性的;ad为递进因子,描述一个节点遭 受攻击时目标T遭受以此为基础的进一步攻击的可能性七和k 2分别为b和ad的重要性 系数。5. 如权利要求4所述的方法,其特征在于,传播因子b由直接受害节点和保护目标节点 的相似性,以及两节点间网络跳数决定: b = Rs/(2+ln(Dlogic)) 其中,&为节点间相似性,取值空间[〇, 1],相似性越高,数值越小;Dlogic为节点间物 理距离,取值为大于等于1的正整数。6. 如权利要求4所述的方法,其特征在于,递进因子ad由Dag决定; ad = I/(1+Dag) 其中,Dag为在安全领域的攻击图中保护目标节点与攻击直接受害节点相应的受攻击 状态之间的跳数。7. 如权利要求1所述的方法,其特征在于,所述距离d的组成元素进一步包括安全事件 终端和目标T之间的物理距离Pd和/或安全事件所处的攻击阶段Cd ; 针对攻击阶段Cd,将攻击过程分为多个阶段,为每个阶段赋予数值作为Cd的值,越接 近最后一个阶段,Cd的值越小。8. 如权利要求1所述的方法,其特征在于,步骤三在进行逻辑距离推算时,对于一个节 点N,当其子节点的关系为"与"时,将各子节点的逻辑距离除以各自与节点N间的权值后, 再相加,即得到节点N的逻辑距离;当其子节点的关系为"或"时,将各子节点的逻辑距离除 以各自与节点N间的权值后,取最小值,即得到节点N的逻辑距离。9. 如权利要求1所述的方法,其特征在于,步骤三在进行安全影响推算时,对于一个节 点N,当其子节点的关系为"与"时,将各子节点的安全影响乘以各自与节点N间的权值后, 再相加,即得到节点N的安全影响;当其子节点的关系为"或"时,将各子节点的安全影响乘 以各自与节点N间的权值后,取最大值,即得到节点N的安全影响。10. 如权利要求1所述的方法,其特征在于,所述步骤四为:将各个安全事件的距离d 和安全影响H整合为多维向量,然后对各个安全事件的多维向量进行聚类,距离目标T最近 的一类对应的安全事件即为发现的核心事件; 将各核心事件的安全影响之和与报警阈值进行比较,如果大于报警阈值,则判定针对 目标T的攻击已经发生。
【专利摘要】本发明公开了一种基于目标模型的网络攻击检测方法,能够获得发生在与目标有关联关系的实体上的安全事件对目标的影响,从而进行网络攻击检测。该方法利用目标模型所体现的关联关系,建立扩展影响树和安全影响图;然后针对检测到的每个安全事件,根据这一树一图通过从下至上的推算方式确定安全事件与目标T之间的距离d和对目标T的安全影响H;利用距离d和安全影响H实现网络攻击检测。
【IPC分类】H04L29/06
【公开号】CN104883356
【申请号】CN201510201729
【发明人】郑康锋, 伍淳华, 王秀娟
【申请人】北京邮电大学, 北京工业大学
【公开日】2015年9月2日
【申请日】2015年4月24日
转载请注明原文地址:https://www.famiwei.com/read-8136221.html

最新回复(0)