1.一种基于攻击增益的攻击路径预测方法,其特征在于,所述攻击路径预测方法包括如下步骤:
步骤1、采用脆弱点扫描工具获取贝叶斯攻击图作为待评估网络;
步骤2、获取所述待评估网络中的所有资源节点R={rj|j=1,2,...,M}与所有攻击节点A={ai|i=1,2,...,N};资源节点包括作为网络攻击起始点的起始资源节点、作为网络攻击目标点的目标资源节点、网络路径上位于起始节点与目标节点之间的中间资源节点,攻击节点连接有一个以上的前驱资源节点与一个以上的后驱资源节点,起始资源节点后面连接有一个以上的攻击节点,目标资源节点前面连接有一个以上的攻击节点;其中,按照攻击顺序,设置在攻击节点前面且与攻击节点直接连接的资源节点作为前驱资源节点,设置在攻击节点后面且与攻击节点直接连接的资源节点作为后驱资源节点;设置在被攻击资源节点前面且与被攻击资源节点直接连接的攻击节点作为前驱攻击节点,设置在被攻击资源节点后面且与被攻击资源节点直接连接的攻击节点作为后驱攻击节点;M表示所有资源节点总数,N表示所有攻击节点总数,且M、N、i、j均为自然数;
步骤3、遍历整个待评估网络,获取从起始资源节点到目标资源节点的所有可能攻击路径;
步骤4、对于每条可能攻击路径上的每个资源节点,获取与该资源节点直连的各攻击节点对该资源节点的攻击增益与攻击时间,并对应生成每条可能攻击路径的初始攻击增益矩阵与攻击时间矩阵,进一步地,生成每条可能攻击路径的概率攻击增益矩阵;其中,攻击增益为攻击收入与攻击成本的差值;
步骤5、根据概率攻击增益矩阵消除可能攻击路径中冗余的攻击路径,得到攻击增益路径;
步骤6、遍历步骤5得到的攻击增益路径,按照路径概率攻击增益速率最大原则,确定出攻击增益路径中的最优增益路径。
2.根据权利要求1所述的基于攻击增益的攻击路径预测方法,其特征在于,所述初始攻击增益矩阵 其中,攻击
增益qij表示攻击节点ai对资源节点rj的攻击增益,且qij=grain(ai,rj)‑cost(ai,rj);当qij≤0时,表示攻击节点ai对资源节点rj的攻击行为不存在或无攻击增益;攻击增益矩阵的第i行与攻击节点ai对应,攻击增益矩阵的第j列与资源节点rj对应;grain(ai,rj)表示攻击节点ai对资源节点rj的攻击收入,cost(ai,rj)表示攻击节点ai对资源节点rj的攻击成本;
所述攻击时间矩阵 其中,tij表示攻击节点ai成功占有资源节点rj的攻击时间;当tij≤0时,表示攻击节点ai对资源节点rj的攻击行为不存在;攻击时间矩阵的第i行与攻击节点ai对应,攻击时间矩阵的第j列与资源节点rj对应;其中,
攻击收入grain(ai,rj)=wjβijuj,wj表示资源节点rj的资源价值,βij表示资源节点rj被攻击成功后攻击节点ai所获得的控制权限等级的权值,uj表示对资源节点rj的攻击收益影响系数;
攻击成本cost(ai,rj)=αij1Hij+αij2Sij;其中,Hij表示攻击节点ai对资源节点rj的攻击复杂度,Sij表示攻击节点ai对资源节点rj的攻击风险,αij1表示复杂度权值,αij2表示风险度权值,且αij1+αij2=1。
3.根据权利要求2所述的基于攻击增益的攻击路径预测方法,其特征在于,所述概率攻击增益矩阵为:
其中,概率攻击增益wij=ψ(ai,rj)×qij;当wij≤0时,表示攻击节点ai对资源节点rj的攻击行为不存在或无攻击增益;概率攻击增益矩阵的第i行与攻击节点ai对应,概率攻击增益矩阵的第j列与资源节点rj对应;ψ(ai,rj)表示攻击节点ai对资源节点rj的攻占概率。
4.根据权利要求3所述的基于攻击增益的攻击路径预测方法,其特征在于,所述攻占概率ψ(ai,rj)=P1(ai,rj)×P2(ai,rj)表示资源节点rj被攻击节点ai攻占的概率;其中,P1(ai,rj)表示攻击节点ai的前驱资源节点被攻占后攻击节点ai对资源节点rj发起攻击的概率,且P1(ai,rj)=P(γ(ai,rj)|Ω(Rj‑1));P2(ai,rj)表示攻击节点ai对资源节点rj成功占有的概率,且P2(ai,rj)=P(Ω(rj)|γ(ai,rj));γ(ai,rj)表示攻击节点ai对资源节点rj发起的攻击行为;Ω(Rj‑1)表示攻击节点ai的前驱资源节点被成功占有的行为,Ω(rj)表示攻击节点ai成功占有资源节点rj的行为;Rj‑1表示攻击节点ai的前驱资源节点集合,且Rj‑1={rj‑1,1,rj‑1,2,…,rj‑1,g},g为自然数;P(·|·)表示条件概率。
5.根据权利要求4所述的基于攻击增益的攻击路径预测方法,其特征在于,对于所述攻击节点ai的前驱资源节点集合Rj‑1={rj‑1,1,rj‑1,2,…,rj‑1,g},当g=1时,表明所述攻击节点ai的前驱资源节点只有一个,且Ω(Rj‑1)=Ω(rj‑1,1);当g>1时,表明所述攻击节点ai前面直连有一个以上具有“与”关系的前驱资源节点,且Ω(Rj‑1)=Ω(rj‑1,1)×Ω(rj‑1,2)×…×Ω(rj‑1,g)。
6.根据权利要求3、4或5所述的基于攻击增益的攻击路径预测方法,其特征在于,步骤5具体包括:
步骤51、对于步骤3得到的所述从起始资源节点到目标资源节点的所有可能攻击路径进行编号;
步骤52、按照可能攻击路径序号从小到大的顺序,判断各可能攻击路径是否冗余:根据当前可能攻击路径对应的概率攻击增益矩阵,如果其每列的概率攻击增益元素中有且只有一个概率攻击增益元素大于0,则表明当前可能攻击路径上不存在“与”关系,且该当前可能攻击路径不冗余;
根据当前可能攻击路径对应的概率攻击增益矩阵,如果其每列均存在一个以上的不等于0的概率攻击增益元素,则对于存在有两个以上的概率攻击增益元素不等于0的列而言,其在当前可能攻击路径上的对应资源节点存在具有“与”关系的两个以上的前驱攻击节点,该对应资源节点的概率攻击增益为该列各概率攻击增益元素之和:当每列各概率攻击增益元素之和大于0时,说明该当前可能攻击路径不冗余;否则,说明该当前可能攻击路径冗余;
根据当前可能攻击路径对应的概率攻击增益矩阵,如果其存在每个概率攻击增益元素均小于0或等于0的列,则表明该当前可能攻击路径冗余;
步骤53,删除冗余的攻击路径后,得到攻击增益路径。
7.根据权利要求6所述的基于攻击增益的攻击路径预测方法,其特征在于,所述最优增益路径获取方法,具体包括:
步骤61、对于步骤53得到的所有攻击增益路径,计算每条攻击增益路径的概率攻击增益速率 其中,PathW表示攻击增益路径的概率攻击增益,PathT表示攻击增益路径被攻击成功所花费的时间;
步骤62、从所有攻击增益路径的概率攻击增益速率中,找出概率攻击增益速率最大值;
步骤63、将该概率攻击增益速率最大值对应的攻击增益路径作为最优攻击路径。
8.根据权利要求7所述的基于攻击增益的攻击路径预测方法,其特征在于,步骤61中,计算所述攻击增益路径的概率攻击增益速率 具体为:如果攻击增益路径上没有“与”关系,则其中, 表示概率攻击增益
矩阵第k列所有元素之和; 表示攻击时间矩阵中的第k列所有攻击时间元素之和;x、k均为自然数;
如果攻击增益路径上存在“与”关系,则其中, 表示该攻击增益路径上
只有一个前驱攻击节点的资源节点在攻击时间矩阵中各对应列的攻击时间元素之和;
表示该攻击增益路径上具有两个以上前驱攻击节点的资源节点rd被攻击的攻击时间之和, 表示具有两个以上前驱攻击节点的资源节点rd被攻击时的最大同步攻击时间, 表示具有两个以上前驱攻击节点的资源节点rd被攻击时的异步攻击时间;s、d、E、F均为自然数,且E+F=M。