一种基于设定参数最值的攻击图生成系统及方法与流程

文档序号:31931936发布日期:2022-10-26 00:41阅读:35来源:国知局
一种基于设定参数最值的攻击图生成系统及方法与流程

1.本发明涉及网络安全技术领域,具体涉及一种基于设定参数最值的攻击图生成系统及方法。


背景技术:

2.网络安全(cyber security)是指网络系统的硬件、软件及其系统中的数据受到保护,不因偶然的或者恶意的原因而遭受到破坏、更改、泄露,系统连续可靠正常地运行,网络服务不中断。为了发现系统中的网络安全漏洞,了解服务在网络环境中面对的威胁,同时找到易受黑客攻击的脆弱部位,安全专家提出了各种安全保障方法,渗透测试就是其中之一,也是当前最理想的方法之一。渗透测试人员会在保证整个系统安全的前提下,模拟真实黑客的攻击,并使用各种方法来实现未授权访问。最后根据测试的情况,创建可以为进一步制定系统安全防御策略的重要指南的测试报告
3.目前比较常用的渗透测试模型有基于攻击树的、基于攻击图的、基于petri网的等等。其中在整个渗透测试过程中研究使用占比最多的就是基于攻击图模型,现有的对攻击图的研究主要集中于网络攻击图的自动生成及算法改进,比如基于广度优先和贝叶斯算法的生成方法,然后由可视化工具将这些路径表现出来形成一个完整的攻击图。但目前的模型都有一些问题,攻击图的规模过大,空间复杂度和时间复杂度较高不利于渗透人员进行直观的分析,想从攻击图中直接找出危害程度比较大的路径就会非常困难,攻击图缺少针对性,同时生成效率也比较低,不能为后续的渗透测试的实施提供更有价值的指导。


技术实现要素:

4.为了解决上述技术问题,本发明一种基于设定参数最值的攻击图生成系统及方法,通过限定攻击步数、漏洞利用的困难指数以及可接受的高难度漏洞个数进行攻击路径的边探测边筛选,生成相对低代价的攻击路径,找出目标网路中相对较为薄弱的环节。同时该方法还可以使攻击图的生成更加灵活,更具有针对性。
5.为了达到上述技术效果,本发明提供了如下技术方案:
6.一种设定参数最值的攻击图生成系统,包括资产收集模块、主机信息模块、网络信息模块、攻击规则库和攻击图生成模块,所述资产收集模块通过人工或工具对测试目标的网络信息进行收集,并将其分为主机信息和网络信息两部分,所述主机信息包括漏洞信息和服务信息,所述网络信息包括配置信息、拓扑信息和连接信息,所述攻击规则库用来存储攻击图的生成所需要的依据。
7.进一步的技术方案为,所述资产收集模块是渗透测试人员通过测试需求分析,收集测试目标的域名和ip地址相关信息,还包括通过开源工具对目标进行扫描,探测网络拓扑情况,明确主机间的连接关系和主机的配置信息和脆弱点。
8.进一步的技术方案为,所述攻击规则库是在主机弱点库的基础上,由攻击模式进行规则映射,抽象分析出攻击规则。
9.进一步的技术方案为,所述攻击规则库包括攻击难易程度、危害指数、cve和cnnvd漏洞编号、实施漏洞所需的权限、漏洞带来的影响。
10.进一步的技术方案为,所述攻击图包括攻击的路径要素、攻击节点要素、攻击所需要的代价要素以及参数最值限定要素。
11.进一步的技术方案为,所述参数最值限定要素包括最大攻击步长、最大攻击难度系数、高难漏洞的个数。
12.进一步的技术方案为,所述攻击步长指的是攻击路径的长度,长度越长越说明攻击难度越大,利用难度越大,设置一个最大值lmax,当此攻击路径超过lmax,该路径就舍弃;所述做大攻击难度系数指的是漏洞的利用条件难度,渗透人员设定某个难度系数值dmax,当漏洞的利用条件难度超过这个值dmax,说明该攻击方式难以达成;所述的高难漏洞的个数指的是攻击图的一条攻击边上存在超过dmax漏洞的个数,假设个数为x,当探测到的个数超出x时,这条边可以在攻击图的生成中忽略。
13.进一步的技术方案为,所述攻击图的生成方法是当探测某条攻击边的高难度漏洞超出x或攻击的路径长度超过lmax时,舍弃该路径,否则生成相应攻击图的边。
14.本发明还提供了一种设定参数最值的攻击图生成方法,由资产收集模块收集攻击时可用的信息,将信息分到主机信息模块和网络信息模块,结合攻击规则库的规则,生成攻击图,所述攻击规则库是在主机弱点库基础上,由攻击模式进行规则映射,抽象分析出攻击规则,所述参数最值包括最大攻击步长lmax,最大攻击难度系数dmax,高难漏洞的个数x,通过对所述的lmax、dmax和x三个值的设定,就能生成相应的攻击图。
15.与现有技术相比,本发明具有如下有益效果:本发明提出一种基于设定参数最值的攻击图生成系统及方法,通过限定攻击步数、漏洞利用的困难指数以及可接受的高难度漏洞个数进行攻击路径的边探测边筛选,生成相对低代价的攻击路径,找出目标网路中相对较为薄弱的环节,通过本发明提供的方法,实现了对攻击路径的量化评估,而且渗透测试人员可以快速得到指定范围内的低代价路径,找出目标网路中相对较为薄弱的环节,本发明可以使攻击图的生成更加灵活,更具有针对性,为渗透测试的实施提供更加科学合理的测试方案,提高工作效率。
附图说明
16.图1为基于设定参数最值的攻击图生成示意图;
17.图2为攻击规则库生成示意图;
18.图3为某企业网络拓扑图;
19.图4为实施例2中存活主机所使用的服务及对应端口列表。
具体实施方式
20.下面结合附图和具体实施例对本发明进行进一步的解释和说明。
21.实施例1
22.本发明提供了一种设定参数最值的攻击图生成系统,包括资产收集模块、主机信息模块、网络信息模块、攻击规则库、攻击图生成模块,如图1所示。所述的资产收集是通过人工或者工具对测试目标的网络信息等进行收集,并将其分为主机信息和网络信息两部
分。所述的主机信息主要包括漏洞信息和服务信息。所述的网络信息,主要包括配置信息、拓扑信息和连接信息。上述信息进入所述的攻击图生成模块,再结合所述的攻击规则库,生成攻击图。所述的资产收集模块,是渗透测试人员通过测试需求分析,收集测试目标的域名和ip地址等相关信息。所述的需求分析主要依靠和客户进行沟通。所述的资产收集模块,还包括通过开源工具对目标进行扫描,探测网络拓扑情况,明确主机间的连接关系和主机的配置信息和脆弱点。所述的主机信息模块包括传进的漏洞信息和服务信息。所述的网络信息模块,包括传进的配置信息、拓扑信息和连接信息。所述的攻击规则库是用来存储攻击图的生成所需要的依据。攻击规则的规则是在capec(common attack pattern enumeration and classification常见攻击模式枚举与分类)的基础上对上述两个信息模块所收集的主机弱点进行抽象分析所建立的,如图2所示。所述的主机弱点是根据对比cve(common vulnerabilities&exposures)和cnnvd(china national vulnerability database of information security)两个漏洞库与所述的信息收集模块所得到的。所述攻击规则包含了攻击难易程度、危害指数、cve和cnnvd漏洞编号、实施漏洞所需的权限、漏洞带来的影响等。所述的攻击图生成模块,是根据所述的攻击规则库进行生成的。所述攻击图包含攻击的路径、攻击节点、攻击所需要的代价以及参数最值限定几方面要素。所述参数最值限定是本发明的重点。本发明通过设定参数最值的方式对攻击图进行筛选枚举,可供设定的参数包括最大攻击步长,最大攻击难度系数,高难漏洞的个数。所述的攻击步长指的是攻击路径的长度,长度越长越说明攻击难度越大,利用难度越大,设置一个最大值lmax,当此攻击路径超高lmax,该路径就可以舍弃。所述的攻击难度系数,指的是该漏洞的利用条件难度,最简单的就是初学者即可达成,较难的是需要经验丰富的黑客且利用条件苛刻。渗透人员设定某个难度系数值dmax,当超过这个值dmax,说明改攻击方式难以达成。所述的高难漏洞的个数指的是攻击图的一条攻击边上存在超过dmax漏洞的个数,假设个数为x,当探测到的个数超出x时,这条边可以在攻击图的生成中忽略。攻击图的生成判断的是,当探测某条攻击边的高难度漏洞超出x或攻击的路径长度超过lmax时,舍弃该路径,否则生成相应攻击图的边。通过对所述的lmax、dmax和x三个值的设定,就能生成一定合理范围内筛选掉低价值的路径,生成更加精简的低代价攻击图。
23.实施例2
24.一种基于设定参数最值的攻击图生成方法,用于生成渗透测试过程中所用的攻击图,以渗透某企业如图3所示的局域网络为例,包括以下步骤:
25.步骤1.1,企业的网络环境进行信息收集,有7台主机,其中hack pc为渗透人员使用的攻击机,ip地址为192.168.30.1;
26.步骤1.2,通过对局域网的探测扫描,还有6个存活地址,分别是192.168.35.1、192.168.35.1、192.168.35.3、192.168.39.1、192.168.39.2、192.168.39.3;
27.步骤1.3,同时在收集过程中,还探测到存活主机所使用的服务及对应端口如图4所示;
28.步骤2.1,将已知信息进行分类整理,分为主机信息和网络信息;
29.步骤2.2,进一步的,将主机信息细化为漏洞信息和服务信息,网络信息细化为配置信息、拓扑信息和连接信息,比如有35和39两个子网段,开启的可能存在的服务有远程访问等;
30.步骤3.1,根据收集到的信息,对比cve库,映射出攻击规则;
31.步骤3.2,192.168.35.1和192.168.35.2都开了445端口,在cve库中就存在针对smb服务进行攻击的漏洞,编号为cve-2017-0146,利用难度小,危险系数极高,影响范围巨大;
32.步骤3.3,在35网段,192.168.35.1开启了远程桌面服务,可能存在cve-2019-0708、cve-2016-2183等;192.168.35.2开启21端口和ftp服务,可能有cve-2013-4730;192.168.35.3开启了两个http可以直接访问尝试后,进一步分析有什么漏洞,攻击路径就比直接的漏洞长度增加,同时192.168.35.3开启了3306,可能存在的高位漏洞有cve-2018-2696,cve-2018-2591和cve-2018-2562;
33.步骤3.4,在39网段,有三个http服务,需要进一步访问后,分析漏洞,攻击路径增加;192.168.39.2开启了1433,可能存在爆破\注入\sa弱口令三种利用方式,都比较简单,难度系数小,但是只要企业设置的密码复杂就不容易被攻击,所以危害程度较步骤3.2提到的漏洞小;192.168.39.3开启了7001端口,部署了weblogic服务,这个在cve中可以映射出众多不同危害程度的漏洞,如cve-2017-3506、cve-2017-10271、cve-2017-3248、cve-2019-2725、cve-2020-14645、cve-2020-14883、cve-2020-2551等,由此会生成多个攻击路径,增加攻击图的广度;
34.步骤4.1,在前面步骤的铺垫下,已经有相应的资产信息和相应的攻击规则库,现在开始生成攻击图;
35.步骤4.2,设定最大攻击步长lmax=a,最大攻击难度系数dmax=b,高难漏洞的个数x=c;
36.步骤4.3,在前面三步的信息搜集后,渗透人员不仅可以知晓拓扑信息和连接关系还得到了各主机节点到目标主机所需要跳转的次数。将连接关系以邻接矩阵的数据结构存进数据库中,以此为原型生成攻击图;
37.步骤4.4,在原型图的基础上,执行路径生成的操作。对于每一条边,都以当前主机所具有的权限为前提,对下一主机进行扫描和探测,按照上述步骤生成的攻击规则库进行是筛选是否有可行的攻击路径;
38.步骤4.5,匹配后,存在某攻击路径,记录当前攻击难度系数和攻击步长;如果不匹配,则舍弃这条邻接矩阵的边。当lmax》a或当x》c时,舍弃该路径;
39.步骤4.6,重复上述步骤,找到所有匹配并符合参数设定的边,即攻击图生成完成。
40.尽管这里参照本发明的解释性实施例对本发明进行了描述,上述实施例仅为本发明较佳的实施方式,本发明的实施方式并不受上述实施例的限制,应该理解,本领域技术人员可以设计出很多其他的修改和实施方式,这些修改和实施方式将落在本技术公开的原则范围和精神之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1