CN116582330A - 一种面向部分未知安全状态的工控网络自动防御决策方法 - Google Patents

一种面向部分未知安全状态的工控网络自动防御决策方法 Download PDF

Info

Publication number
CN116582330A
CN116582330A CN202310579947.1A CN202310579947A CN116582330A CN 116582330 A CN116582330 A CN 116582330A CN 202310579947 A CN202310579947 A CN 202310579947A CN 116582330 A CN116582330 A CN 116582330A
Authority
CN
China
Prior art keywords
state
network
attack
attack graph
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310579947.1A
Other languages
English (en)
Inventor
刘杨
马琦
刘红日
王佰玲
魏玉良
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Weihai Tianzhiwei Network Space Safety Technology Co ltd
Harbin Institute of Technology Weihai
Original Assignee
Weihai Tianzhiwei Network Space Safety Technology Co ltd
Harbin Institute of Technology Weihai
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Weihai Tianzhiwei Network Space Safety Technology Co ltd, Harbin Institute of Technology Weihai filed Critical Weihai Tianzhiwei Network Space Safety Technology Co ltd
Priority to CN202310579947.1A priority Critical patent/CN116582330A/zh
Publication of CN116582330A publication Critical patent/CN116582330A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • H04L63/205Network architectures or network communication protocols for network security for managing network security; network security policies in general involving negotiation or determination of the one or more network security mechanisms to be used, e.g. by negotiation between the client and the server or between peers or by selection according to the capabilities of the entities involved
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/092Reinforcement learning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Signal Processing (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computer And Data Communications (AREA)

Abstract

本申请属于工控网络安全技术领域,具体为一种面向部分未知安全状态的工控网络自动防御决策方法,包括生成攻击图步骤、动态攻击图状态估计步骤和动态防御决策步骤。本申请可以实现攻击图与真实环境的联动;解决了攻击者攻击存在隐蔽性导致的监测节点存在部分未知安全状态,可以估计节点状态;使用DQN算法,并且定义了基于工控网络的动作和奖励值,可以进行自动防御决策;实用范围为对工控系统适用场景下,面对部分设备未知安全状态的工控网络进行自动防御决策,为工控系统的安全提供技术保障,应用前景十分广泛。

Description

一种面向部分未知安全状态的工控网络自动防御决策方法
技术领域
本申请属于工控网络安全技术领域,更具体地说,是涉及一种面向部分未知安全状态的工控网络自动防御决策方法。
背景技术
随着网络技术的发展,工业控制系统(Industrial Control System,ICS)逐渐与互联网相连接,以实现远程监控和管理,这带来了更多的便利和效率,但同时增加了网络安全方面的风险。此外,ICS有较长的生命周期,由于实时性的要求,许多系统软件不容易进行更新,使得系统容易遭受到攻击。鉴于系统安全管理者的资源有限,通常只对关键设备进行监测。然而,某些攻击者的攻击行为较为隐蔽,这使得系统安全管理者无法清楚地获悉所有设备是否遭受了攻击。一旦ICS遭到破坏,将会给生产经营造成极大的损失,因此需要及时处理遭受的攻击。针对上述面向部分未知安全状态的工控网络,迫切需要提出一种可行的防御决策方法。目前,对工控网络安全进行分析的常见技术有以下三种:
攻击图:攻击图用于建模网络中的脆弱性利用关系,然后从攻击者视角出发,通过分析网络环境和漏洞信息,枚举全部攻击路径,直观地展示不同攻击步骤之间的因果关系,以及漏洞利用造成的潜在威胁。对于工控网络来说,网络环境通常是难以变化的,因此可以利用攻击图分析网络中的脆弱性。
部分马尔可夫决策过程:(Partially Observable Markov Decision Process,POMDP)是一种有限状态、马尔科夫决策过程的概率模型,能够解决具有不确定性的决策问题,可以用于评估网络攻击和防御行为,并执行防御策略。对于工控网络,由于攻击者的攻击存在隐蔽性,得到工控网络中部分设备的安全状态是未知的,因此可以将监测设备的状态变化过程建模为POMDP。通过分析攻击者在网络中的状态,实现对部分未知安全状态的工控网络的状态估计,更好地制定防御策略。
强化学习:强化学习(Reinforcement Learning,RL)是机器学习的一种分支,研究如何通过智能体与环境进行交互获得最优策略,实现特定的目标。在RL中,智能体通过观察环境状态,选择行动并根据奖励调整策略,以获得最大累积奖励。对于工控网络的防御决策,可以建模为RL过程。系统安全管理者需要根据攻击者当前在工控网络中的活动状态执行能够获得累积奖励最大的防御动作。
综上所述,攻击者的攻击可能是随时进行的,攻击图技术无法处理这种动态变化的攻击,这对实时性要求高的工控网络可能造成难以估量的损失。由于攻击者的攻击存在隐蔽性,得到工控网络中部分设备的安全状态是未知的,智能体只能观测到部分信息,无法直接观测到完整的状态信息。RL根据已知的信息和先前的经验进行决策,无法处理这种不完整的状态信息。目前的现有专利中,缺乏对于工控网络中防御动作的定义,没有有效的手段衡量防御动作的可用性。此外,还有一些专利结合RL和POMDP使得RL能够处理部分未知的安全状态,但是没有考虑到可以根据攻击图推测攻击者在工控网络中的真实活动状态。
申请内容
为实现上述目的,本申请采用的技术方案是:提供一种面向部分未知安全状态的工控网络自动防御决策方法,包括生成攻击图步骤、动态攻击图状态估计步骤和动态防御决策步骤;
所述生成攻击图步骤,根据网络拓扑信息、设备服务信息和漏洞信息,生成相应的攻击图;定义攻击图中的节点状态;
所述动态攻击图状态估计步骤,通过监测网络中设备状态,将静态的攻击图与动态的攻击者相联系,观测工控网络当前的受攻击情况,获取动态攻击图的观测信息;结合POMDP建模与循环神经网络,对动态攻击图的历史观测信息和防御动作进行建模,估计出动态攻击图中各节点的状态;
所述动态防御决策步骤,基于动态攻击图状态估计得到的状态,采用RL算法学习在不同状态下的防御动作,实现防御目的。
可选地,所述生成攻击图步骤包括信息收集、攻击路径分析和动态攻击图构建;
所述信息收集的收集方法如下:
首先,进行网络拓扑结构信息的收集;
其次,进行设备信息的收集;
最后,进行漏洞信息的收集。
可选地,所述攻击路径分析的分析方法如下:
步骤S101,确定攻击目标,根据已经收集到的网络拓扑结构信息、设备信息和漏洞信息,确定攻击目标;
步骤S102,确定攻击路径,根据攻击目标,确定攻击路径;
步骤S103,绘制攻击图,根据攻击目标和攻击路径绘制攻击图,攻击图用于表示攻击目标、攻击路径的信息。
可选地,所述动态攻击图构建用于对攻击图的中各节点进行状态定义,每个节点表示对应的设备是否被攻击;
动态攻击图构建的构建方法如下:
步骤S201,获取网络拓扑信息、设备服务信息和漏洞信息,建立攻击图;
步骤S202,按照预设的时间步t收集网络数据;
步骤S203,根据收集到的网络数据,确定网络中发生的攻击行为;
步骤S204,根据确定的攻击行为,修改步骤S103中得到攻击图,并且按照时间顺序展示攻击过程。
可选地,所述动态攻击图状态估计步骤包括POMDP建模和RNN隐藏信息获取;
POMDP建模的过程如下:
首先,定义状态空间S表示所有可能的状态;定义动作空间A表示智能体可执行的操作;定义观测空间Z表示智能体能够获得的关于现有状态的信息;定义状态转移函数T表示从状态s到状态s′的概率分布;定义观测函数O表示智能体得到的观测对应的概率分布;定义奖励函数R表示从状态s执行动作a到达状态s′时获取的奖励;定义智能体的初始状态;
然后,建立POMDP模型,POMDP模型用于描述动态攻击图的变化过程,使智能体能够做出决策π;
π:S×O→A,根据策略π:S×O→A,能够得到期望累积奖励:
其中,γ∈[0,1]是折扣因子,E表示取数学期望值,
使ht:=(O≤t,a<t)表示观测和动作的历史信息,根据历史信息、采用信念状态bt推断节点的状态分布,信念状态bt的分布为:
p(st|o≤t,a<t)
bt:=φ(h(t))是h(t)的函数,表示通过历史信息来估计节点的状态;
当学习到函数φ时,根据观测和动作的历史信息获取当前时刻动态攻击图的状态估计。
可选地,RNN隐藏信息获取的方法如下:
步骤S301,获取观测和动作的历史信息,包括历史观测值和历史动作值;
步骤S302,对于每个时间步t,将历史观测值和历史动作值转换为向量表示,然后通过RNN进行处理;
步骤S303,在RNN的最后一个时间步t,输出一个向量表示当前时刻动态攻击图的状态值的估计;
步骤S304,将输出向量传递给一个状态估计函数,将其映射到实际状态集合中的一个状态。
可选地,步骤S301中,当在时间步t获得动态攻击图的观测ot,并且执行防御动作at时,动态攻击图从当前状态st转移到下一个状态st+1,并生成新的观测ot+1;记录在每个时间步骤中采取的动作,以及执行该动作获得的观测,将获得动作和观测组成时间序列:
(o1,a1,o2,a2,...,ot-1,at-1,ot),
得到的时间序列信息作为观测和动作的历史信息;
步骤S302中,在时间步t,RNN的计算如公式(1)所示:
ht=f(Whhht-1+Wxhxt+bh) (1)
其中,ht是时间步t的隐藏状态,xt是输入数据,Whh和Wxh分别是隐藏状态和输入数据的权重矩阵,bh是隐藏状态的偏置项,f是激活函数。
可选地,所述动态防御决策步骤包括定义动作和奖励、训练防御策略;
所述定义动作和奖励,采用智能体来执行防御动作,当动态攻击图在时间步t的状态记为st,智能体在网络中执行动作at时,动作at改变动态攻击图中的状态并使得智能体在时刻t+1到达新的状态st+1,环境产生反馈奖励rt+1给智能体,智能体基于新的状态st+1和反馈奖励rt+1执行新的动作at+1,如此反复迭代地与环境进行交互,实现智能体累积奖励G;
累积奖励G为G=r1+r2+…+rn
可选地,状态st执行动作at,系统安全管理者收到效用值u,如公式(2)所示:
u(st,at)=r(st,at)-c(at) (2)
其中,r(st,at)是维护网络安全的回报,c(at)是执行动作at所导致的成本;r(st,at)如公式(3)所示:
r(s,a)=R-∑s=1[IC(i)+II(i)+IA(i)] (3)
R表示网络的基本安全等级,用一个常数来表示;IC(i),II(i)和IA(i)使用通用漏洞评估系统中的基础指标进行评估;s=1表示被攻击者攻击后,节点i的受到的影响,并且根据动作对服务的可用性影响定义c(a)。
可选地,所述训练防御策略采用深度Q网络训练防御策略,训练方法如下:
步骤S401,根据动态攻击图的规模,确定深度Q网络的输入维数;
步骤S402,建立深度Q网络,用于估计当前输入下采取每个动作获得的Q值;
步骤S403,深度Q网络采用ε贪心策略,用于平衡智能体在训练阶段对于新的策略的探索和已有经验的利用;
步骤S404,训练深度Q网络,训练数据由智能体和动态攻击图交互得到,包括状态、采取的动作、下一个状态和奖励信号;
步骤S405,深度Q网络包括行为网络和目标网络,在训练固定的步数C后,将行为网络的参数复制到目标网络中,以实现稳定的训练过程;
步骤S406,直到智能体训练得到的平均累积奖励不再发生变化,保存模型。
本申请提出了一种面向部分未知安全状态的工控网络自动防御决策方法,通过对工控网络建立攻击图,重新定义攻击图中节点的含义,构建动态攻击图;然后结合RNN网络与POMDP模型估计动态攻击图的真实状态,根据估计的真实状态利用DQN算法选择最优防御策略进行自动防御。具体的,具有以下有益效果:
(1)定义攻击图中节点,可以实现攻击图与真实环境的联动;
(2)解决了攻击者攻击存在隐蔽性导致的监测节点存在部分未知安全状态,可以估计节点状态;
(3)使用DQN算法,并且定义了基于工控网络的动作和奖励值,可以进行自动防御决策;
(4)实用范围为对工控系统适用场景下,面对部分设备未知安全状态的工控网络进行自动防御决策,为工控系统的安全提供技术保障,应用前景十分广泛。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请面向部分未知安全状态的工控网络自动防御决策方法的架构图;
图2为工控网络建模后的攻击图;
图3为动态攻击图的示意图;
图4为动态攻击图的状态估计示意图;
图5为深度Q网络(DQN)的训练示意图。
具体实施方式
为了使本申请所要解决的技术问题、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
现对本申请实施例提供的面向部分未知安全状态的工控网络自动防御决策方法进行说明。参见图1,一种面向部分未知安全状态的工控网络自动防御决策方法,首先,使用MulVAL工具,基于网络拓扑信息、设备服务信息和漏洞信息,生成了相应的攻击图;定义攻击图中的节点状态,分别为受攻击节点和未受攻击节点两种状态,通过不断监测网络中设备的状态,将静态的攻击图与动态的攻击者相联系,观测工控网络当前的受攻击情况,获取动态攻击图的观测信息;然后结合POMDP与循环神经网络(Recurrent Neural Network,RNN),对动态攻击图的历史观测信息和系统安全管理者采取的防御动作进行建模,估计出动态攻击图中各节点的真实状态。最后,基于估计得到的真实状态,使用RL算法不断学习在不同状态下的最佳防御动作,实现防御目的。
具体的,包括以下步骤:
生成攻击图步骤、动态攻击图状态估计步骤和动态防御决策步骤。
其中,生成攻击图步骤包括信息收集、攻击路径分析和动态攻击图构建。
进一步地,信息收集的收集方法如下:
首先,进行网络拓扑结构信息的收集。通过对网络结构进行分析和划分,可以得到网络的拓扑结构,包括各个设备之间的连接方式、网络子网等信息。这些信息是构建攻击图的基础,为后续的信息收集提供了基础数据。
可以使用扫描工具Nmap、Masscan等获取网络拓扑信息,包括主机IP地址、开放端口和服务等信息。
其次,进行设备信息的收集。在此步骤中,需要获取每个设备的操作系统、服务、运行的应用程序以及配置等信息,这些信息能够帮助攻击者识别系统中的弱点和漏洞。
最后,进行漏洞信息的收集。攻击者需要获取有关系统中已知漏洞的信息,以便于针对性地发起攻击。漏洞信息可以通过漏洞信息和漏洞扫描工具来收集。
使用漏洞扫描工具如Metasploit、Nessus、OpenVAS等,则可以自动扫描系统中的漏洞,并且使用这些收集到的漏洞信息用于生成攻击图,以便于更准确地模拟攻击者的行为。
进一步地,攻击路径分析的分析方法如下:
步骤S101,确定攻击目标:根据已经收集到的网络拓扑结构信息、设备信息和漏洞信息,确定攻击目标。例如特定的设备、网络或应用程序等;
步骤S102,确定攻击路径:通过分析系统的弱点和漏洞,根据攻击目标,确定攻击路径,即攻击者可能采取的方式,以达到攻击目的。
步骤S103,绘制攻击图:根据攻击目标和攻击路径,绘制攻击图。攻击图用于表示攻击目标、攻击路径等信息。
步骤S103中,攻击图可以使用攻击图生成工具生成,攻击图生成工具根据收集到的网络拓扑信息、设备信息和漏洞信息按照现有的推理规则,将攻击过程进行图形化展示。如MulVAL基于Nessus或OVAL等漏洞扫描器的漏洞扫描结果、网络节点的配置信息以及其他相关信息,使用Graphviz图片生成器绘制攻击图。CVE漏洞信息是指一个公开的漏洞信息库,用于标识和跟踪公开披露的计算机安全漏洞,每个漏洞被分配一个独特的标识符(CVEID),例如“CVE-2021-12345”。这个标识符可以在CVE漏洞信息的网站上进行搜索,以了解该漏洞的详细信息、影响范围、解决方法等。
参见图2,以工控网络中生成的攻击图为例进行说明。PC1,PC2,PC3是网络中的主机设备,Historian是历史数据库,SCADA1和SCADA2是数据采集与监视设备,EWS是工程师站,OWS是操作员站,PLC1和PLC2是控制设备。根据设备间的可达关系和设备的CVE漏洞信息,每个节点只展示了设备名称,绘制攻击图如下。
进一步地,攻击图中的节点表示攻击者的权限级别、设备的漏洞等攻击属性。根据各节点之间的依赖关系,绘制从攻击者到目标设备节点的攻击图。因为攻击图是静态的,无法动态分析网络的受攻击情况,所以采用动态攻击图构建方法为攻击图的中各节点进行状态定义,每个节点表示对应的设备是否被攻击。
动态攻击图构建的构建方法如下:
步骤S201,获取网络拓扑信息、设备服务信息和漏洞信息,建立攻击图;
步骤S202,按照一定的时间间隔收集网络数据,如网络中的流量信息,日志信息等;
步骤S203,根据收集到的网络数据,确定网络中发生的攻击行为;
步骤S204,根据确定的攻击行为,修改步骤S103中得到攻击图,并且按照时间顺序展示攻击过程;
其中,步骤S202至步骤S204,可循环重复进行。
通过将工控网络中的攻击行为与攻击图相联系,可以将攻击者的攻击映射到攻击图中,有利于分析攻击者的后续动作和目标。如图2和图3所示,在时间步t-1,攻击者破坏设备PC1和PC2,然后进一步地在时间步t和t+1破坏Historian数据库和SCADA1,下图详细展示了攻击者的进攻路线,有助于系统安全管理者进行防御决策。
动态攻击图状态估计步骤包括POMDP建模和RNN隐藏信息获取。
由于攻击者的攻击存在隐蔽性,部分攻击未能被系统安全管理者监测到,因此生成攻击图步骤中生成的动态攻击图可能无法展现网络的真实状态。为了描述这种观测到的状态与真实状态之间的差异,可以将动态攻击图的状态变化过程建模为POMDP。
进一步地,POMDP建模的过程如下:
在POMDP中,状态是未知的并且只能通过观测获得,定义状态空间S表示所有可能的状态;定义动作空间A表示智能体可执行的操作;定义观测空间Z表示智能体能够获得的关于现有状态的信息;定义状态转移函数T表示从状态s到状态s′的概率分布,这些概率是不完全已知的;定义观测函数O表示智能体得到的观测对应的概率分布;定义奖励函数R表示从状态s执行动作a到达状态s′时获取的奖励;最后,定义智能体的初始状态;
通过上面的步骤,成功建立起POMDP模型来描述动态攻击图的变化过程,从而让智能体在不完全信息的情况下做出决策;POMDP建模的目的是设计策略π:S×O→A,使得它能够最大化期望累积奖励:
其中,γ∈[0,1]是折扣因子,E表示取数学期望值。令ht:=(o≤t,a<t)表示观测和动作的历史信息,由于POMDP是部分可观测的,需要通过将历史信息和节点不可观测方面的不确定性结合起来,根据历史信息来推断节点的真实状态分布,采用信念状态bt,定义信念状态的分布为:
p(st|O≤t,a<t)
bt:=φ(h(t))是h(t)的函数,表示通过历史信息来估计节点的真实状态。当学习到函数φ时,就可以根据观测和动作的历史信息直接获取当前时刻环境的真实状态信息。
进一步地,RNN隐藏信息获取的方法如下:
步骤S301,获取观测和动作的历史信息,包括历史观测值和历史动作值;
当在时间步t获得动态攻击图的观测ot,并且执行防御动作at时,动态攻击图从当前状态st转移到下一个状态st+1,并生成新的观测Ot+1。记录在每个时间步骤中采取的动作,以及执行该动作获得的观测,将获得动作和观测组成时间序列:(o1,a1,o2,a2,...,ot-1,at-1,ot),得到的时间序列信息作为观测和动作的历史信息,然后将观测和动作的历史信息中的隐藏信息采用RNN进行学习。
步骤S302,对于每个时间步t,将历史观测值和历史动作值转换为向量表示,然后通过RNN进行处理;
RNN利用一个隐藏状态来记录和保存之前的信息,并在当前时间步骤中使用该信息,可以有效地捕捉数据中的长期依赖关系。它的核心是在时间步上共享参数,以便对序列中的任何位置使用相同的权重。在时间步t,RNN的计算公式(1)所示:
ht=f(Whhht-1+Wxhxt+bh) (1)
其中,ht是时间步t的隐藏状态,xt是输入数据,Whh和Wxh分别是隐藏状态和输入数据的权重矩阵,bh是隐藏状态的偏置项,f是激活函数。在RNN中,隐藏状态会在每个时间步t上被更新,以便传递过去的信息对后续时间步的计算产生影响。通过观测和动作的历史信息训练RNN网络,使得能够学习到φ来获取当前时刻动态攻击图的真实状态。
步骤S303,在RNN的最后一个时间步t,输出一个向量表示当前时刻动态攻击图的状态值的估计;
步骤S304,将输出向量传递给一个状态估计函数,将其映射到实际状态集合中的一个状态。
在使用RNN进行状态估计时,输出向量通常不能直接解释为实际状态,因此需要使用状态估计函数将其映射到实际状态集合中的一个真实状态。
以图4为例,图4中左侧为动态攻击图在时间步t的观测状态Ot,攻击者已经破坏设备PC1和Historian数据库,但是两台设备PC1和PC2并不是直接相连的。因此有设备被攻击者破坏,但是系统安全管理者未能监测到,通过使用RNN进行状态估计,可以得到如图4右侧所示的动态攻击图的真实状态st,攻击者还破坏了设备PC2。
动态防御决策步骤包括定义动作和奖励、训练防御策略。
进一步地,定义动作和奖励根据RNN得到动态攻击图在时间步t上的真实状态信息,系统安全管理者需要采取动作进行防御。本申请使用强化学习训练智能体来执行防御动作,当动态攻击图在时间步t的状态记为st,智能体在网络中执行动作at时,动作at改变了动态攻击图中的状态并使得智能体在时刻t+1到达新的状态st+1,环境产生了反馈奖励rt+1给智能体。智能体基于新的状态st+1和反馈奖励rt+1执行新的动作at+1,如此反复迭代地与环境进行交互,实现智能体最大化累积奖励G。
累积奖励G可以定义为G=r1+r2+...+rn
表1防御动作表
为了训练上述智能体,本申请定义了智能体能够执行的动作以及对应获得的奖励值。工控系统需要高可靠性和实时性,因此工控网络的防御手段需要考虑系统的实时性和稳定性,避免在防御过程中对系统造成影响。在表1中举例定义了部分动作名称以及其物理意义。
关闭远程访问可以防止攻击者进一步渗透网络,但可能会影响远程维护和故障排除。停止关键进程可以防止攻击者利用受感染设备来进一步攻击其他系统,但是,这可能会影响系统的可用性和可靠性。隔离设备可以防止攻击者继续控制设备,但需要权衡隔离可能带来的可靠性和可用性损失。空动作对于网络没有任何影响。为了量化不同状态下,网络防御动作的价值,需要为每一对防御动作和系统状态分配效用值,在执行防御动作后,可以获得一个效用值来量化动作的成本效益。智能体通过收到的效用值对执行的动作进行评估,并且指导智能体能够执行累积效用值最大的动作。
在状态St执行动作at,系统安全管理者收到效用值u,
u(st,at)=r(st,at)-c(at) (2)
其中r(st,at)是维护网络安全的回报,c(at)是执行动作at所导致的成本,例如隔离设备等。根据机密性、完整性和可用性影响(CIA)定义r(st,at),
r(s,a)=R-∑s=1[IC(i)+II(i)+IA(i)] (3)
R表示网络的基本安全等级,可以用一个常数来表示。IC(i,Ii(i)和IA(i)使用通用漏洞评估系统(Common Vulnerability Scoring System,CVSS)中的基础指标进行评估,s=1表示被攻击者攻击后,节点i的机密性、完整性和可用性受到的影响,并且根据动作对服务的可用性影响定义c(a)。为了表示网络保持安全的回报,从R中减去网络中受损节点总的影响得分。因此,r(s,a)值越大,表示网络越安全。
进一步地,训练防御策略采用深度Q网络(Deep Q-Network,DQN)来训练防御策略,解决动态攻击图状态空间较大的问题。具体训练方法如下:
步骤S401,根据动态攻击图的规模,确定深度Q网络(DQN)的输入维数;
步骤S402,建立深度Q网络(DQN),用于估计当前输入下采取每个动作获得的Q值;
步骤S404,深度Q网络(DQN)采用ε贪心策略,用于平衡智能体在训练阶段对于新的策略的探索和已有经验的利用,保证智能体能够发现新的状态和动作,防止智能体陷入局部最优解。
步骤S403,训练深度Q网络(DQN),训练数据由智能体和动态攻击图交互得到,包括状态、采取的动作、下一个状态和奖励信号;
步骤S405,深度Q网络(DQN)包括行为网络和目标网络,在训练固定的步数C后,需要将行为网络的参数复制到目标网络中,以实现稳定的训练过程。行为网络的作用是估计当前状态下所有可能动作的Q值,选取具有最大Q值的动作作为当前状态的行为,从而使得智能体能够学习到在当前状态下采取哪个动作可以获得最大的累积奖励。目标网络是行为网络的一个副本,用于计算目标Q值,降低更新过程中目标的波动性,保证了训练过程的稳定性,即保证目标Q值函数的稳定性,防止目标网络梯度下降的方向受到实时变化的干扰。
为了稳定训练过程,DQN还采用目标网络,这样可以保证目标Q值函数的稳定性,防止梯度下降的方向受到实时变化的干扰。
步骤S406,直到智能体训练得到的平均累积奖励不再发生变化,保存模型。
图5所示的深度Q网络(DQN),系统安全管理者可以基于动态攻击图的状态,选择Q值最高的防御动作执行,使得工控网络受到的影响最小。
本申请提出的面向部分未知安全状态的工控网络自动防御决策方法,结合了攻击图、RNN、POMDP和DQN等多个技术,能够实现对工控网络的实时防御。具体地说,通过对工控网络建立动态攻击图,将静态的攻击图与动态的攻击者相联系,能够观测到攻击者在工控网络中的活动情况,为系统安全管理者进行自动防御决策提供视野,并结合RNN与POMDP模型来估计动态攻击图的真实状态,根据估计得到的真实状态,选择最优防御策略进行自动防御。相比于传统的防御方法,本申请提出的方法能够更加全面地观测和评估工控网络中攻击者的活动情况,提高系统安全管理者的决策效率和准确度。同时,充分考虑了攻击者的动态性和工控网络中不完整信息的问题,能够在部分未知安全状态下对工控网络进行针对性的自动防御,在工控网络的自动防御方面具有较高的创新性和实用性,具有良好的应用前景。
本申请定义攻击图中节点,可以实现攻击图与真实环境的联动;解决了攻击者攻击存在隐蔽性导致的监测节点存在部分未知安全状态,可以估计节点状态;使用DQN算法,并且定义了基于工控网络的动作和奖励值,可以进行自动防御决策;实用范围为对工控系统适用场景下,面对部分设备未知安全状态的工控网络进行自动防御决策,为工控系统的安全提供技术保障,应用前景十分广泛。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本申请的保护范围之内。

Claims (10)

1.一种面向部分未知安全状态的工控网络自动防御决策方法,其特征在于:包括生成攻击图步骤、动态攻击图状态估计步骤和动态防御决策步骤;
所述生成攻击图步骤,根据网络拓扑信息、设备服务信息和漏洞信息,生成相应的攻击图;定义攻击图中的节点状态;
所述动态攻击图状态估计步骤,通过监测网络中设备状态,将静态的攻击图与动态的攻击者相联系,观测工控网络当前的受攻击情况,获取动态攻击图的观测信息;结合POMDP建模与循环神经网络,对动态攻击图的历史观测信息和防御动作进行建模,估计出动态攻击图中各节点的状态;
所述动态防御决策步骤,基于动态攻击图状态估计得到的状态,采用RL算法学习在不同状态下的防御动作,实现防御目的。
2.如权利要求1所述的一种面向部分未知安全状态的工控网络自动防御决策方法,其特征在于:所述生成攻击图步骤包括信息收集、攻击路径分析和动态攻击图构建;
所述信息收集的收集方法如下:
首先,进行网络拓扑结构信息的收集;
其次,进行设备信息的收集;
最后,进行漏洞信息的收集。
3.如权利要求2所述的一种面向部分未知安全状态的工控网络自动防御决策方法,其特征在于:所述攻击路径分析的分析方法如下:
步骤S101,确定攻击目标,根据已经收集到的网络拓扑结构信息、设备信息和漏洞信息,确定攻击目标;
步骤S102,确定攻击路径,根据攻击目标,确定攻击路径;
步骤S103,绘制攻击图,根据攻击目标和攻击路径绘制攻击图,攻击图用于表示攻击目标、攻击路径的信息。
4.如权利要求3所述的一种面向部分未知安全状态的工控网络自动防御决策方法,其特征在于:所述动态攻击图构建用于对攻击图的中各节点进行状态定义,每个节点表示对应的设备是否被攻击;
动态攻击图构建的构建方法如下:
步骤S201,获取网络拓扑信息、设备服务信息和漏洞信息,建立攻击图;
步骤S202,按照预设的时间步t收集网络数据;
步骤S203,根据收集到的网络数据,确定网络中发生的攻击行为;
步骤S204,根据确定的攻击行为,修改步骤S103中得到攻击图,并且按照时间顺序展示攻击过程。
5.如权利要求1所述的一种面向部分未知安全状态的工控网络自动防御决策方法,其特征在于:所述动态攻击图状态估计步骤包括POMDP建模和RNN隐藏信息获取;
POMDP建模的过程如下:
首先,定义状态空间S表示所有可能的状态;定义动作空间A表示智能体可执行的操作;定义观测空间Z表示智能体能够获得的关于现有状态的信息;定义状态转移函数T表示从状态s到状态s′的概率分布;定义观测函数O表示智能体得到的观测对应的概率分布;定义奖励函数R表示从状态s执行动作a到达状态s′时获取的奖励;定义智能体的初始状态;
然后,建立POMDP模型,POMDP模型用于描述动态攻击图的变化过程,使智能体能够做出决策π;
π:S×O→A,根据策略π:S×O→A,能够得到期望累积奖励:
其中,γ∈[0,1]是折扣因子,E表示取数学期望值,
使ht:=(o≤t,a<t)表示观测和动作的历史信息,根据历史信息、采用信念状态bt推断节点的状态分布,信念状态bt的分布为:
p(st|o≤t,a<t)
bt:=φ(h(t))是h(t)的函数,表示通过历史信息来估计节点的状态;
当学习到函数φ时,根据观测和动作的历史信息获取当前时刻动态攻击图的状态估计。
6.如权利要求5所述的一种面向部分未知安全状态的工控网络自动防御决策方法,其特征在于:
RNN隐藏信息获取的方法如下:
步骤S301,获取观测和动作的历史信息,包括历史观测值和历史动作值;
步骤S302,对于每个时间步t,将历史观测值和历史动作值转换为向量表示,然后通过RNN进行处理;
步骤S303,在RNN的最后一个时间步t,输出一个向量表示当前时刻动态攻击图的状态值的估计;
步骤S304,将输出向量传递给一个状态估计函数,将其映射到实际状态集合中的一个状态。
7.如权利要求6所述的一种面向部分未知安全状态的工控网络自动防御决策方法,其特征在于:
步骤S301中,当在时间步t获得动态攻击图的观测Ot,并且执行防御动作at时,动态攻击图从当前状态St转移到下一个状态St+1,并生成新的观测Ot+1;记录在每个时间步中采取的动作,以及执行该动作获得的观测,将获得动作和观测组成时间序列:
(o1,a1,o2,a2,...,ot-1,at-1,ot),
得到的时间序列信息作为观测和动作的历史信息;
步骤S302中,在时间步t,RNN的计算如公式(1)所示:
ht=f(Whhht-1+Wxhxt+bh) (1)
其中,ht是时间步t的隐藏状态,xt是输入数据,Whh和Wxh分别是隐藏状态和输入数据的权重矩阵,bh是隐藏状态的偏置项,f是激活函数。
8.如权利要求1所述的一种面向部分未知安全状态的工控网络自动防御决策方法,其特征在于:所述动态防御决策步骤包括定义动作和奖励、训练防御策略;
所述定义动作和奖励,采用智能体来执行防御动作,当动态攻击图在时间步t的状态记为St,智能体在网络中执行动作at时,动作at改变动态攻击图中的状态并使得智能体在时刻t+1到达新的状态St+1,环境产生反馈奖励rt+1给智能体,智能体基于新的状态St+1和反馈奖励rt+1执行新的动作at+1,如此反复迭代地与环境进行交互,实现智能体累积奖励G;
累积奖励G为G=r1+r2+...+rn
9.如权利要求8所述的一种面向部分未知安全状态的工控网络自动防御决策方法,其特征在于:
状态St执行动作at,系统安全管理者收到效用值u,如公式(2)所示:
u(st,at)=r(st,at)-c(at) (2)
其中,r(st,at)是维护网络安全的回报,c(at)是执行动作at所导致的成本;r(st,at)如公式(3)所示:
r(s,a)=R-∑s=1[IC(i)+II(i)+IA(i)] (3)
R表示网络的基本安全等级,用一个常数来表示;IC(i),II(i)和IA(i)使用通用漏洞评估系统中的基础指标进行评估;s=1表示被攻击者攻击后,节点i的受到的影响,并且根据动作对服务的可用性影响定义c(a)。
10.如权利要求9所述的一种面向部分未知安全状态的工控网络自动防御决策方法,其特征在于:所述训练防御策略采用深度Q网络训练防御策略,训练方法如下:
步骤S401,根据动态攻击图的规模,确定深度Q网络的输入维数;
步骤S402,建立深度Q网络,用于估计当前输入下采取每个动作获得的Q值;
步骤S403,深度Q网络采用ε贪心策略,用于平衡智能体在训练阶段对于新的策略的探索和已有经验的利用;
步骤S404,训练深度Q网络,训练数据由智能体和动态攻击图交互得到,包括状态、采取的动作、下一个状态和奖励信号;
步骤S405,深度Q网络包括行为网络和目标网络,在训练固定的步数C后,将行为网络的参数复制到目标网络中,以实现稳定的训练过程;
步骤S406,直到智能体训练得到的平均累积奖励不再发生变化,保存模型。
CN202310579947.1A 2023-05-19 2023-05-19 一种面向部分未知安全状态的工控网络自动防御决策方法 Pending CN116582330A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310579947.1A CN116582330A (zh) 2023-05-19 2023-05-19 一种面向部分未知安全状态的工控网络自动防御决策方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310579947.1A CN116582330A (zh) 2023-05-19 2023-05-19 一种面向部分未知安全状态的工控网络自动防御决策方法

Publications (1)

Publication Number Publication Date
CN116582330A true CN116582330A (zh) 2023-08-11

Family

ID=87539366

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310579947.1A Pending CN116582330A (zh) 2023-05-19 2023-05-19 一种面向部分未知安全状态的工控网络自动防御决策方法

Country Status (1)

Country Link
CN (1) CN116582330A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117113228A (zh) * 2023-10-19 2023-11-24 中国南方电网有限责任公司 一种基于深度学习的电力社会工程学攻击监测方法及系统

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117113228A (zh) * 2023-10-19 2023-11-24 中国南方电网有限责任公司 一种基于深度学习的电力社会工程学攻击监测方法及系统
CN117113228B (zh) * 2023-10-19 2023-12-29 中国南方电网有限责任公司 一种基于深度学习的电力社会工程学攻击监测方法及系统

Similar Documents

Publication Publication Date Title
US11120354B2 (en) System and method for aiding decision
Dhir et al. Prospective artificial intelligence approaches for active cyber defence
Qin et al. Association analysis-based cybersecurity risk assessment for industrial control systems
CN116582330A (zh) 一种面向部分未知安全状态的工控网络自动防御决策方法
US11586921B2 (en) Method for forecasting health status of distributed networks by artificial neural networks
Cho et al. Modeling and analysis of deception games based on hypergame theory
CN116582349A (zh) 基于网络攻击图的攻击路径预测模型生成方法及装置
Hammar et al. Learning near-optimal intrusion responses against dynamic attackers
CN117235742B (zh) 一种基于深度强化学习的智能化渗透测试方法与系统
Confido et al. Reinforcing penetration testing using AI
Şeker Use of Artificial Intelligence Techniques/Applications in Cyber Defense
Su et al. Ensuring trustworthiness in ioit/aiot: A phase-based approach
Hammar et al. A system for interactive examination of learned security policies
Luo et al. A fictitious play‐based response strategy for multistage intrusion defense systems
Sen et al. On holistic multi-step cyberattack detection via a graph-based correlation approach
Sahu et al. Inferring adversarial behaviour in cyber‐physical power systems using a Bayesian attack graph approach
Wang et al. DQfD‐AIPT: An Intelligent Penetration Testing Framework Incorporating Expert Demonstration Data
Mesadieu et al. Leveraging Deep Reinforcement Learning Technique for Intrusion Detection in SCADA Infrastructure
Liu et al. SEAG: A novel dynamic security risk assessment method for industrial control systems with consideration of social engineering
Ghanem Towards an efficient automation of network penetration testing using model-based reinforcement learning
CN113067726B (zh) 一种基于双逻辑层Agent的网络节点失效判定方法
CN117332923B (zh) 一种网状指标体系的赋权方法及系统
Chen et al. Q-learning based strategy analysis of cyber-physical systems considering unequal cost
Molina et al. Tackling Cyberattacks through AI-based Reactive Systems: A Holistic Review and Future Vision
CN113872924B (zh) 一种多智能体的动作决策方法、装置、设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination