CN110851841A - 渗透测试方法、设备及存储介质 - Google Patents

渗透测试方法、设备及存储介质 Download PDF

Info

Publication number
CN110851841A
CN110851841A CN201911172265.9A CN201911172265A CN110851841A CN 110851841 A CN110851841 A CN 110851841A CN 201911172265 A CN201911172265 A CN 201911172265A CN 110851841 A CN110851841 A CN 110851841A
Authority
CN
China
Prior art keywords
functional module
target system
module
target
functional
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.)
Granted
Application number
CN201911172265.9A
Other languages
English (en)
Other versions
CN110851841B (zh
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.)
Xi'an Seclover Information Technology Co Ltd
Original Assignee
Xi'an Seclover Information Technology Co Ltd
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 Xi'an Seclover Information Technology Co Ltd filed Critical Xi'an Seclover Information Technology Co Ltd
Priority to CN201911172265.9A priority Critical patent/CN110851841B/zh
Publication of CN110851841A publication Critical patent/CN110851841A/zh
Application granted granted Critical
Publication of CN110851841B publication Critical patent/CN110851841B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1433Vulnerability analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/577Assessing vulnerabilities and evaluating computer system security

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本公开提供一种渗透测试方法、设备及存储介质,涉及信息安全技术领域,能够解决现有渗透测试耗时费力的问题,实现渗透测试的自动化,提高渗透测试质量。具体技术方案为:获取目标系统的地址信息和目标系统的特征信息;根据目标系统的特征信息从功能模块库中选择对应的功能模块,功能模块库包括多个互不相同的功能模块;将选择的功能模块按照预设规则组成目标系统的目标攻击链;根据目标系统的地址信息作和目标攻击链对目标系统进行渗透测试。本发明用于渗透测试。

Description

渗透测试方法、设备及存储介质
技术领域
本公开涉及信息安全技术领域,尤其涉及渗透测试方法、设备及存储介质。
背景技术
渗透测试是通过模拟恶意黑客的攻击方法来评估计算机网络安全的一种评估方法,这个过程包括对系统的任何弱点、技术缺陷或漏洞的主动分析,这个分析是从一个攻击者可能存在的位置来进行的,并且从这个位置有条件主动利用安全漏洞。换句话说,渗透测试是指渗透人员在不同的位置(如从内网、从外网等位置)利用各种手段对某个特定网络进行测试,以期发现和挖掘系统中存在的漏洞,然后输出渗透测试报告并提交给网络所有者。网络所有者根据渗透测试人员提供的渗透测试报告可以清晰知晓系统中存在的安全隐患和问题。
目前渗透测试人员在执行渗透测试任务时,一般是使用工具对特定的点进行渗透测试,而后将该工具输出的结果进行手工记录,再进行一系列的人工转换后输入到另一个工具中,进行下一个点的渗透测试。这样的渗透测试不仅耗时费力,而且导致渗透测试人员无法集中精力进行业务系统的渗透,进而降低了渗透测试的工作质量。
发明内容
本公开实施例提供一种渗透测试方法、设备及存储介质,能够解决现有渗透测试耗时费力的问题,实现渗透测试的自动化,提高渗透测试质量。所述技术方案如下:
根据本公开实施例的第一方面,提供一种渗透测试方法,该方法包括:
获取目标系统的地址信息和目标系统的特征信息;
根据目标系统的特征信息从功能模块库中选择对应的功能模块,功能模块库包括多个互不相同的功能模块;
将选择的功能模块按照预设规则组成目标系统的目标攻击链;
根据目标系统的地址信息作和目标攻击链对目标系统进行渗透测试。
本公开针对目标系统的具体特征选择对应攻击模块,定制符合具体目标的攻击链,实现攻击链中不同功能模块的数据交互,解决现有渗透测试耗时费力的问题,实现渗透测试的自动化,提高渗透测试质量。
在一个实施例中,将选择的功能模块按照预设规则组成目标系统的攻击链包括:
获取第一功能模块的输出数据声明和第二功能模块的输入数据声明,输入数据声明用于指示功能模块所能接收的输入数据的类型和数据用途,输出数据声明用于指示功能模块所能输出的输出数据的类型和数据用途,第一功能模块位于第二功能模块的上游;
在第一功能模块的输出数据声明与第一功能模块第二的功能模块的输入数据声明匹配时,将第一功能模块与第二功能模块连通。
在一个实施例中,在第一功能模块的输出数据声明与第一功能模块第二的功能模块的输入数据声明匹配时,将第一功能模块与第一功能模块第二的功能模块连通包括:
判断第一功能模块的输出数据的类型是否与第二功能模块的输入数据的类型是否相同,且第二功能模块的输出数据的数据用途是否包含第一功能模块的输出数据的数据用途;
在第一功能模块的输出数据的类型与第二功能模块的输入数据的类型相同,且第二功能模块的输出数据的数据用途包含第一功能模块的输出数据的数据用途时,将第一功能模块与第一功能模块第二的功能模块连通。
在一个实施例中,该方法还包括:
获取目标攻击链中每个功能模块渗透测试中得到的目标系统的情报信息,情报信息包括服务漏洞信息、web漏洞信息、系统开放服务;
保存目标系统的情报信息。
在一个实施例中,该方法还包括:
接收管理终端发送的用户查询指令,查询指令用于指示查询目标系统的情报信息;
根据用户查询指令,将目标系统的情报信息发送给管理终端。
在一个实施例中,将选择的功能模块按照预设规则组成目标系统的目标攻击链的同时,该方法还包括:
接收管理终端发送的用户操作指令;
根据用户操作指令设置目标攻击链中每个功能模块的节点属性,节点属性包括网络发包的间隔时间、网络代理服务器、属性参数。
在一个实施例中,接收管理终端发送的用户操作指令之前,方法还包括:将目标系统的目标攻击链发送给管理终端。
根据本公开实施例的第二方面,提供一种渗透测试装置,包括:
第一获取模块,用于获取目标系统的地址信息和目标系统的特征信息;
选择模块,用于根据目标系统的特征信息从功能模块库中选择对应的功能模块,功能模块库包括多个互不相同的功能模块;
组成模块,用于将选择的功能模块按照预设规则组成目标系统的目标攻击链;
测试模块,用于根据目标系统的地址信息作和目标攻击链对目标系统进行渗透测试。
根据本公开实施例的第三方面,提供一种渗透测试设备,该渗透测试设备包括处理器和存储器,存储器中存储有至少一条计算机指令,指令由处理器加载并执行以实现第一方面以及第一方面的任一实施例所描述的渗透测试方法中所执行的步骤。
根据本公开实施例的第四方面,提供一种计算机可读存储介质,存储介质中存储有至少一条计算机指令,指令由处理器加载并执行以实现第一方面以及第一方面的任一实施例所描述的渗透测试方法中所执行的步骤。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
图1是本公开实施例提供的一种渗透测试方法的流程图;
图2是本公开实施例提供的一种自动化渗透测试系统的逻辑结构示意图;
图3是本公开实施例提供的一种功能模块之间数据流通过程的示意图;
图4是本公开实施例提供的一种攻击链渗透测试执行流程的示意图;
图5是本公开实施例提供的一种攻击链图形展示的示意图;
图6是本公开实施例提供的一种渗透测试设备的结构图;
图7是本公开实施例提供的一种渗透测试设备的结构图;
图8是本公开实施例提供的一种渗透测试设备的结构图;
图9是本公开实施例提供的一种渗透测试设备的结构图;
图10是本公开实施例提供的一种渗透测试设备的结构图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
本公开实施例提供一种渗透测试方法,如图1所示,该渗透测试方法包括以下步骤:
101、获取目标系统的地址信息和目标系统的特征信息。
在本公开实施例中,目标系统的地址信息包括目标系统的URL,目标系统的特征信息用于指示目标系统的特征参数。需要说明的是,目标系统是任意一个待测试系统,本公开只是以目标系统为例表示通过攻击链自动化实现对目标系统的渗透测试进行说明,目标并不代表任何局限。
102、根据目标系统的特征信息从功能模块库中选择对应的功能模块。
功能模块库包括多个互不相同的功能模块。在本公开实施例中,功能模块是针对目标系统中业务关键点的进行攻击的攻击模块。
103、将选择的功能模块按照预设规则组成目标系统的目标攻击链。
目标攻击链存储有完整的渗透测试工作流,还有各个功能模块之间的关系,体现了模块之间的输入输出流向关系。
在本公开实施例中,将选择的功能模块按照预设规则组成目标系统的目标攻击链包括:
获取第一功能模块的输出数据声明和第二功能模块的输入数据声明,输入数据声明用于指示功能模块所能接收的输入数据的类型和数据用途,输出数据声明用于指示功能模块所能输出的输出数据的类型和数据用途,第一功能模块位于第二功能模块的上游;
在第一功能模块的输出数据声明与第一功能模块第二的功能模块的输入数据声明匹配时,将第一功能模块与第一功能模块第二的功能模块连通。
具体的,判断第一功能模块的输出数据的类型是否与第二功能模块的输入数据的类型是否相同,且第二功能模块的输出数据的数据用途是否包含第一功能模块的输出数据的数据用途;
在第一功能模块的输出数据的类型与第二功能模块的输入数据的类型相同,且第二功能模块的输出数据的数据用途包含第一功能模块的输出数据的数据用途时,将第一功能模块与第一功能模块连通。
第一功能模块和第二功能模块隶属于已选择的功能模块,且第一功能模块位于第二功能模块的上游,即第二功能模块位于第一功能模块的下游,在本公开实施例中,上游和下游是相邻的关系。构建攻击链的核心是规范每个功能模块的输入输出,便于将不同的功能模块串联起来,形成数据的流动传递。
在组建目标攻击链的同时,该方法还包括:接收管理终端发送的用户操作指令,用户操作指令用于指示对目标攻击链中的功能模块进行节点属性;根据用户操作指令设置目标攻击链中每个功能模块的节点属性,节点属性包括网络发包的间隔时间、网络代理服务器、属性参数等。当然还可以在攻击链中添加一些决策节点,决策节点根据上游节点的输出数据执行不同的攻击分支。
104、根据目标系统的地址信息作和目标攻击链对目标系统进行渗透测试。
在本公开实施例中,将目标系统的地址信息作为目标攻击链的起始输入,驱动目标攻击链中的第一个功能模块执行,第一个功能模块将产生的输出作为第二个功能模块的输入,驱动第二个功能模块执行,以此类推,执行整个目标攻击链中的所有功能模块。
在目标攻击链的执行过程中,目标攻击链的每个功能模块在渗透测试过程中会持续获取目标系统的情报信息,如服务器漏洞信息、web漏洞信息、系统开放服务等,保存目标系统的情报信息。若目标系统的情报信息可用,则在目标系统上获取shell并存储在shell管理器中。
当用户需要查询目标系统的情报信息时,接收管理终端发送的用户查询指令,查询指令用于指示查询目标系统的情报信息;根据用户查询指令,将目标系统的情报信息发送给管理终端。这样,用户可以随时查询目标系统的所有情报信息。
本公开实施例提供的渗透测试方法,获取目标系统的地址信息和目标系统的特征信息;根据目标系统的特征信息从功能模块库中选择对应的功能模块,功能模块库包括多个互不相同的功能模块;将选择的功能模块按照预设规则组成目标系统的目标攻击链;根据目标系统的地址信息作和目标攻击链对目标系统进行渗透测试。本公开针对目标系统的具体特征选择对应攻击模块,定制符合具体目标的攻击链,实现攻击链中不同功能模块的数据交互,解决现有渗透测试耗时费力的问题,实现渗透测试的自动化,提高渗透测试质量。
基于上述图1对应的实施例提供的渗透测试方法,本公开另一实施例提供一种渗透测试方法,该方法可以应用于如图2所示的完整、高效的可自定义流程的自动化渗透测试系统,该自动化渗透测试系统的核心架构包括功能层、控制层和感知层。其中,感知层包含众多的模块和工具,各个模块针对特定的点进行信息收集或者漏洞攻击利用,是整个系统的实际执行部分;控制层负责对自定义的攻击链进行调度,将不同模块的输入输出规范化,便于不同的模块直接进行数据交互,从而使整个攻击链能够将不同的模块串联起来,数据能在不同模块直接流通,实现自动化的渗透测试任务的开展和执行;功能层负责对渗透项目和任务进行管理,提供攻击链的创建和编辑接口,对攻击链中的模块执行输出进行存储和展示,以及获取到的shell的存储、管理和连接,功能层是整个系统与用户直接交互的子系统,是整个渗透任务流的交互和展示平台。
具体的,参考图2所示,功能层包括项目管理、任务管理、目标管理、漏洞管理、模块管理、报告管理、流程管理、信息收集、威胁建模、漏洞分析、渗透攻击、权限维持、APT(Advanced Persistent Threat,定向威胁攻击)等;控制层包括安全信息数据库、风险建模中心、任务流程控制中心;感知层包括资产搜索引擎、目标识别引擎、信息收集引擎、web2.0爬虫引擎、主机漏洞分析引擎、web漏洞分析引擎、漏洞利用引擎、远控管理引擎、社工信息收集引擎、弱口令检测引擎等。
基于图2所示的自动化渗透测试工具,本公开实施例提供一种可自定义流程的渗透测试方法,具体的,用户根据自己业务系统的需要,自定义自动化渗透测试流程图,设置流程图中各个模块节点工具所附带的属性,同时还根据自己的需求,对不同的情况进行分支操作处理。比如用户需要针对一个OA系统进行渗透测试,由终端设备获取目标系统的地址,渗透测试系统自动运行探测模块,获取到目标系统的特征信息,然后根据特征信息从内置的功能模块自动选择对应的模块,构建针对业务系统进行测试的攻击链,将目标系统的地址作为攻击链的起始输入,驱动攻击链中第一个模块执行,第一个模块产生的输入作为第二个模块的输入,驱动第二个模块执行,从而执行整个攻击链中的所有模块。
下面进行具体描述,用户在工作台进行攻击任务的创建和攻击链的绘制与配置,不同的业务绘制针对性的攻击链,攻击链中选择针对业务关键点相关的工具,并进行针对性的配置。攻击链用来存储完整的渗透测试工作流,还有各个节点模块之间的关系,体现了工具与工具之间的输入输出流向关系。设计好的完整渗透攻击链能够存储起来,在需要的时候选择复用。并且可以将攻击链重新编辑,或者分享给相似业务系统使用。
在攻击链的创建过程中,攻击链的节点属性能够提供针对业务关键点的一些攻击设置值,比如网络发包的间隔时间、网络代理服务、模块自身的属性参数等等。还能在攻击链中添加一些决策节点,来根据上游节点获得的信息执行不同的攻击分支。
在本公开实施例中,构建攻击链的核心是规范每个模块的输入输出,便于将不同的模块串接起来,形成数据的流动传递。参照图3所示简要描述了模块之间数据的流通过程:
每个模块有各自的输入数据声明和输出数据声明,声明表明该模块接受何种输入,输出何种数据;攻击链执行过程中,控制层获取到当前模块的输出数据对应的数据声明,与下游模块的输入数据声明进行比对,如果上游模块的输出可以适配给下游模块作为输入,则这两个模块可以进行数据交互,在攻击链中可以连通;输入输出通过两个维度进行比对和匹配,分别是数据类型和数据的用途,如果上游输出数据类型与下游输入声明的数据类型一样,且上游输出数据的用途可以满足下游输入声明的用途,则适配成功,否则适配失败。通过以上步骤作为基础,满足了不同模块之间进行数据交互的需求,从而可以构建攻击链,进行自动化渗透。
在攻击链的执行过程中,攻击任务会持续产生获取到的目标系统的相关信息,包括前期情报收集,系统开放服务,服务漏洞信息,web漏洞信息,如果有漏洞可利用,会直接在目标系统上尝试获取shell并存储在shell管理器中,用户可以在工作台查看所有的情报信息。
情报库可以将不同节点产生的情报关联起来,进行组合利用,进行复杂的渗透测试动作,核心思想是情报驱动攻击链运行,源源不断挖掘系统中尽可能多的信息,发现其中的缺陷。
基于图2和图3对应实施例所描述的,参照图4所示,简单描述了渗透测试攻击链执行流程:输入待测试业务系统的IP地址,提取业务系统的IP地址的C段;对C段中的每个IP进行端口扫描检测,得到开放端口信息和对应的服务软件信息;再由过滤模块筛选出有HTTP服务端口的IP;将IP转换为可以通过HTTP协议访问的URL格式;交由WEB漏洞扫描模块扫描HTTP应用程序中存在的漏洞;通过过滤模块,将存在任意文件上传漏洞的URL过滤出来;传递给上传shell的模块,在目标机器上创建shell,拿到系统控制权;最后将shell添加到shell管理器中,用于后续的管理和访问。
参照图5所示,简单展示了攻击链图形展示:攻击链由节点和有向连线构成;开始节点标记一个攻击链的数据输入,代表一个自动化渗透测试流程的起点;结束节点标记一个攻击链的结束,代表一个自动化渗透测试流程的终点;有向连线表示模块之间的数据流向,如PORT转URL模块会输出一个URL给SQL注入利用模块;前一个模块输出时,驱动其后面紧接的模块执行,同级别的模块并发同时执行,如图中的mysql弱口令检测和mssql弱口令检测模块在系统识别模块输出的时候可以同时执行;整个图表示了一个自动化的渗透测试流程。
本公开实施例提供一种渗透测试方法,有益效果主要包括:
(1)定制针对性的攻击链
具体包括:针对业务系统定制符合具体目标的攻击流程;针对具体的信息系统设施选择对应的攻击模块;对具体的系统关键点,对对应的模块做具体配置,做到精准打击;存储攻击链,类似业务系统可以复用攻击链,节约渗透测试成本。
(2)以攻促防,先一步发现系统缺陷,防患于未然
现有的对安全事件的处理大部分都是在安全事件发生以后,进行补救措施,这样的方式永远是跟不上攻击者的脚步,处于被动。以渗透测试的方式预先对系统进行攻击测试,发现潜在的缺陷与漏洞,及时修补,便能在防御上先人一步,避免被动。
(3)降低渗透测试的门槛,提高渗透测试的方便程度
目前渗透测试工作一般由非常专业的渗透测试人员进行渗透工作,才能尽可能多的发现系统的缺陷与漏洞,加上没有自动化的流程,每次渗透测试工作大部分是体力活,将一个工具的输出转换为另一个工具的输入,导致渗透测试人员无法集中精力进行业务系统的渗透,进而降低了渗透测试工作的质量。可自定义的自动化渗透测试系统能将渗透测试流程以图形的方式编写和展示,降低了技术门槛,并且能将攻击链存储和分享,攻击链可以重复利用,这样渗透测试人员就不必每次重复同样思路的体力活儿了,而是将精力集中在业务系统的渗透测试上面,从而提高渗透测试工作的质量。
本公开实施例提供一种渗透测试方法,系统对渗透测试流程以攻击链图形的方式展示给用户,用户可以自定义定制针对具体业务系统的攻击链,攻击链中的不同模块可以进行数据交互,且攻击链可以存储和复用,对于系统漏洞,可以最大化利用,获取系统的shell权限。针对不同的业务系统,可自定义的自动化渗透测试系统能够给用户提供自定义攻击方式的功能,配合攻击链节点属性配置,提供了强大而灵活而自动化渗透测试工具。
基于上述图1对应的实施例中所描述的渗透测试方法,下述为本公开装置实施例,可以用于执行本公开方法实施例。
本公开实施例提供一种渗透测试设备,如图6所示,该渗透测试设备60包括:获取模块601、选择模块602、组成模块603和测试模块604;
第一获取模块601,用于获取目标系统的地址信息和目标系统的特征信息;
选择模块602,用于根据目标系统的特征信息从功能模块库中选择对应的功能模块,功能模块库包括多个互不相同的功能模块;
组成模块603,用于将选择的功能模块按照预设规则组成目标系统的目标攻击链;
测试模块604,用于根据目标系统的地址信息作和目标攻击链对目标系统进行渗透测试。
如图7所示,组成模块603包括:获取子模块6031、判断子模块6032和连通子模块6033;
在一个实施例中,获取子模块6031,用于获取第一功能模块的输出数据声明和第二功能模块的输入数据声明,输入数据声明用于指示功能模块所能接收的输入数据的类型和数据用途,输出数据声明用于指示功能模块所能输出的输出数据的类型和数据用途,第一功能模块位于第二功能模块的上游;
连通子模块6033,用于在第一功能模块的输出数据声明与第一功能模块第二的功能模块的输入数据声明匹配时,将第一功能模块与第二功能模块连通。
在一个实施例中,判断子模块6032,用于判断第一功能模块的输出数据的类型是否与第二功能模块的输入数据的类型是否相同,且第二功能模块的输出数据的数据用途是否包含第一功能模块的输出数据的数据用途;
连通子模块6033,用于在第一功能模块的输出数据的类型与第二功能模块的输入数据的类型相同,且第二功能模块的输出数据的数据用途包含第一功能模块的输出数据的数据用途时,将第一功能模块与第一功能模块第二的功能模块连通。
在一个实施例中,如图8所示,该渗透测试设备60还包括:第二获取模块605和存储模块606;
第二获取模块605,用于获取目标攻击链中每个功能模块渗透测试中得到的目标系统的情报信息,情报信息包括服务漏洞信息、web漏洞信息、系统开放服务;
存储模块606,用于保存目标系统的情报信息。
在一个实施例中,如图9所示,该渗透测试设备60还包括:接收模块607和发送模块608;
接收模块607,用于接收管理终端发送的用户查询指令,查询指令用于指示查询目标系统的情报信息;
发送模块608,用于根据用户查询指令,将目标系统的情报信息发送给管理终端。
在一个实施例中,如图10所示,该渗透测试设备60还包括:设置模块609;
接收模块607,用于接收管理终端发送的用户操作指令;
设置模块609,用于根据用户操作指令设置目标攻击链中每个功能模块的节点属性,节点属性包括网络发包的间隔时间、网络代理服务器、属性参数。
在一个实施例中,发送模块608,用于将目标系统的目标攻击链发送给管理终端。
本公开实施例提供的渗透测试设备,获取目标系统的地址信息和目标系统的特征信息;根据目标系统的特征信息从功能模块库中选择对应的功能模块,功能模块库包括多个互不相同的功能模块;将选择的功能模块按照预设规则组成目标系统的目标攻击链;根据目标系统的地址信息作和目标攻击链对目标系统进行渗透测试。本公开针对目标系统的具体特征选择对应攻击模块,定制符合具体目标的攻击链,实现攻击链中不同功能模块的数据交互,解决现有渗透测试耗时费力的问题,实现渗透测试的自动化,提高渗透测试质量。
本公开实施例还提供了一种渗透测试设备,该渗透测试设备包括接收器、发射器、存储器和处理器,该发射器和存储器分别与处理器连接,存储器中存储有至少一条计算机指令,处理器用于加载并执行至少一条计算机指令,以实现上述图1对应的实施例中所描述的渗透测试方法。
基于上述图1对应的实施例中所描述的渗透测试方法,本公开实施例还提供一种计算机可读存储介质,例如,非临时性计算机可读存储介质可以是只读存储器(英文:ReadOnly Memory,ROM)、随机存取存储器(英文:Random Access Memory,RAM)、CD-ROM、磁带、软盘和光数据存储装置等。该存储介质上存储有计算机指令,用于执行上述图1对应的实施例中所描述的渗透测试方法,此处不再赘述。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
本领域技术人员在考虑说明书及实践这里公开的公开后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。

