CN111884989B - 一种针对电力web系统的漏洞探测方法和系统 - Google Patents
一种针对电力web系统的漏洞探测方法和系统 Download PDFInfo
- Publication number
- CN111884989B CN111884989B CN202010490217.0A CN202010490217A CN111884989B CN 111884989 B CN111884989 B CN 111884989B CN 202010490217 A CN202010490217 A CN 202010490217A CN 111884989 B CN111884989 B CN 111884989B
- Authority
- CN
- China
- Prior art keywords
- vulnerability
- information
- penetration test
- test target
- service
- 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.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1433—Vulnerability analysis
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
Abstract
本发明涉及一种针对电力web系统的漏洞探测方法和系统,包括:获取渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息;基于所述渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息探测渗透测试目标的疑似漏洞信息;基于漏洞验证脚本树对渗透测试目标的疑似漏洞信息进行验证,获取渗透测试目标的漏洞信息。本发明提供的技术方案,方法实现了对电力web系统的漏洞的高效、低干扰的探测,从而降低了电力web系统的“带病”上线运行的隐患概率,提升了电力web系统的自身安全性。
Description
技术领域
本发明涉及电力信息安全领域,具体涉及一种针对电力web系统的漏洞探测方法和系统。
背景技术
随着泛在电力物联网战略的推进,以及先进信息通信技术和互联网在电网中的广泛应用,电力系统逐步打破了以往的封闭性和专有性,开放互动、广泛互联的电力web业务系统建设部署愈发广泛,电力web业务系统的先天性漏洞隐患使得系统面临网络与信息安全风险向电力系统传导风险。技术人员对电力业务系统后门、漏洞和脆弱性等方面的研究日益重视和深入,一些电力业务系统产品的安全漏洞信息和攻击代码在互联网上传播,导致对电力业务系统网络安全实施攻击的门槛逐渐降低,电力信息系统网络安全形势日益严峻。
目前已有电动汽车运营管理系统、新能源接入管控系统等各类电力web业务系统,实现了电网的智能量测、监测控制和互联互通等功能。为了防止电力业务系统广泛互联、高度智能、开放互动创新发展的新形势下,漏洞安全隐患被利用从而危害电网安全,一般通过网络安全红队常态化开展网络安全漏洞和隐患发现工作,然而,面对异构化、智能化、互联化的海量电力web系统环境,上述网络安全红队漏洞隐患挖掘验证存在诸多差距和不足,主要体现在传统漏洞隐患主动探测扫描技术对网络和业务连续性干扰大,漏洞判定结果不准,导致对业务系统安全隐患掌握不及时、防御水平掌握不准确。
分析产生上述漏洞扫描对业务连续性干扰大、对漏洞识别验证准确性低的原因主要是现阶段主流漏洞扫描产品均采用了基于主动扫描探测的方式对网络资产进行识别,以确定资产操作系统版本、中间件版本等信息,从而与已知漏洞库进行关联匹配,以识别信息网络资产漏洞隐患。然而,主动扫描探测的方式对网络资源占用较大且会对网络资产业务连续性造成一定影响,同时,基于版本匹配的方式来识别资产漏洞,在网络运维人员安装了相关补丁的情况下,此类扫描器并不能识别补丁是否生效,依旧进行漏洞信息报警。
目前,还未发现能解决克服上述漏洞识别缺陷的专利。
发明内容
针对现有技术的不足,本发明的目的是提供一种针对电力web系统的漏洞探测方法,该方法提高了对电力web系统漏洞的探测及验证能力,极大降低了漏洞扫描验证对于网络和业务连续性的干扰,有利于精准主动的对电力web系统安全漏洞隐患和安全防护水平进行督察,有利于开展正对性的网络安全主动防御,具有广泛的工程应用价值。
本发明的目的是采用下述技术方案实现的:
本发明提供一种针对电力web系统的漏洞探测方法,其改进之处在于,所述方法包括:
获取渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息;
基于所述渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息探测渗透测试目标的疑似漏洞信息;
基于漏洞验证脚本树对渗透测试目标的疑似漏洞信息进行验证,获取渗透测试目标的漏洞信息。
优选的,所述获取渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息,包括:
获取渗透测试目标的开放端口;
对所述渗透测试目标的开放端口实施端口服务扫描,获取所述渗透测试目标的开放端口中服务类型为web服务的开放端口;
对所述渗透测试目标的开放端口中服务类型为web服务的开放端口实施web系统指纹扫描,获取渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息。
进一步的,所述获取渗透测试目标的开放端口,包括:
若渗透测试目标的IP地址为URL地址或单个IP地址,则采用无状态扫描技术扫描该IP地址下全部端口,获取渗透测试目标的开放端口;
若渗透测试目标的IP地址为网段,则采用目标地址随机化技术在所述网段下全部端口中随机选择一个端口,并采用无状态扫描技术扫描该端口,直至网段下全部端口扫描完毕,获取渗透测试目标的开放端口。
进一步的,所述对所述渗透测试目标的开放端口实施端口服务扫描,获取所述渗透测试目标的开放端口中服务类型为web服务的开放端口,包括:
采用目标地址随机化技术在渗透测试目标的全部开放端口中随机选择一个端口,并采取无状态扫描技术扫描该端口,直至渗透测试目标的全部开放端口扫描完成,获取所述渗透测试目标的开放端口中服务类型为web服务的开放端口。
优选的,所述获取渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息之后,还包括:
在电力web业务系统库中寻找与渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息一致的标准指纹信息,并将该标准指纹信息的电力业务系统类型作为渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息所对应的电力业务系统类型信息。
优选的,所述基于所述渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息探测渗透测试目标的疑似漏洞信息,包括:
若所述渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息与漏洞指纹信息库中标准指纹信息相同,则该渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息所对应的漏洞信息为渗透测试目标的疑似漏洞信息,否则,该渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息所对应的漏洞信息不为渗透测试目标的疑似漏洞信息。
进一步的,所述渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息所对应的漏洞信息,包括:
所述渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息所对应的端口位置以及与所述渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息相同的标准指纹信息所对应的漏洞数字编号、漏洞名称、漏洞描述、漏洞所属类别、漏洞扫描手段分类和漏洞解决办法;
所述渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息,包括:所述渗透测试目标中服务类型为web服务的开放端口的web系统headers、Set-Cookie、X-Powered-CMS、html、icon、implies、script和website。
进一步的,所述基于漏洞验证脚本树对渗透测试目标的疑似漏洞信息进行验证,获取渗透测试目标的漏洞信息,包括:
从渗透测试目标的疑似漏洞信息对应的web系统指纹信息中提取操作系统类型信息、服务名称信息、服务版本信息和渗透测试模块信息;
将提取的操作系统类型信息、服务名称信息、服务版本信息和渗透测试模块信息和与渗透测试目标的疑似漏洞信息对应的web系统指纹信息对应的电力业务系统类型信息作为渗透测试目标的疑似漏洞信息的状态信息;
若漏洞验证脚本树中存在该渗透测试目标的疑似漏洞信息的状态信息对应的漏洞利用脚本序列,则该渗透测试目标的疑似漏洞信息为渗透测试目标的漏洞信息,否则,该渗透测试目标的疑似漏洞信息不为渗透测试目标的漏洞信息。
优选的,所述漏洞验证脚本树的获取过程,包括:
S1:构建基于A3C强化学习技术的靶机模型,并定义奖励函数以及损失函数;
S2:利用电力web系统的漏洞利用脚本构建动作集;
S3:基于已知漏洞信息的状态信息构建状态集;
S4:基于所述奖励函数、损失函数、动作集和状态集对靶机模型进行训练;
S5:获取靶机模型训练过程中能够输出的漏洞利用脚本序列的已知漏洞信息,并将该漏洞利用脚本序列和该已知漏洞信息的状态信息以树形结构进行存储,生成漏洞验证脚本树;
S6:获取靶机模型训练过程中无法输出的漏洞利用脚本序列的已知漏洞信息,并从漏洞验证数据库中调用该已知漏洞信息对应的漏洞利用脚本序列,并将该已知漏洞信息的状态信息以及该已知漏洞信息对应的漏洞利用脚本序列以树形结构补充至漏洞验证脚本树中。
本发明提供一种针对电力web系统的漏洞探测系统,其改进之处在于,所述系统包括:
第一获取模块,用于获取渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息;
探测模块,用于基于所述渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息探测渗透测试目标的疑似漏洞信息;
第二获取模块,用于基于漏洞验证脚本树对渗透测试目标的疑似漏洞信息进行验证,获取渗透测试目标的漏洞信息。
与最接近的现有技术相比,本发明具有的有益效果:
本发明提供的技术方案,获取渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息;基于所述渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息探测渗透测试目标的疑似漏洞信息;基于漏洞验证脚本树对渗透测试目标的疑似漏洞信息进行验证,获取渗透测试目标的漏洞信息,该方案实现了对电力web系统的漏洞的高效、低干扰的探测,提高了电力web系统的漏洞的实际发现能力,从而降低了电力web系统的“带病”上线运行的隐患概率,提升了电力web系统的自身安全性。
本发明提供的技术方案,在对渗透测试目标的端口进行扫描时,采取了目标地址随机化技术以及无状态扫描技术,其中,目标地址随机化技术随机选取渗透测试目标的端口进行端口扫描,提高了端口扫描的隐蔽性,智能的绕过了渗透测试目标中IDS等安全设备的阻拦,提升了漏洞扫描技术的实用性;无状态扫描技术避免了常规TCP/UDP扫描技术中网络等待、阻塞等造成的扫描效率低的问题,提升了对渗透测试目标的端口扫描的速度。
本发明提供的技术方案,漏洞验证脚本树的建立采用了基于AO3强化学习的漏洞智能验证和基于漏洞验证数据库的验证相结合的形式构建的,该漏洞验证脚本树可实现对漏洞信息智能、精准和无损的漏洞验证。
附图说明
图1是一种针对电力web系统的漏洞探测方法流程图;
图2是一种针对电力web系统的漏洞探测系统结构图。
具体实施方式
下面结合附图对本发明的具体实施方式作进一步的详细说明。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
本发明提供一种针对电力web系统的漏洞探测方法,如图1所示,所述方法包括:
步骤101,用于获取渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息;
步骤102,用于基于所述渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息探测渗透测试目标的疑似漏洞信息;
步骤103,用于基于漏洞验证脚本树对渗透测试目标的疑似漏洞信息进行验证,获取渗透测试目标的漏洞信息。
具体的,所述步骤101,包括:
步骤101-1,用于获取渗透测试目标的开放端口;
步骤101-2,用于对所述渗透测试目标的开放端口实施端口服务扫描,获取所述渗透测试目标的开放端口中服务类型为web服务的开放端口;
步骤101-3,用于对所述渗透测试目标的开放端口中服务类型为web服务的开放端口实施web系统指纹扫描,获取渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息。
在本发明的最佳实施例中,执行获取渗透测试目标的开放端口的操作之前,需保证与渗透测试目标的网络通畅,并在此基础上建立与渗透测试目标的TCP连接,其中,所述TCP连接区别与传统的TCP连接,在TCP连接建立时不需等待渗透测试目标的同意连接回复,同时,在对渗透测试目标进行端口扫描时,以异步收发多线程传输数据包的形式(通过TCP连接实现)实现无状态扫描,解决了传统TCP/UDP扫描技术中网络等待、阻塞等造成的扫描效率低的问题,提高了端口扫描速度。
在本发明的最佳实施例中,对所述渗透测试目标的开放端口中服务类型为web服务的开放端口实施web系统指纹扫描,获取渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息的详细过程,可以包括:
对所述渗透测试目标的开放端口中服务类型为web服务的开放端口发送HTTP请求,获取所述端口返回的响应数据包;
由所述响应数据包中提取所述渗透测试目标的开放端口中服务类型为web服务的开放端口的web系统指纹信息。
进一步的,所述步骤101-1,具体用于:
若渗透测试目标的IP地址为URL地址或单个IP地址,则采用无状态扫描技术扫描该IP地址下全部端口,获取渗透测试目标的开放端口;
若渗透测试目标的IP地址为网段,则采用目标地址随机化技术在所述网段下全部端口中随机选择一个端口,并采用无状态扫描技术扫描该端口,直至网段下全部端口扫描完毕,获取渗透测试目标的开放端口。
进一步的,所述步骤101-2,包括:
采用目标地址随机化技术在渗透测试目标的全部开放端口中随机选择一个端口,并采取无状态扫描技术扫描该端口,直至渗透测试目标的全部开放端口扫描完成,获取所述渗透测试目标的开放端口中服务类型为web服务的开放端口。
在本发明的具体实施例中,采取无状态扫描技术扫描该端口,获取该端口服务类型的过程,包括:
对该端口实施无状态扫描,获取该端口的Banner信息;
在端口服务类型数据库中寻找与该端口的Banner信息一致的标准Banner信息,并将所述标准Banner信息对应的服务类型作为该端口的服务类型。
所述端口服务类型数据库由标准Banner信息及其对应的服务类型信息构成。
具体的,所述方法还包括步骤104,用于:
在电力web业务系统库中寻找与渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息一致的标准指纹信息,并将该标准指纹信息的电力业务系统类型作为渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息所对应的电力业务系统类型信息。
所述电力web业务系统库由标准指纹信息及其对应的电力业务系统类型信息构成。
具体的,所述步骤102,用于:
若所述渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息与漏洞指纹信息库中标准指纹信息相同,则该渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息所对应的漏洞信息为渗透测试目标的疑似漏洞信息,否则,该渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息所对应的漏洞信息不为渗透测试目标的疑似漏洞信息。
所述漏洞指纹信息库由标准指纹信息及其对应的漏洞数字编号、漏洞名称、漏洞描述、漏洞所属类别、漏洞扫描手段分类和漏洞解决办法组成。
进一步的,所述渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息所对应的漏洞信息,包括:
所述渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息所对应的端口位置以及与所述渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息相同的标准指纹信息所对应的漏洞数字编号、漏洞名称、漏洞描述、漏洞所属类别、漏洞扫描手段分类和漏洞解决办法;
所述渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息,包括:所述渗透测试目标中服务类型为web服务的开放端口的web系统headers、Set-Cookie、X-Powered-CMS、html、icon、implies、script和website。
具体的,所述步骤103,包括:
步骤103-1,用于从渗透测试目标的疑似漏洞信息对应的web系统指纹信息中提取操作系统类型信息、服务名称信息、服务版本信息和渗透测试模块信息;
步骤103-2,用于将提取的操作系统类型信息、服务名称信息、服务版本信息和渗透测试模块信息和与渗透测试目标的疑似漏洞信息对应的web系统指纹信息对应的电力业务系统类型信息作为渗透测试目标的疑似漏洞信息的状态信息;
步骤103-3,用于若漏洞验证脚本树中存在该渗透测试目标的疑似漏洞信息的状态信息对应的漏洞利用脚本序列,则该渗透测试目标的疑似漏洞信息为渗透测试目标的漏洞信息,否则,该渗透测试目标的疑似漏洞信息不为渗透测试目标的漏洞信息。
具体的,所述漏洞验证脚本树的获取过程,包括:
S1:构建基于A3C强化学习技术的靶机模型,并定义奖励函数以及损失函数;
S2:利用电力web系统的漏洞利用脚本构建动作集;
S3:基于已知漏洞信息的状态信息构建状态集;
S4:基于所述奖励函数、损失函数、动作集和状态集对靶机模型进行训练;
S5:获取靶机模型训练过程中能够输出的漏洞利用脚本序列的已知漏洞信息,并将该漏洞利用脚本序列和该已知漏洞信息的状态信息以树形结构进行存储,生成漏洞验证脚本树;
S6:获取靶机模型训练过程中无法输出的漏洞利用脚本序列的已知漏洞信息,并从漏洞验证数据库中调用该已知漏洞信息对应的漏洞利用脚本序列,并将该已知漏洞信息的状态信息以及该已知漏洞信息对应的漏洞利用脚本序列以树形结构补充至漏洞验证脚本树中。
在本发明的具体实施例中,漏洞利用脚本的分类和功能描述如表1所示:
表1
表1中显示的每一种漏洞利用脚本分类下对应有很多的漏洞利用脚本,而疑似漏洞信息验证的实质就是通过一系列漏洞利用脚本的排列组合去验证疑似漏洞信息是否为漏洞信息;
在本发明的最佳实施例中,漏洞验证数据库是基于人工经验建立的,基于漏洞验证脚本树对疑似漏洞信息进行渗透测试,极大地降低了传统渗透测试对目标生产系统带来的危害,同时,也降低了爆破攻击带来的网络危害。
本发明提供一种针对电力web系统的漏洞探测系统,如图2所示,所述系统包括:
第一获取模块,用于获取渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息;
探测模块,用于基于所述渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息探测渗透测试目标的疑似漏洞信息;
第二获取模块,用于基于漏洞验证脚本树对渗透测试目标的疑似漏洞信息进行验证,获取渗透测试目标的漏洞信息。
具体的,所述第一获取模块,包括:
第一获取单元,用于获取渗透测试目标的开放端口;
第二获取单元,用于对所述渗透测试目标的开放端口实施端口服务扫描,获取所述渗透测试目标的开放端口中服务类型为web服务的开放端口;
第三获取单元,用于对所述渗透测试目标的开放端口中服务类型为web服务的开放端口实施web系统指纹扫描,获取渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息。
进一步的,所述第一获取单元,用于:
若渗透测试目标的IP地址为URL地址或单个IP地址,则采用无状态扫描技术扫描该IP地址下全部端口,获取渗透测试目标的开放端口;
若渗透测试目标的IP地址为网段,则采用目标地址随机化技术在所述网段下全部端口中随机选择一个端口,并采用无状态扫描技术扫描该端口,直至网段下全部端口扫描完毕,获取渗透测试目标的开放端口。
进一步的,所述第二获取单元,用于:
采用目标地址随机化技术在渗透测试目标的全部开放端口中随机选择一个端口,并采取无状态扫描技术扫描该端口,直至渗透测试目标的全部开放端口扫描完成,获取所述渗透测试目标的开放端口中服务类型为web服务的开放端口。
具体的,所述系统还包括,寻找模块,用于:
在电力web业务系统库中寻找与渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息一致的标准指纹信息,并将该标准指纹信息的电力业务系统类型作为渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息所对应的电力业务系统类型信息。
具体的,所述探测模块,用于:
若所述渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息与漏洞指纹信息库中标准指纹信息相同,则该渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息所对应的漏洞信息为渗透测试目标的疑似漏洞信息,否则,该渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息所对应的漏洞信息不为渗透测试目标的疑似漏洞信息。
进一步的,所述渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息所对应的漏洞信息,包括:
所述渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息所对应的端口位置以及与所述渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息相同的标准指纹信息所对应的漏洞数字编号、漏洞名称、漏洞描述、漏洞所属类别、漏洞扫描手段分类和漏洞解决办法;
所述渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息,包括:所述渗透测试目标中服务类型为web服务的开放端口的web系统headers、Set-Cookie、X-Powered-CMS、html、icon、implies、script和website。
具体的,所述第二获取模块,包括:
提取单元,用于从渗透测试目标的疑似漏洞信息对应的web系统指纹信息中提取操作系统类型信息、服务名称信息、服务版本信息和渗透测试模块信息;
作为单元,用于将提取的操作系统类型信息、服务名称信息、服务版本信息和渗透测试模块信息和与渗透测试目标的疑似漏洞信息对应的web系统指纹信息对应的电力业务系统类型信息作为渗透测试目标的疑似漏洞信息的状态信息;
判断单元,用于若漏洞验证脚本树中存在该渗透测试目标的疑似漏洞信息的状态信息对应的漏洞利用脚本序列,则该渗透测试目标的疑似漏洞信息为渗透测试目标的漏洞信息,否则,该渗透测试目标的疑似漏洞信息不为渗透测试目标的漏洞信息。
具体的,所述系统还包括用于获取漏洞验证脚本树的获取模块,该获取模块,包括:
第一构建单元,用于构建基于A3C强化学习技术的靶机模型,并定义奖励函数以及损失函数;
第二构建单元,用于利用电力web系统的漏洞利用脚本构建动作集;
第三构建单元,用于基于已知漏洞信息的状态信息构建状态集;
训练单元,用于基于所述奖励函数、损失函数、动作集和状态集对靶机模型进行训练;
生成单元,用于获取靶机模型训练过程中能够输出的漏洞利用脚本序列的已知漏洞信息,并将该漏洞利用脚本序列和该已知漏洞信息的状态信息以树形结构进行存储,生成漏洞验证脚本树;
补充单元,用于获取靶机模型训练过程中无法输出的漏洞利用脚本序列的已知漏洞信息,并从漏洞验证数据库中调用该已知漏洞信息对应的漏洞利用脚本序列,并将该已知漏洞信息的状态信息以及该已知漏洞信息对应的漏洞利用脚本序列以树形结构补充至漏洞验证脚本树中。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者等同替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求保护范围之内。
Claims (5)
1.一种针对电力web系统的漏洞探测方法,其特征在于,所述方法包括:
获取渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息;
基于所述渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息探测渗透测试目标的疑似漏洞信息;
基于预先生成的漏洞验证脚本树对渗透测试目标的疑似漏洞信息进行验证,获取渗透测试目标的漏洞信息;
所述获取渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息,包括:
获取渗透测试目标的开放端口;
对所述渗透测试目标的开放端口实施端口服务扫描,获取所述渗透测试目标的开放端口中服务类型为web服务的开放端口;
对所述渗透测试目标的开放端口中服务类型为web服务的开放端口实施web系统指纹扫描,获取渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息;
所述获取渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息之后,还包括:
在电力web业务系统库中寻找与渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息一致的标准指纹信息,并将该标准指纹信息的电力业务系统类型作为渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息所对应的电力业务系统类型信息;
所述基于所述渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息探测渗透测试目标的疑似漏洞信息,包括:
若所述渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息与漏洞指纹信息库中标准指纹信息相同,则该渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息所对应的漏洞信息为渗透测试目标的疑似漏洞信息,否则,该渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息所对应的漏洞信息不为渗透测试目标的疑似漏洞信息;
所述渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息所对应的漏洞信息,包括:
所述渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息所对应的端口位置以及与所述渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息相同的标准指纹信息所对应的漏洞数字编号、漏洞名称、漏洞描述、漏洞所属类别、漏洞扫描手段分类和漏洞解决办法;
所述渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息,包括:所述渗透测试目标中服务类型为web服务的开放端口的web系统headers、Set-Cookie、X-Powered-CMS、html、icon、implies、script和website;
所述漏洞验证脚本树的生成过程,包括:
S1:构建基于A3C强化学习技术的靶机模型,并定义奖励函数以及损失函数;
S2:利用电力web系统的漏洞利用脚本构建动作集;
S3:基于已知漏洞信息的状态信息构建状态集;
S4:基于所述奖励函数、损失函数、动作集和状态集对靶机模型进行训练;
S5:获取靶机模型训练过程中能够输出的漏洞利用脚本序列的已知漏洞信息,并将该漏洞利用脚本序列和该已知漏洞信息的状态信息以树形结构进行存储,生成漏洞验证脚本树;
S6:获取靶机模型训练过程中无法输出的漏洞利用脚本序列的已知漏洞信息,并从漏洞验证数据库中调用该已知漏洞信息对应的漏洞利用脚本序列,并将该已知漏洞信息的状态信息以及该已知漏洞信息对应的漏洞利用脚本序列以树形结构补充至漏洞验证脚本树中。
2.如权利要求1所述的方法,其特征在于,所述获取渗透测试目标的开放端口,包括:
若渗透测试目标的IP地址为URL地址或单个IP地址,则采用无状态扫描技术扫描该IP地址下全部端口,获取渗透测试目标的开放端口;
若渗透测试目标的IP地址为网段,则采用目标地址随机化技术在所述网段下全部端口中随机选择一个端口,并采用无状态扫描技术扫描该端口,直至网段下全部端口扫描完毕,获取渗透测试目标的开放端口。
3.如权利要求1所述的方法,其特征在于,所述对所述渗透测试目标的开放端口实施端口服务扫描,获取所述渗透测试目标的开放端口中服务类型为web服务的开放端口,包括:
采用目标地址随机化技术在渗透测试目标的全部开放端口中随机选择一个端口,并采取无状态扫描技术扫描该端口,直至渗透测试目标的全部开放端口扫描完成,获取所述渗透测试目标的开放端口中服务类型为web服务的开放端口。
4.如权利要求1所述的方法,其特征在于,所述基于漏洞验证脚本树对渗透测试目标的疑似漏洞信息进行验证,获取渗透测试目标的漏洞信息,包括:
从渗透测试目标的疑似漏洞信息对应的web系统指纹信息中提取操作系统类型信息、服务名称信息、服务版本信息和渗透测试模块信息;
将提取的操作系统类型信息、服务名称信息、服务版本信息和渗透测试模块信息和与渗透测试目标的疑似漏洞信息对应的web系统指纹信息对应的电力业务系统类型信息作为渗透测试目标的疑似漏洞信息的状态信息;
若漏洞验证脚本树中存在该渗透测试目标的疑似漏洞信息的状态信息对应的漏洞利用脚本序列,则该渗透测试目标的疑似漏洞信息为渗透测试目标的漏洞信息,否则,该渗透测试目标的疑似漏洞信息不为渗透测试目标的漏洞信息。
5.一种针对电力web系统的漏洞探测系统,其特征在于,所述系统包括:第一获取模块,用于获取渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息;探测模块,用于基于所述渗透测试目标中服务类型为web服务的开放端口的web系统指纹信息探测渗透测试目标的疑似漏洞信息;第二获取模块,用于基于预先生成的漏洞验证脚本树对渗透测试目标的疑似漏洞信息进行验证,获取渗透测试目标的漏洞信息;所述漏洞验证脚本树的获取过程,包括:S1:构建基于A3C强化学习技术的靶机模型,并定义奖励函数以及损失函数;
S2:利用电力web系统的漏洞利用脚本构建动作集;
S3:基于已知漏洞信息的状态信息构建状态集;
S4:基于所述奖励函数、损失函数、动作集和状态集对靶机模型进行训练;
S5:获取靶机模型训练过程中能够输出的漏洞利用脚本序列的已知漏洞信息,并将该漏洞利用脚本序列和该已知漏洞信息的状态信息以树形结构进行存储,生成漏洞验证脚本树;
S6:获取靶机模型训练过程中无法输出的漏洞利用脚本序列的已知漏洞信息,并从漏洞验证数据库中调用该已知漏洞信息对应的漏洞利用脚本序列,并将该已知漏洞信息的状态信息以及该已知漏洞信息对应的漏洞利用脚本序列以树形结构补充至漏洞验证脚本树中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010490217.0A CN111884989B (zh) | 2020-06-02 | 2020-06-02 | 一种针对电力web系统的漏洞探测方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010490217.0A CN111884989B (zh) | 2020-06-02 | 2020-06-02 | 一种针对电力web系统的漏洞探测方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111884989A CN111884989A (zh) | 2020-11-03 |
CN111884989B true CN111884989B (zh) | 2023-07-21 |
Family
ID=73154131
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010490217.0A Active CN111884989B (zh) | 2020-06-02 | 2020-06-02 | 一种针对电力web系统的漏洞探测方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111884989B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112667522B (zh) * | 2021-01-19 | 2023-11-07 | 深圳融安网络科技有限公司 | 渗透测试方法、装置、终端设备以及计算机可读存储介质 |
CN112968887B (zh) * | 2021-02-02 | 2022-09-27 | 中国农业银行股份有限公司 | 数据处理方法、数据处理装置及相关设备 |
CN113542270A (zh) * | 2021-07-14 | 2021-10-22 | 山东林天信息科技有限责任公司 | 一种互联网资产指纹快速探测方法与系统 |
CN113949748B (zh) * | 2021-10-15 | 2023-11-28 | 北京知道创宇信息技术股份有限公司 | 一种网络资产识别方法、装置、存储介质及电子设备 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103065095A (zh) * | 2013-01-29 | 2013-04-24 | 四川大学 | 一种基于指纹识别技术的web漏洞扫描方法和漏洞扫描器 |
CN104363236A (zh) * | 2014-11-21 | 2015-02-18 | 西安邮电大学 | 一种自动化漏洞验证的方法 |
CN104751056A (zh) * | 2014-12-19 | 2015-07-01 | 中国航天科工集团第二研究院七〇六所 | 一种基于攻击库的漏洞验证系统与方法 |
CN106295335A (zh) * | 2015-06-11 | 2017-01-04 | 中国科学院信息工程研究所 | 一种面向嵌入式设备的固件漏洞检测方法及系统 |
CN106973071A (zh) * | 2017-05-24 | 2017-07-21 | 北京匡恩网络科技有限责任公司 | 一种漏洞扫描方法和装置 |
CN107294975A (zh) * | 2017-06-27 | 2017-10-24 | 四维创智(北京)科技发展有限公司 | 一种基于信息收集的Web安全漏洞检测系统及检测方法 |
CN108200029A (zh) * | 2017-12-27 | 2018-06-22 | 北京知道创宇信息技术有限公司 | 漏洞态势检测方法、装置、服务器及可读存储介质 |
CN109190380A (zh) * | 2018-08-20 | 2019-01-11 | 杭州安恒信息技术股份有限公司 | 基于web指纹实现批量站点漏洞快速检测的方法及系统 |
CN110716872A (zh) * | 2019-09-23 | 2020-01-21 | 广州海颐信息安全技术有限公司 | 电能计量自动化设备的漏洞挖掘系统及方法 |
CN110881024A (zh) * | 2019-08-14 | 2020-03-13 | 奇安信科技集团股份有限公司 | 漏洞的探测方法及装置、存储介质、电子装置 |
-
2020
- 2020-06-02 CN CN202010490217.0A patent/CN111884989B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103065095A (zh) * | 2013-01-29 | 2013-04-24 | 四川大学 | 一种基于指纹识别技术的web漏洞扫描方法和漏洞扫描器 |
CN104363236A (zh) * | 2014-11-21 | 2015-02-18 | 西安邮电大学 | 一种自动化漏洞验证的方法 |
CN104751056A (zh) * | 2014-12-19 | 2015-07-01 | 中国航天科工集团第二研究院七〇六所 | 一种基于攻击库的漏洞验证系统与方法 |
CN106295335A (zh) * | 2015-06-11 | 2017-01-04 | 中国科学院信息工程研究所 | 一种面向嵌入式设备的固件漏洞检测方法及系统 |
CN106973071A (zh) * | 2017-05-24 | 2017-07-21 | 北京匡恩网络科技有限责任公司 | 一种漏洞扫描方法和装置 |
CN107294975A (zh) * | 2017-06-27 | 2017-10-24 | 四维创智(北京)科技发展有限公司 | 一种基于信息收集的Web安全漏洞检测系统及检测方法 |
CN108200029A (zh) * | 2017-12-27 | 2018-06-22 | 北京知道创宇信息技术有限公司 | 漏洞态势检测方法、装置、服务器及可读存储介质 |
CN109190380A (zh) * | 2018-08-20 | 2019-01-11 | 杭州安恒信息技术股份有限公司 | 基于web指纹实现批量站点漏洞快速检测的方法及系统 |
CN110881024A (zh) * | 2019-08-14 | 2020-03-13 | 奇安信科技集团股份有限公司 | 漏洞的探测方法及装置、存储介质、电子装置 |
CN110716872A (zh) * | 2019-09-23 | 2020-01-21 | 广州海颐信息安全技术有限公司 | 电能计量自动化设备的漏洞挖掘系统及方法 |
Non-Patent Citations (3)
Title |
---|
大规模网络高速扫描系统的设计与实现;郝科委等;《智能计算机与应用》;20180803(第05期);第1-6页 * |
电力监控系统漏洞隐患排查及风险管理技术研究;梁宁波;《自动化博览》;20191115;全文 * |
联网工业控制系统主动感知预警技术研究;马强等;《信息技术与网络安全》;20180110(第01期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN111884989A (zh) | 2020-11-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111884989B (zh) | 一种针对电力web系统的漏洞探测方法和系统 | |
CN110324310B (zh) | 网络资产指纹识别方法、系统及设备 | |
CN110719291B (zh) | 一种基于威胁情报的网络威胁识别方法及识别系统 | |
CN108471429B (zh) | 一种网络攻击告警方法及系统 | |
CN108833186B (zh) | 一种网络攻击预测方法及装置 | |
CN108881265B (zh) | 一种基于人工智能的网络攻击检测方法及系统 | |
CN108881263B (zh) | 一种网络攻击结果检测方法及系统 | |
CN111400722B (zh) | 扫描小程序的方法、装置、计算机设备和存储介质 | |
CN108833185B (zh) | 一种网络攻击路线还原方法及系统 | |
CN110290522B (zh) | 用于移动设备的风险识别方法、装置和计算机系统 | |
CN109871696A (zh) | 一种漏洞信息的自动收集与漏洞扫描系统及方法、计算机 | |
CN113032792A (zh) | 系统业务漏洞检测方法、系统、设备及存储介质 | |
CN112818352B (zh) | 数据库的检测方法及装置、存储介质及电子装置 | |
CN114157450B (zh) | 基于物联网蜜罐的网络攻击诱导方法及装置 | |
US20230418943A1 (en) | Method and device for image-based malware detection, and artificial intelligence-based endpoint detection and response system using same | |
CN114826663B (zh) | 蜜罐识别方法、装置、设备及存储介质 | |
CN113542227A (zh) | 账号安全防护方法、装置、电子装置和存储介质 | |
CN113067812A (zh) | Apt攻击事件溯源分析方法、装置和计算机可读介质 | |
CN109450880A (zh) | 基于决策树的钓鱼网站检测方法、装置及计算机设备 | |
CN116566674A (zh) | 自动化渗透测试方法、系统、电子设备及存储介质 | |
Djanali et al. | SQL injection detection and prevention system with raspberry Pi honeypot cluster for trapping attacker | |
CN112307464A (zh) | 诈骗识别方法、装置及电子设备 | |
CN115550049A (zh) | 一种物联网设备的漏洞检测方法及系统 | |
CN109474567B (zh) | Ddos攻击溯源方法、装置、存储介质及电子设备 | |
CN115643044A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |