一种基于脆弱性描述攻击图的电力工控系统网络攻击评估方法与流程

文档序号:23664097发布日期:2021-01-15 14:02阅读:99来源:国知局
一种基于脆弱性描述攻击图的电力工控系统网络攻击评估方法与流程

本发明属于智能电网信息及设备安全技术领域,具体涉及一种基于脆弱性描述攻击图的电力工控系统网络攻击评估方法。



背景技术:

随着计算机技术、信息技术、大数据、人工智能和工业自动化技术的不断发展,传统工业控制系统和基础设施不断的智能化,信息技术被广泛的应用到工业控制领域,使得传统工业控制系统变得越来越开放,这给传统相对封闭的工业控制系统带来了全新的挑战。

电力工业控制系统是支撑发、输、变、配、用以及调度等各环节的电力生产运行控制不可或缺的组成部分,是国家关键基础设施的重要组成部分,不仅涵盖电力监控系统(包括调度、电厂、变电站、配电自动化系统),还涉及到用户侧及开放环境中的分布式电源、用电信息采集等系统,一旦遭受破坏,可能影响国家和社会安全。随着信息技术的深入应用以及国内外安全形式的发展变化,电力工控系统面临的安全威胁不容忽视。近年来世界范围内发生了多起由网络攻击发起的大停电事故,全方位提升电网的安全性能迫在眉睫。分析网络攻击在电力工控系统中的工作机理和攻击效果,可以为寻找工控系统脆弱点等工作提供研究基础,为网络安全管理人员进行有效的安全防御提供依据。

目前针对网络攻击的效果评估存在多种方法,大量工作的评估对象是计算机网络系统,工作主要集中于提出全面合理的评估指标和指标权重确定算法。例如王会梅等人在2009年的《通信学报》上发表《计算机网络攻击效果灰色评估模型和算法》,针对计算机网络,研究在复杂的网络环境下如何量化评估网络攻击效果,来检验攻击行为的有效性和网络系统的安全性。文章进行了评估指标选择和指标权重确定,选择的评估指标考虑信息的获取、篡改,服务的非法利用、拒绝,权限提升等因素,此类指标在针对计算机信息系统的网络攻击中应用较为广泛,但不能全面描述针对电力工控系统的攻击效果,且文章仅对单个攻击评估其效果,未考虑如何形成攻击链路及攻击链的攻击效果。

目前存在一些针对电力物理信息系统的安全评估方法,评估存在评估对象单一、未兼顾信息系统和物理信息、评估方法不通用等缺陷。

李晓静于2018年发表硕士论文《网络攻击对电力系统可靠性的影响及后果评价》,针对断路器无故障跳闸攻击和分布式拒绝服务攻击,使用模糊层次分析法得到网络攻击的评估指标,并构建攻击树模型,通过分析断路器连接的负荷和rtu在通信网络中的可观测性、可控性,评估网络攻击效果,分析网络攻击对电力系统可靠性的影响作用。该方法描述的评估指标和攻击树构建方法都与攻击场景密切相关,针对其他种类的电力工控攻击不适用。

发明专利cn201911127462.9公开了一种恶意攻击对信息物理电力系统影响的量化方法,通过量化系统各节点的漏洞,构建系统漏洞量化矩阵,分析攻击特点,构建攻击行为模型和攻击行为矩阵,并根据此构建攻击下的系统状态转移概率矩阵,计算成功攻击目标的概率,量化恶意攻击对信息物理电力系统的影响。该方法通过矩阵方式对攻击行为建模,与系统结构连接不够紧密,对攻击行为的描述不够具体化,且缺少网络攻击漏洞本身性能对攻击效果影响的分析。

发明专利cn201610389819.0公开了一种电力系统应对网络攻击脆弱性的评估方法,对针对通信系统的网络攻击成功概率进行评估,计算电力系统节点影响因子,采用广义随机petri网对电力通信网络进行建模,分析攻击在防火墙、密码等保护方式下的传播过程。该方法主要考虑网络攻击对通信网络的影响,直接由攻击对通信节点的影响计算攻击对系统稳定运行的影响,评估方法较为简单且评估对象单一,不能准确评估对电力工控系统的影响。

在攻击图方面,目前存在一些使用攻击图分析信息物理系统的方法,评估方法缺少对攻击图构建的详细描述,存在评估指标主观性强、方法针对具体系统、缺乏通用性等问题。

武文博等人在2016年的《计算机应用》上发表《基于攻击图的信息物理系统信息安全风险评估方法》,针对信息物理系统,考虑信息网络中的主机拓扑和计算机漏洞,在假设已有攻击图情况下,根据漏洞评分、漏洞发现时间、漏洞利用次数计算单步攻击的难度,通过给定经济损失、人员伤亡、环境破坏等评分,计算攻击的收益。本方法使用的多个影响因素和影响因子的作用集成采用乘积的方式,由于各乘数都小于1,得到的因子数过小,区分单步攻击难度的效果较差,且各因素的乘积关系不能准确刻画评估因子之间的关系。总体来说,评估使用的指标不够详实且量化值较为主观。

王宇飞等人在2016年的《中国电机工程学报》上发表《基于改进攻击图的电力信息物理系统跨空间连锁故障危害评估》,针对电力信息物理系统,评估跨空间的连锁故障危害性,文章在假设已有攻击图的情况下,设定单步攻击为各类攻击在物理设备层面上的攻击结果,使用的脆弱性参数来源于电力系统运行状态处于稳态的概率。该方法利用攻击图计算邻接矩阵,计算攻击图中各个路径成功的概率,用于评估连锁攻击的危害性。该方法未考虑网络攻击漏洞本身性能对信息物理系统的影响,且仅利用电力系统处于稳态的概率来评估攻击的危害,评估因素过于单一。



技术实现要素:

本发明针对现有技术存在的问题,提出了一种基于脆弱性描述攻击图的电力工控系统网络攻击评估方法。方法从网络攻击使用漏洞的性能效果出发,通过特征提取获取漏洞的攻击目标设备、设备功能、攻击作用效果等信息,对漏洞进行分类和聚类。通过分析电力工控系统结构,构建系统网络连接拓扑和系统组件集合。系统组件集合中的组件基本信息、漏洞信息、权限状态构成状态集合,依据网络连接拓扑利用状态集合构造基于状态的攻击图,根据状态集合中组件价值和漏洞信息,计算攻击图中攻击路径的可行性和收益,完成对电力工控系统网络攻击的效果评估。

本发明是通过以下技术方案得以实现的:

一种基于脆弱性描述攻击图的电力工控系统网络攻击评估方法,包括以下步骤:

步骤s01,利用网络爬虫,从漏洞库中收集漏洞基本信息和漏洞描述,形成原始攻击案例;

步骤s02,对原始攻击案例进行清洗、分类与聚类,形成攻击样本;

步骤s03,构建系统网络连接拓扑:

选择目标攻击系统,根据目标攻击系统的业务流程和物理分布构建系统网络连接拓扑,确定系统中包含的设备、设备之间的通信连接和通信方向,得到设备两两之间通信关系的矩阵表达;

步骤s04,构建网络连接权限拓扑:

根据步骤s03所述的系统网络连接拓扑,获取设备间传输信息需要的权限,得到设备两两之间的通信所需最低权限的矩阵表达;

步骤s05,构建电力工控系统组件集合,其中每一个电力工控系统组件由工控设备的固有属性和设备编号构成,所述的固有属性包括设备漏洞、设备功能和设备资产价值,所述的设备漏洞由步骤s02得到;

步骤s06,构建系统状态集合,其中每一个系统状态由步骤s05构建的系统组件和攻击权限构成,表示攻击者所处的设备位置和拥有的设备权限;

步骤s07,构造基于状态的攻击图,所述攻击图由系统状态集合、攻击接入状态集合、攻击目标状态集合、状态迁移关系、攻击起始状态集合和攻击结束状态集合组成;

所述的系统状态集合由步骤s06获得;所述的攻击接入状态集合为攻击场景选定攻击的接入点对应的攻击设备的初始状态;所述的攻击目标状态集合包括系统组件为一次设备、攻击权限为修改配置或更改状态,以及系统组件为控制设备、攻击权限为发送指令或执行代码状态;所述的状态迁移关系为攻击过程中状态之间的转换关系,用于构成攻击图的边;所述攻击起始状态集合和攻击结束状态集合分别由所述状态迁移关系中已有的起始状态和结束状态构成;

步骤s08,根据步骤s07输出的攻击图构造攻击路径,结合步骤s06输出的系统状态集合计算单步攻击路径的可行性、完整攻击路径的可行性和收益,完成电力工控系统网络攻击的评估。

本发明具有以下有益效果:

(1)本发明针对电力工控系统,方法综合考虑了网络攻击所使用漏洞的性能特征和电力工控系统组件的物理功能,发明内容包括攻击所用漏洞信息的收集和处理方法、攻击图的构建方法、攻击路径的可行性和效果分析方法,区别于目前现有的攻击分析和攻击效果评估工作,本发明提出发方法适用于电力工控系统下的多种场景,具有更好的适用性,与针对计算网络系统的工作有所区分,与针对通信网络的工作有所区分,与针对电力系统的断路器无故障跳闸攻击、分布式拒绝服务攻击等单场景的工作有所区分。

(2)本发明使用了更为直观的攻击图表示了攻击的过程,攻击图在计算机工具的帮助下很容易实现可视化。本发明通过分析电力工控系统结构,构建系统网络连接拓扑和系统组件集合,系统组件集合中的组件基本信息、漏洞信息、权限状态构成状态集合,依据网络连接拓扑利用状态集合构造基于状态的攻击图,因此本发明所用攻击图含有较多信息,对攻击行为的描述更为具体化。本发明使用攻击图表示攻击链路,根据状态集合中组件价值和漏洞信息,分析多步攻击路径,区别于分析单步攻击的效果评估指标和评估算法的工作;此外,本发明的攻击图构造算法基于单调性假设,攻击步骤不会进行回溯,攻击图中不出现循环路径,此假设可提升算法的效率、降低攻击图的复杂度、减小攻击图规模,单调性假设通过判断节点是否重复、重复节点权限是否上升实现。

(3)本发明使用的评估指标多样化且客观性、通用性较强,指标的评价对象包括用于工控系统网络攻击的漏洞和电力工控系统中的一次、二次物理设备,涉及电力工控系统的多个层面,兼顾信息系统和物理系统;本发明利用信息层面网络攻击漏洞的特征,分析其对物理设备的影响作用,从网络攻击利用漏洞的角度评估攻击的难度,从物理设备性能和功能的角度评估攻击的收益;本发明提出的评估指标与攻击场景相关性弱,适用于电力工控系统下的多种攻击场景,指标中需要专家评定指定权重的值较少,避免了评估指标主观性强的问题。

附图说明

图1为本发明一种基于脆弱性描述攻击图的电力工控系统网络攻击评估方法的流程框图;

图2为本发明一种基于攻击图的电力工控系统网络攻击机理分析中典型的系统网络连接拓扑示意图;

图3为本发明一种基于攻击图的电力工控系统网络攻击机理分析中构造的典型攻击图和攻击图构造步骤。

具体实施方式

以下是本发明的具体实施例并结合附图,对本发明的技术方案作进一步的描述,但本发明并不限于这些实施例。

如图1,本发明一种基于脆弱性描述攻击图的电力工控系统网络攻击评估方法,方法包括:

步骤s01,收集原始攻击案例。通过网络爬虫,在国家信息安全漏洞库、cert工业互联网漏洞库等漏洞库中收集漏洞基本信息和漏洞描述,包括cnvd、cve、icsa等漏洞编号,cvss漏洞评估分数、cvss漏洞可利用性评估结果、cvss漏洞影响指标,漏洞影响设备种类、设备厂家、设备型号,漏洞可能导致的攻击后果,漏洞公开日期、收录日期、更新日期,厂家补丁信息、漏洞解决方案,形成原始攻击案例。

步骤s02,对原始攻击案例进行清洗、分类。根据步骤s01收集的原始攻击案例,案例形式为文字描述且漏洞数量有限,均为无标识数据,分类可依据分词结果中的字或词与特征词匹配进行。采用基于文本的分类方法,使用训练集进行文本预处理、特征提取、文档建模,用向量化方法形式化的描述漏洞,根据向量的组成和结构对数据进行清洗、分类与聚类,形成攻击样本。

此处可根据具体的攻击案例描述文字形式采用字符串匹配、机器学习等方法,参考机器学习中基于文本的分类思想,文本分类一般步骤包括使用训练集进行文本预处理、特征提取、文档建模、分类器训练。考虑到可爬取的文字性漏洞数量有限,均为无标识数据,分类所依据的特征可由字或词表述,在此选用无需训练机器学习分类器的方法。

步骤s02具体包括:

步骤s21,文本分词,在文本中提取关键词,对于中文内容采用基于统计的分词模型,使用基于hmm2-trigram字符序列标注的中文分词器;对于英文,根据空格和标点符号来分词,对分词后的单词进行词干还原和词形还原。

步骤s22,文本分词处理,统计分词结果的词频数据,去除限定词、介词、人称等停用词。

步骤s23,文本表示,采用布尔模型和向量空间模型结合的形式,通过分析电力工控系统的系统组件、网络攻击的常用方法和后果,结合步骤s22中的词频数据统计数据,构建表示攻击对象、攻击方法和攻击后果的布尔表达式集合,元素个数为d。在每一条攻击案例的文本分词中依次匹配集合中的布尔表达式,匹配成功得分为1,否则为0,所有得分依次排序构成d维的0-1向量。即每条攻击案例均可用d维的0-1向量表示。

步骤s24,数据清洗,s23中构建的布尔表达式集合描述了典型的电力工控系统网络攻击特征,特征分为攻击对象、攻击方法、攻击后果三个部分,向量依此划分为三部分。在攻击案例向量中查询元素‘1’,若向量中存在某一部分为全0,则此向量为非典型攻击,从攻击案例中移除,依此查询每个攻击案例向量,完成数据清洗,最终形成向量化的攻击预样本。

步骤s25,分类与聚类,依据s23中布尔表达式集合的内容,分别对攻击对象、攻击方法、攻击后果三种特征制定分类规则:

攻击对象可分类为:信息管理系统,服务器,上位机,操作员界面,操作系统,scada系统,工控软件,网络安全隔离装置,通信网络,网络通信设备,现场数据采集、状态监测、控制设备,现场故障诊断设备共12类;

攻击方法可分类为通过改变权限、欺骗权限认证机制、绕过身份认证机制、利用权限认证机制错误进行非法访问,拒绝服务,利用加密漏洞、弱密码机制、密保问题漏洞、数据不加密漏洞,执行非法指令、进行非法控制,非法获取信息和数据、改变信息和数据进行攻击,网页非法请求、网页非法访问,缓冲区溢出、参数注入、内存破坏、越界读取等程序内利用型漏洞共7类;

攻击后果可分为拒绝服务、系统崩溃、设备处于故障模式、无法执行控制等破坏设备系统可用性的后果,写入文件、修改寄存器值、删除文件、注入代码、修改固件等破坏设备系统完整性的后果,获取敏感信息、访问目录文件、读取文件、泄露加密数据等等破坏设备系统保密性的后果共3类。

规则数量分别为c1=12,c2=7,c3=3,c1+c2+c3=22=c<d,依据分类规则简化向量化攻击预样本,由d维向量降至c维向量,完成攻击预样本的分类与聚类,形成攻击样本。

步骤s03,构建系统网络连接拓扑。选择电力工控系统或其中配电子站、变电站等子系统作为目标攻击系统,根据系统的业务流程和物理分布构建网络连接拓扑,确定系统中包含的设备、设备之间的通信连接和通信方向,统计系统包含的设备数量,计为n。网络拓扑由n×n的矩阵c描述,当信息可从设备m传输到设备n,不可从设备n传输到设备m时,c(m,n)=1,c(n,m)=0,以此类推,描述设备间两两间的通信关系。

步骤s04,构建网络连接权限拓扑。当步骤s04描述的拓扑c存在c(m,n)=1时,设备m和n间存在网络连接关系,但用户通过设备m向设备n传输信息还需要拥有在设备m处的权限,传输不同信息所需的权限不同,将用户可以通过m影响n时,在m处的最低权限组成n×n的矩阵cp,作为网络连接权限拓扑。攻击者在设备处拥有的权限可以分为8类,权限编号和内容如下:

如图2,本发明一种基于攻击图的电力工控系统网络攻击机理分析中典型的系统网络连接拓扑示意图,拓扑是对变电站设备状态监控系统的简化描述,图中实线为现场设备的实际物理连接,虚线为通信连接关系和通信方向,圆圈内数字为设备编号,此处选取设备编号1-7的设备为例展示后续具体计算步骤与结果。选择的子系统包含的设备数量n=7,根据步骤s03,系统网络连接拓扑由n×n的矩阵c描述,矩阵c为:

根据步骤s04,最低权限组成n×n的矩阵cp描述,矩阵c内为0的元素,矩阵cp内对应值为空,矩阵cp为:

步骤s05,构建电力工控系统组件集合。分析攻击目标,,组件集合共有n个元素,单个组件元素包含工控设备的固有属性和编号,固有属性包括设备漏洞、设备功能、设备资产价值。

系统组件表示为:h=(devid,func,vuls,value);

所述步骤s05具体包括:

步骤s51,设备编号devid,在网络连接拓扑中为目标系统的每个设备进行编号,设备和编号一一对应。依据图2中的网络连接拓扑,设备编号devid分别为01-07。

步骤s52,设备功能func,根据步骤s25中攻击对象的分类规则,电力工控组件可被分为c1类,每一类对应一项编号,此处func为编号devid的设备对应的设备种类编号。

在本发明的一项具体实施中,作为攻击对象的电力工控组件可分为信息管理系统,服务器,上位机,操作员界面,操作系统,scada系统,工控软件,网络安全隔离装置,通信网络,网络通信设备,现场数据采集、状态监测、控制设备,现场故障诊断设备共12类,加上电力系统一次设备,共13类,每一类对应一项编号,分别编号为01-13。依据图2中的网络连接拓扑,设备功能func分别为04,02,11,11,11,13,13。

步骤s53,设备所含漏洞vuls,根据步骤s25中攻击方法的分类规则,设备漏洞可被分为c2类,每一类对应一项编号,此处vuls包含种类是func的设备对应的漏洞种类编号type。根据步骤s25中攻击后果的分类规则,设备攻击后果可被分为c3类,每一类对应一项编号,此处vuls包含种类是func的设备对应的漏洞导致的攻击后果编号result。

在本发明的一项具体实施中,设备漏洞可被分为非法访问类,拒绝服务类,加密密码类,非法控制类,信息数据类,非法网页请求类,程序内利用型漏洞共7类,每一类对应一项编号,vuls的type值分别编号为01-07。根据步骤s25中攻击后果的分类规则,设备攻击后果可被分为破坏可用性,破坏完整性,破坏保密性共3类,每一类对应一项编号,vuls的result值分别编号为01-03。

依据攻击样本,一种设备可能拥有多种漏洞和多种攻击后果,故vuls为一二元数组的集合。

设备所含漏洞表示为:vuls={vuls1,vuls2…vulsv},vulsi=(typei,resulti);

查询步骤s02生成的攻击样本,依据图2中的网络连接拓扑,选取漏洞:

设备所含漏洞vuls分别为

{(01,02)},{(01,01),(01,02),(01,03)},{(04,01),(04,02),(04,03)},

{(03,01),(03,02)},{(07,03)},{()},{()}。

步骤s54,设备资产价值value,设备的资产价值表示设备对网络攻击者的吸引力,与设备中的数据的信息价值、设备涉及的功能及其所能影响的负荷的重要程度有关。数据的信息价值越大、设备承担的功能对系统正常运行越重要、设备所能影响的负荷的重要性等级越高,则设备越有可能受到网络攻击的威胁,即设备的资产价值越高。设备的资产价值由负荷因子w,故障影响因子u,权限影响因子a组成。

设备i的资产价值的计算方法为:valuei=wi×ui×ai×w;

其中负荷因子体现设备所影响的系统负荷,其计算方法为:

sload,i是设备i相关的所有负荷,ll是负荷l的大小,dl是负荷l的供电优先级别,供电优先级别体现负荷的重要性,与中断对它的供电后在政治、经济上所造成的损失或影响有关,可以分为{1,2,3,4,5}五个级别,ltotal是目标系统总的负荷水平。

其中故障影响因子ui体现设备对负荷的影响方式,其赋值方法为:设备i若是一次设备,例如发电机、变压器、断路器,直接影响系统负荷,ui=1;设备i若是二次设备,例如设备监测平台、局部放电监测单元、电压电流互感器、rtu,ui的值依据设备维护系统正常运行的能力确定,例如监测单元的维稳能力可取决于一个月或一年内监测到异常数据的次数和异常数据影响的负荷大小,根据能力给ui赋[0,1]区间内的权值。

其中权限影响因子ai体现设备自身功能,设备功能可以由设备所拥有的权限体现,例如获取数据、上传文件、修改配置、执行代码等,不同权限导致不同的攻击后果,攻击后果可用保密性、完整性、可用性三种特性来评价,三种特性受影响的程度可量化为(0,1)区间内的权值mc,mi,ma,若设备为现场一次设备,则mc=无,mi=高,ma=高。

权限影响因子的计算方法为:

一台设备可能拥有多个漏洞导致多个权限,每种权限拥有对应的mc,mi,ma,式中max{mc}为所有权限中对应最高的mc,其余类似;式中ac,ai,aa分别为三种特性的权重。

其中w为不小于1的常数,使资产价值的中位数在(0,10)区间内浮动。

依据图2中的网络连接拓扑,查询步骤s02生成的攻击样本,设定操作员界面与5台服务器相连,每台服务器控制10台一次设备相关的二次设备,每台一次设备承担相同负荷;设定故障影响因子ui分别为0.05,0.1,0.5,0.1,0.5,1,1;设定w=5;查询步骤s02中攻击样本的cvss漏洞影响指标,对保密性、完整性、可用性的定性评价无、普通、高分别定量为0,0.7,1,ac,ai,aa分别定量为0.2,1,0.7;由于此处每个设备仅选取一个漏洞,权限评分取最大值直接使用该漏洞的评分,设备的权限影响因子分别为:

设备资产价值分别为:

value1=50×0.05×0.6833×5=8.5413

value2=10×0.1×0.7429×5=3.7145

value3=1×0.5×0.7429×5=1.8573

value4=1×0.1×0.6894×5=0.3447

value5=1×0.5×0.2229×5=0.5573

value6=1×1×0.6993×5=3.4965

value7=1×1×0.6993×5=3.4965

步骤s06,构建系统状态集合。系统状态为攻击图的基本组成元素,表示攻击者所处的设备位置和拥有的设备权限,所以单个系统状态由系统组件和攻击权限组成。

系统状态表示为:

s=(h,per)=((devid,func,vuls,value),{per1,per2…perp})

其中per为攻击者目前在设备devid处拥有的权限,攻击权限包括获取数据、上传文件、修改配置、执行代码等,根据工控系统运行原理,攻击权限可设置成有限种,数量为p,某个状态的攻击权限以集合形式展示,集合元素数量为p,p<p。

在本申请的一项具体实施中,攻击权限编号及内容见步骤s04,数量为p=8,某个状态的攻击权限以集合形式展示,集合元素数量为p,p<p。在攻击图构造之前,状态集合内除攻击接入点,其余权限编号均为00,攻击图构造过程中,将生成的新状态加入系统状态集合。

依据图2中的网络连接拓扑,查询步骤s05生成的系统组件集合,选择设备2作为攻击接入点,根据漏洞的攻击后果,攻击者在该设备处拥有的权限为07,系统状态集合为:

s={s1,s2,s3,s4,s5,s6,s7}

s1=(01,04,{(01,02)},8.5413,{00})

s2=(02,02,{(01,01),(01,02),(01,03)},3.7145,{07})

s3=(03,11,{(04,01),(04,02),(04,03)},1.8573,{00})

s4=(04,11,{(03,01),(03,02)},0.3447,{00})

s5=(05,11,{(07,03)},0.5573,{00})

s6=(06,13,{()},3.4965,{00})

s7=(07,13,{()},3.4965,{00})

步骤s07,构造基于状态的攻击图。攻击图通过描述状态之间的迁移关系来描述攻击过程,可准确清晰的表示系统各组件脆弱性之间的利用依赖关系和攻击者对系统的攻击策略。基于状态的攻击图由状态集s、状态迁移关系τ,攻击接入状态集so,攻击目标状态集sg组成。

状态图表示为:t=(s,τ,so,sg,sb,se);

所述步骤s07具体包括:

步骤s71,系统状态集合s,包含所有攻击者攻击设备的所有可能状态,在步骤s06中生成,攻击图的所有节点都由系统状态集合内的状态表示。

步骤s72,攻击接入状态集合so,此集合内的状态可作为攻击图的接入点,考虑电力二次系统存在安全分区,生产控制大区和信息管理大区之间存在物理安全隔离,外部的攻击者一般选择位于信息管理大区的计算机、操作系统、信息管理软件、办公软件等设备作为攻击接入点,同时也可能存在电网内部的攻击者使用位于生产控制大区的上位机、监测单元、智能终端等设备作为攻击接入点。因此,构造攻击图时可根据具体的攻击场景设定选定攻击的接入点,将其对应的攻击设备初始状态作为so的元素。

步骤s73,攻击目标状态集合sg,此集合内的状态可作为攻击图的终止点,考虑电力工控系统的工作原理,攻击者一般将影响现场设备正常运行、恶意修改现场设备状态以破坏电网稳定作为攻击目标,因此选择例如系统组件为一次设备、攻击权限为修改配置或更改状态,系统组件为控制设备、攻击权限为发送指令或执行代码等状态作为目标状态,即sg的元素。

步骤s74,状态迁移关系τ,包含攻击过程中状态之间的转换关系,构成攻击图的边。状态m与状态n之间存在迁移关系的前提是c(m.devid,n.devid)=1,即状态m和状态n的对应设备之间存在网络连接,因此状态迁移关系的构建可依据网络连接拓扑搜索得到,另外迁移成功还需要符合一些约束条件。

所述步骤s74具体包括:

步骤s741,攻击者的状态为si,在网络拓扑c中查询条件c(si,*)=1,符合条件的设备在状态集s中选择其状态,计为si+1={si+1,1,si+1,2…si+1,m},继续步骤s742。若则将si-1作为si,进行步骤s742。注意,当i=1时si从so中选取。

步骤s742,判断状态si+1,n,n∈[1,m]和状态si是否符合约束条件。若存在si+1,n与si满足约束,并且存在将(si,si+1,n,si,vuls,si+1,n,vuls,si,per)计入τ,集合中分别为si的状态、si+1,n的状态、本攻击使用的si漏洞、本攻击使用的si+1,n漏洞、本攻击使用的si权限,再将si+1,n作为si,重复步骤s741,即继续延长攻击路径,进行路径深度搜索;若存在si+1,n与si满足约束,并且存在si+1,n∈sg,将(si,si+1,n,si,vuls,si+1,n,vuls,si,per)计入τ,此条攻击路径结束,即进行路径广度搜索,n=n+1,重复步骤s742,判断状态si+1,n+1与si是否满足约束;若存在si+1,n与si不满足约束,则n=n+1,重复步骤s742,即判断状态si+1,n+1与si是否满足约束;若n+1>m,即状态{si+1,1,si+1,2…si+1,m}均已完成约束条件判断,则将si-1作为si,重复步骤s741。