Claims (10)

1.一种渗透测试方法,其特征在于,所述方法包括:
获取目标系统的地址信息和所述目标系统的特征信息;
根据所述目标系统的特征信息从功能模块库中选择对应的功能模块,所述功能模块库包括多个互不相同的功能模块;
将选择的功能模块按照预设规则组成所述目标系统的目标攻击链;
根据所述目标系统的地址信息作和所述目标攻击链对所述目标系统进行渗透测试。
2.根据权利要求1所述的方法,其特征在于,所述将选择的功能模块按照预设规则组成所述目标系统的攻击链包括:
获取第一功能模块的输出数据声明和所述第二功能模块的输入数据声明,所述输入数据声明用于指示功能模块所能接收的输入数据的类型和数据用途,所述输出数据声明用于指示功能模块所能输出的输出数据的类型和数据用途,所述第一功能模块位于所述第二功能模块的上游;
在所述第一功能模块的输出数据声明与所述第一功能模块第二的功能模块的输入数据声明匹配时,将所述第一功能模块与所述第二功能模块连通。
3.根据权利要求1所述的方法,其特征在于,所述在所述第一功能模块的输出数据声明与所述第一功能模块第二的功能模块的输入数据声明匹配时,将所述第一功能模块与所述第一功能模块第二的功能模块连通包括:
判断所述第一功能模块的输出数据的类型是否与所述第二功能模块的输入数据的类型是否相同,且所述第二功能模块的输出数据的数据用途是否包含所述第一功能模块的输出数据的数据用途;
在所述第一功能模块的输出数据的类型与所述第二功能模块的输入数据的类型相同,且所述第二功能模块的输出数据的数据用途包含所述第一功能模块的输出数据的数据用途时,将所述第一功能模块与所述第一功能模块第二的功能模块连通。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取所述目标攻击链中每个功能模块渗透测试中得到的所述目标系统的情报信息,所述情报信息包括服务漏洞信息、web漏洞信息、系统开放服务;
保存所述目标系统的情报信息。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
接收管理终端发送的用户查询指令,所述查询指令用于指示查询所述目标系统的情报信息;
根据所述用户查询指令,将所述目标系统的情报信息发送给所述管理终端。
6.根据权利要求1所述的方法,其特征在于,所述将选择的功能模块按照预设规则组成所述目标系统的目标攻击链的同时,所述方法还包括:
接收管理终端发送的用户操作指令;
根据所述用户操作指令设置所述目标攻击链中每个功能模块的节点属性,所述节点属性包括网络发包的间隔时间、网络代理服务器、属性参数。
7.根据权利要求6所述的方法,其特征在于,所述接收管理终端发送的用户操作指令之前,所述方法还包括:
将所述目标系统的目标攻击链发送给所述管理终端。
8.一种渗透测试设备,其特征在于,包括:
第一获取模块,用于获取目标系统的地址信息和所述目标系统的特征信息;
选择模块,用于根据所述目标系统的特征信息从功能模块库中选择对应的功能模块,所述功能模块库包括多个互不相同的功能模块;
组成模块,用于将选择的功能模块按照预设规则组成所述目标系统的目标攻击链;
测试模块,用于根据所述目标系统的地址信息作和所述目标攻击链对所述目标系统进行渗透测试。
9.一种渗透测试设备,其特征在于,所述渗透测试设备包括处理器和存储器,所述存储器中存储有至少一条计算机指令,所述指令由所述处理器加载并执行以实现权利要求1至权利要求7任一项所述的渗透测试方法中所执行的步骤。
10.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条计算机指令,所述指令由处理器加载并执行以实现权利要求1至权利要求7任一项所述的渗透测试方法中所执行的步骤。
CN201911172265.9A 2019-11-26 2019-11-26 渗透测试方法、设备及存储介质 Active CN110851841B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911172265.9A CN110851841B (zh) 2019-11-26 2019-11-26 渗透测试方法、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911172265.9A CN110851841B (zh) 2019-11-26 2019-11-26 渗透测试方法、设备及存储介质

