本发明涉及安全检测领域,特别涉及一种渗透测试的测试方法及测试系统。
背景技术:
1、在现代信息技术飞速发展的背景下,网络安全已成为一个极具挑战的领域。针对日益增加的网络攻击威胁,渗透测试被广泛应用于评估和提升信息系统的安全性。然而,现有的自动化和人工渗透测试方法在效率和安全性方面均面临诸多限制。
2、当前市场上的自动化渗透测试工具通常依赖预设的脚本和固定流程。这种方法虽然在一定程度上简化了渗透测试的执行,但仍然严重依赖于人工的干预和配置。这使得渗透测试的效果往往取决于测试人员的专业知识和经验水平,导致测试结果的不确定性和可变性,难以达到标准化和量化评估的要求。因此,存在待改进之处。
技术实现思路
1、本发明的目的在于提供一种渗透测试的测试方法及测试系统,能够提升渗透测试的效率与安全性。
2、为解决上述技术问题,本发明是通过以下技术方案实现的:
3、本发明提供了一种渗透测试的测试方法,包括:
4、获取信息更新事件,判断所述信息更新事件的类型:
5、当所述信息更新事件为固有信息更新事件时,根据所述固有信息更新事件的更新内容,选择并执行对应的固有测试任务,在完成固有测试任务之后,更新对应的资产业务信息,并发布业务信息更新事件;
6、当所述信息更新事件为业务信息更新事件时,根据所述业务信息更新事件的更新内容,选择并执行对应的业务测试任务,在完成业务测试任务之后,进入后渗透流程;
7、在进入所述后渗透流程之后,对对应的电子设备进行后渗透测试。
8、在本发明一实施例中,所述获取信息更新事件的步骤包括:
9、探测目标网络中电子设备的网络资产信息;
10、当扫描到的新的网络资产信息时,更新对应的资产固有信息或资产业务信息,并发布对应的固有信息更新事件或业务信息更新事件。
11、在本发明一实施例中,所述根据所述固有信息更新事件的更新内容,选择并执行对应的固有测试任务,在完成固有测试任务之后,更新对应的资产业务信息,并发布业务信息更新事件的步骤包括:
12、判断所述固有信息更新事件对应的资产固有信息的更新内容:
13、在所述资产固有信息的更新内容包括ip地址、端口以及通信协议中的一个时,根据更新内容选择并执行密码碰撞测试任务,在完成所述密码碰撞测试任务之后,更新对应的资产业务信息,并发布对应的业务信息更新事件;
14、在所述资产固有信息的更新内容包括网站信息的协议类型时,根据更新内容选择并执行爬虫测试任务,在完成所述爬虫测试任务之后,更新对应的资产业务信息,并发布对应的业务信息更新事件。
15、在本发明一实施例中,所述在所述资产固有信息的更新内容包括ip地址、端口以及通信协议中的一个时,根据更新内容选择并执行密码碰撞测试任务,在完成所述密码碰撞测试任务之后,更新对应的资产业务信息,并发布对应的业务信息更新事件的步骤包括:
16、判断对应的电子设备是否需要通过密码登陆:
17、若不需要通过密码登陆,则通过测试;若需要通过密码登陆,根据所述资产固有信息的ip地址、端口以及通信协议的更新内容选择并执行密码碰撞测试任务,根据预设的密码库中的密码数据依次进行登陆,并判断是否登陆成功:
18、若登陆失败,则通过测试;
19、若登陆成功,则根据登陆成功的用户名及密码数据更新对应的资产业务信息,并发布对应的业务信息更新事件。
20、在本发明一实施例中,所述在所述资产固有信息的更新内容包括网站信息的协议类型时,根据更新内容选择并执行爬虫测试任务,在完成所述爬虫测试任务之后,更新对应的资产业务信息,并发布对应的业务信息更新事件的步骤包括:
21、判断所述资产固有信息的网站信息的协议类型:
22、若所述协议类型不是基于超文本传输协议的协议,则通过测试;若所述协议类型是基于超文本传输协议的协议,则根据所述超文本传输协议的协议选择并执行爬虫测试任务,并判断是否爬取到网络资源标识符及其参数:
23、若未爬取到所述网络资源标识符及其参数,则通过测试;
24、若爬取到所述网络资源标识符及其参数,则根据所述网络资源标识符及其参数的更新内容更新对应的资产业务信息,并发布对应的业务信息更新事件。
25、在本发明一实施例中,所述当所述信息更新事件为业务信息更新事件时,根据所述业务信息更新事件的更新内容,选择并执行对应的业务测试任务,在完成业务测试任务之后,进入后渗透流程的步骤包括:
26、判断所述业务信息更新事件对应的资产业务信息的更新内容:
27、在所述资产业务信息的更新内容包括网络资源标识符及其参数中的一个时,根据更新内容选择并执行模糊测试任务,并在完成所述模糊测试任务之后,进入后渗透流程;
28、在所述资产业务信息的更新内容包括用户名及密码数据中的一个时,根据更新内容选择并执行登陆渗透测试任务,并在完成所述登陆渗透测试任务之后,进入后渗透流程。
29、在本发明一实施例中,所述在所述资产业务信息的更新内容包括网络资源标识符及其参数中的一个时,根据更新内容选择并执行模糊测试任务,并在完成所述模糊测试任务之后,进入后渗透流程的步骤包括:
30、判断所述资产业务信息的网络资源标识符及其参数是否更新:
31、若未更新,则通过测试;若更新,则根据更新后的网络资源标识符选择并执行模糊测试任务,并判断是否检测到模糊测试风险;
32、若未检测,则通过测试;
33、若检测到,则获取对应的模糊测试风险,以进入后渗透流程。
34、在本发明一实施例中,所述在所述资产业务信息的更新内容包括用户名及密码数据中的一个时,根据更新内容选择并执行登陆渗透测试任务,并在完成所述登陆渗透测试任务之后,进入后渗透流程的步骤包括:
35、判断所述资产业务信息的用户名及密码数据是否更新:
36、若未更新,则通过测试;若更新,则根据更新后的用户名及密码数据选择并执行登陆渗透测试任务,并判断是否成功登陆渗透:
37、若未成功登陆渗透,则通过测试;
38、若成功登陆渗透,则进入后渗透流程。
39、在本发明一实施例中,所述方法还包括:
40、将所述信息更新事件当中的固有信息更新内容和/或业务信息更新内容与预设的漏洞库进行比较:
41、当漏洞库中不存在漏洞内容与所述固有信息更新内容和/或业务信息更新内容一致时,则通过测试;
42、否则,则根据一致的漏洞内容,选择并执行漏洞利用测试任务,并判断是否成功利用对应的漏洞:
43、若未成功利用,则通过测试;
44、若成功利用,则获取对应的漏洞,以进入后渗透流程。
45、本发明还提供了一种渗透测试的测试系统,包括:
46、判断模块,用于获取信息更新事件,判断所述信息更新事件的类型:
47、第一测试模块,用于当所述信息更新事件为固有信息更新事件时,根据所述固有信息更新事件的更新内容,选择并执行对应的固有测试任务,在完成固有测试任务之后,更新对应的资产业务信息,并发布业务信息更新事件;
48、第二测试模块,用于当所述信息更新事件为业务信息更新事件时,根据所述业务信息更新事件的更新内容,选择并执行对应的业务测试任务,在完成业务测试任务之后,进入后渗透流程;以及
49、后渗透模块,用于在进入所述后渗透流程之后,对对应的电子设备进行后渗透测试。
50、如上所述,本发明提供一种渗透测试的测试方法及测试系统,通过采用事件更新和消息发布-订阅机制,将渗透测试的各个步骤相互解耦,使得渗透测试过程中的每一个步骤更为独立,从而极大增强了渗透测试流程的灵活性和扩展性。渗透测试步骤不再依赖于上一步的结果,而是与当前收集到的资产信息相关,即,策略的选择是基于信息的动态增长而非静态状态。这种灵活的策略调整使渗透测试能够快速响应信息变化,充分利用新增长的信息,从而有效识别潜在新的突破点。由于步骤的动态介入条件,渗透测试的适应性显著提升,测试方法可以根据实时收集的信息动态调整测试步骤,提升测试的效率和效果。
51、当然,实施本发明的任一产品并不一定需要同时达到以上所述的所有优点。