约束条件具体包括:

(1)即状态si+1,n的设备在第i+1个攻击步骤中没有进行过判断,满足单调性假设。

即si+1,n的设备在本条攻击路径的前i个攻击步骤中没有进行过判断;或该设备在第k个攻击步骤中进行过判断,但第i+1个攻击步骤中设备的攻击权限大于第k个攻击步骤中设备的攻击权限,满足单调性假设。

(3)si.即si的设备存在漏洞,可作为攻击者利用的对象。

(4)si+1.func=一次设备,即si+1的设备存在漏洞或si+1的设备是现场一次设备,可作为攻击者下一步攻击实施的对象。

(5)si.per≥cp(si.devid,si+1.devid),即攻击者在si的设备处的攻击权限,大于等于通过si的设备作用于si+1的设备的最低权限。

步骤s75,攻击起始状态集合sb,攻击结束状态集合se,此两类集合记录状态迁移关系τ中已有的起始状态和结束状态。当状态sk∈τ.s1,sk计入sb;当状态sk计入se。

在本申请的一项具体实施中,依据图2中的网络连接拓扑,查询步骤s03、s04生成的拓扑,步骤s06生成的系统状态集合,状态集s的初始状态为{s1,s2,s3,s4,s5,s6,s7},初始状态集so为{s2},目标状态集sg为{(03,11,{(04,01),(04,02),(04,03)},1.8573,{05}),(05,11,{(07,03)},0.5573,{05}),(06,13,{()},3.4965,{05}),(07,13,{()},3.4965,{05})}及对应设备拥有所述更高权限的状态。

如图3,是在图2的拓扑和上述漏洞条件下构造的典型攻击图和攻击图构造步骤。图中实线部分表示攻击图,虚线框内的数字表示按照步骤s74进行攻击图构造时的步骤顺序,步骤顺序数字对应的文字说明如下:

1:选择网络连接对象设备01,设备01为未攻击对象,满足单调性假设;设备01对应的初始状态为s1=(01,04,{(01,02)},8.5413,{00})存在漏洞,可作为下一步攻击实施对象;设备02对应状态s2存在漏洞,可作为攻击者利用的对象;cp(2,1)=02<07,攻击者可通过设备02影响设备01,利用设备01中的漏洞使得设备01处权限上升为06。

2:设备02为已攻击设备,无法获得更高权限,此条路径搜索终止。

3:选择网络连接对象设备03,设备03为未攻击对象,满足单调性假设;设备03对应的初始状态为s3=(03,11,{(04,01),(04,02),(04,03)},1.8573,{00})存在漏洞,可作为下一步攻击实施对象;设备02对应状态s2存在漏洞,可作为攻击者利用的对象;cp(2,3)=02<07,攻击者可通过设备02影响设备03,利用设备03中的漏洞使得设备03处权限上升为07。

4:选择网络连接对象设备06,设备06为未攻击对象,满足单调性假设;设备06对应的初始状态为s6=(06,13,{()},3.4965,{00})为现场一次设备,可作为下一步攻击实施对象;设备03对应状态s9存在漏洞,可作为攻击者利用的对象;cp(3,6)=05<07,攻击者可通过设备02更改设备06状态,故一次设备06处权限上升为07。

5:设备06所处状态s10属于目标状态集,此条路径搜索终止。

6:设备02为已攻击设备,无法获得更高权限,此条路径搜索终止。

7:选择网络连接对象设备05,设备05为未攻击对象,满足单调性假设;设备05对应的初始状态为s5=(05,11,{(07,03)},0.5573,{00})存在漏洞,可作为下一步攻击实施对象;设备02对应状态s2存在漏洞,可作为攻击者利用的对象;cp(2,5)=02<07,攻击者可通过设备02影响设备05,利用设备05中的漏洞,使得设备05丧失可用性,无法向与之连接的其他设备发送指令,属于拥有有限读写数据权限,故此处权限上升为03。

8:选择网络连接对象设备07,设备07为未攻击对象,满足单调性假设;设备07对应的初始状态为s7=(07,13,{()},3.4965,{00})为现场一次设备,可作为下一步攻击实施对象;设备05对应状态s11存在漏洞,可作为攻击者利用的对象;cp(5,7)=05>03,攻击者不可通过设备05影响设备07,不满足约束条件,此条路径搜索终止。