Publications (2)

Publication Number Publication Date
CN110851841A true CN110851841A (zh) 2020-02-28
CN110851841B CN110851841B (zh) 2022-05-17

Family

ID=69604454

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911172265.9A Active CN110851841B (zh) 2019-11-26 2019-11-26 渗透测试方法、设备及存储介质

Country Status (1)

Country Link
CN (1) CN110851841B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111666572A (zh) * 2020-06-03 2020-09-15 辽宁北方实验室有限公司 一种自动化渗透测试框架
CN111783105A (zh) * 2020-07-08 2020-10-16 国家计算机网络与信息安全管理中心 渗透测试方法、装置、设备及存储介质
CN112351021A (zh) * 2020-10-30 2021-02-09 杭州安恒信息技术股份有限公司 资产风险探测方法、装置、可读存储介质及计算机设备
CN113438244A (zh) * 2021-06-28 2021-09-24 安天科技集团股份有限公司 渗透测试方法、装置、计算设备及存储介质
CN113824676A (zh) * 2020-11-13 2021-12-21 北京沃东天骏信息技术有限公司 针对漏洞的攻击链的确定方法及装置
CN116015881A (zh) * 2022-12-27 2023-04-25 北京天融信网络安全技术有限公司 渗透测试方法、装置、设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2893719A1 (en) * 2012-09-10 2015-07-15 Telefonaktiebolaget LM Ericsson (Publ) Method and system for communication between machine to machine (m2m) service provider networks
US20170289174A1 (en) * 2014-05-06 2017-10-05 Synack, Inc. Security assessment incentive method for promoting discovery of computer software vulnerabilities
CN107426227A (zh) * 2017-08-02 2017-12-01 江苏省邮电规划设计院有限责任公司 一种自动化安全渗透测试方法
CN109120643A (zh) * 2018-10-11 2019-01-01 北京知道创宇信息技术有限公司 渗透测试方法及装置
CN109561112A (zh) * 2019-01-25 2019-04-02 虞定生 一种人工智能实时检测安全攻击系统
CN110221977A (zh) * 2019-06-03 2019-09-10 江苏亨通工控安全研究院有限公司 基于ai的网站渗透测试方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2893719A1 (en) * 2012-09-10 2015-07-15 Telefonaktiebolaget LM Ericsson (Publ) Method and system for communication between machine to machine (m2m) service provider networks
US20150245161A1 (en) * 2012-09-10 2015-08-27 Telefonaktiebolaget L M Ericsson (Publ) Method and System for Communication Between Machine to Machine M2M Service Provider Networks
US20170289174A1 (en) * 2014-05-06 2017-10-05 Synack, Inc. Security assessment incentive method for promoting discovery of computer software vulnerabilities
CN107426227A (zh) * 2017-08-02 2017-12-01 江苏省邮电规划设计院有限责任公司 一种自动化安全渗透测试方法
CN109120643A (zh) * 2018-10-11 2019-01-01 北京知道创宇信息技术有限公司 渗透测试方法及装置
CN109561112A (zh) * 2019-01-25 2019-04-02 虞定生 一种人工智能实时检测安全攻击系统
CN110221977A (zh) * 2019-06-03 2019-09-10 江苏亨通工控安全研究院有限公司 基于ai的网站渗透测试方法

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111666572A (zh) * 2020-06-03 2020-09-15 辽宁北方实验室有限公司 一种自动化渗透测试框架
CN111666572B (zh) * 2020-06-03 2023-07-04 北方实验室(沈阳)股份有限公司 一种自动化渗透测试框架系统
CN111783105A (zh) * 2020-07-08 2020-10-16 国家计算机网络与信息安全管理中心 渗透测试方法、装置、设备及存储介质
CN111783105B (zh) * 2020-07-08 2024-03-29 国家计算机网络与信息安全管理中心 渗透测试方法、装置、设备及存储介质
CN112351021A (zh) * 2020-10-30 2021-02-09 杭州安恒信息技术股份有限公司 资产风险探测方法、装置、可读存储介质及计算机设备
CN113824676A (zh) * 2020-11-13 2021-12-21 北京沃东天骏信息技术有限公司 针对漏洞的攻击链的确定方法及装置
CN113824676B (zh) * 2020-11-13 2024-02-09 北京沃东天骏信息技术有限公司 针对漏洞的攻击链的确定方法及装置
CN113438244A (zh) * 2021-06-28 2021-09-24 安天科技集团股份有限公司 渗透测试方法、装置、计算设备及存储介质
CN116015881A (zh) * 2022-12-27 2023-04-25 北京天融信网络安全技术有限公司 渗透测试方法、装置、设备及存储介质
CN116015881B (zh) * 2022-12-27 2023-08-29 北京天融信网络安全技术有限公司 渗透测试方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN110851841B (zh) 2022-05-17