9:设备02为已攻击设备,无法获得更高权限,此条路径搜索终止。

最终形成的攻击图表达式为:t=(s,τ,so,sg,sb,se)

s={s1,s2…s11}

τ={(s2,s8,01,01,07),(s2,s9,01,04,07),(s9,s10,04,,07),(s2,s11,01,07,07)}

sb={s2}

se={s8,s10,s11}

so,sg同上

步骤s08,计算攻击图所含路径的可行性和收益。将路径p的可能性计为dp,收益计为vp。从攻击图的攻击起始状态集合sb开始,从i=1开始,依次在τ内选择状态迁移路径,到i=k且sk∈se结束,为一条攻击路径,路径包括k个状态,即k个节点,k-1个迁移关系,即k-1条边。

所述步骤s08具体包括:

步骤s81,状态迁移中一条迁移关系,即单步攻击路径的可行性计算。τ中的一条迁移关系为{si,si+1,n,si,vuls,si+1,n,vuls,si,per},将其称为{sm,sn,sm,vuls,sn,vuls,sm,per},则单步路径可行性计为dp(m,n)。路径的可能性与攻击开始状态的漏洞和攻击权限、攻击结束状态的漏洞相关。

cvssv1.0和v3.0评分方法中,均使用了攻击途径accessvector和攻击复杂度accesscomplexity作为漏洞的可利用性指标度量项,分别计为mav,mac;cvssv1.0评分方法中漏洞的可利用性指标度量项还包括攻击认证需求authentication,计为mau,与之对应cvssv3.0评分方法中关于攻击者身份需求的度量项为所需的特权privilegerequired和用户交互userinteraction,分别计为mpr,mui,以上度量指标取值在均[0,1]区间,作为漏洞本身影响路径可行性的计算初始数值,用于计算漏洞影响因子mvuls。在步骤s54中攻击权限可用保密性、完整性、可用性三种特性来评价,三种特性受影响的程度可量化为[0,1]区间内的权值mc,mi,ma,作为攻击者权限影响路径可行性的计算初始数值,用于计算攻击权限影响因子mper。

单步攻击路径的可行性的计算方法为:dp(m,n)=sm.mvuls×sm.mper×sn.mvuls;

攻击权限影响因子的计算方法为:

一台设备可能拥有多个权限,每种权限拥有对应的mc,mi,ma,式中max{mc}为所有权限中对应最高的mc,其余类似,若设备为现场一次设备,则mc=无,mi=高,ma=高。

漏洞影响因子的计算方法为:

sm,vuls使用cvssv1.0时:

sm,vuls使用cvssv3.0时:

一台设备可能拥有多个漏洞,每种漏洞拥有对应的mav,mac,mau,mpr,mui,式中max{mav}为所有权限中对应最高的mav,其余类似,若设备为现场一次设备,则mav=网络,mac=低,mau=不需要,mpr=没有,mui=没有。

步骤s82,攻击图中一条攻击路径的可行性计算。

攻击路径可行性的计算方法为:

步骤s83,攻击图中一条攻击路径的收益计算。

攻击路径收益的计算方法为:

依据图3中的典型攻击图,攻击路径为3条,分别定义为p1,p2,p3,与之对应的k分别为:

k1=2,k2=3,k3=2,

依据步骤s53,攻击权限影响因子mper分别为:

漏洞使用cvssv1.0评分方法,对攻击途径的定性评价网络(n)、相邻(a)、本地(l)、物理(p)分别定量为0.85,0.62,0.55,0.2;对攻击复杂度的定性评价高、中、低分别定量为0.6,0.8,1;对认证需求的定性评价需要、不需要分别定量为0.6,1。漏洞影响因子mvuls分别为:

单步攻击路径的可行性dp(m,n)=sm.mvuls×sm.mper×sn.mvuls分别为:

攻击路径可行性dpi=dp(i,i+1)分别为:

攻击路径收益value分别为:

本发明综合考虑了网络攻击所使用漏洞的性能特征和电力工控系统组件的物理功能,所用评估指标具有通用性,与攻击场景相关性弱,适用于电力工控系统下的多种攻击场景,指标中需要专家评定指定权重的值较少,避免了评估指标主观性强的问题,可对电力工控系统的任意子系统进行分析,且攻击图中含有较多信息,对攻击行为的描述更为具体化。

以上列举的仅是本发明的具体实施例。显然,本发明不限于以上实施例,还可以有许多变形。本领域的普通技术人员能从本发明公开的内容直接导出或联想到的所有变形,均应认为是本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1