Similar Documents

Publication Publication Date Title
CN110851841B (zh) 渗透测试方法、设备及存储介质
US10795709B2 (en) Systems and method for deploying, securing, and maintaining computer-based analytic environments
CN110955899B (zh) 安全测试方法、装置、测试设备以及介质
CN110719300B (zh) 一种自动化漏洞验证的方法和系统
CN105302707B (zh) 应用程序的漏洞检测方法和装置
CN105787364B (zh) 任务的自动化测试方法、装置及系统
CN109284611B (zh) 基于Metasploit框架的测试系统及实现网络安全性测试的方法
US11336555B2 (en) Network segmentation effectiveness system and method
CN105204985A (zh) 漏洞检测方法及装置
CN111783105A (zh) 渗透测试方法、装置、设备及存储介质
CN110134612A (zh) Ui测试数据生成方法、装置、设备及可读存储介质
CN110717184A (zh) 一种分布式安全测试系统
CN109186666A (zh) 设备的检测方法、装置、计算机设备和存储介质
CN115883180A (zh) 一种基于知识图谱的自动化渗透测试方法
CN107621963B (zh) 一种软件部署方法、软件部署系统及电子设备
CN115361203A (zh) 一种基于分布式扫描引擎的脆弱性分析方法
CN115296936B (zh) 一种反网络犯罪辅侦的自动化方法及系统
CN111245800A (zh) 基于应用场景的工控网络的网络安全测试方法和装置
CN110427287A (zh) 主板功能测试通用系统及其方法
CN115563618A (zh) 一种基于中央计算平台的渗透测试方法及装置
CN115525897A (zh) 终端设备的系统检测方法、装置、电子装置和存储介质
CN114491555A (zh) 设备安全检测方法、装置、计算机设备和存储介质
CN114143052A (zh) 基于可控入侵模拟的网络防御体系风险评估方法
CN110933041B (zh) 渗透测试方法及相关装置
CN113190836A (zh) 一种基于本地命令执行的web攻击行为检测方法及系统

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