[发明专利]一种基于AI的自动化渗透测试系统的后渗透方法有效
申请号: | 202010303509.9 | 申请日: | 2020-04-17 |
公开(公告)号: | CN111488586B | 公开(公告)日: | 2023-08-11 |
发明(设计)人: | 谢鑫;刘兵;周欢;李克萌;何础成;董昊辰 | 申请(专利权)人: | 北京墨云科技有限公司 |
主分类号: | G06F21/57 | 分类号: | G06F21/57;G06F16/951;G06N3/0499;G06N3/084 |
代理公司: | 北京巨弘知识产权代理事务所(普通合伙) 11673 | 代理人: | 赵洋 |
地址: | 100085 北京市海*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 ai 自动化 渗透 测试 系统 方法 | ||
1.一种基于AI的自动化渗透测试系统的后渗透方法,其特征在于:包括以下步骤:
S1、后渗透模块(300)识别当前shell为普通权限后,自动通过漏洞利用进行提权;
S2、所述后渗透模块(300)自动从内存中提取账号密码数据;
S3、所述后渗透模块(300)自动对文件系统进行遍历,专项智能模块(430)根据所述文件系统的内容识别敏感数据的文件,提取和生成所述敏感信息;
S4、决策大脑模块(420)根据所述敏感信息进行判断是否需要进行迭代攻击,若判断为是则返回迭代攻击判断,若判断为否则进入步骤S5;
S5、所述决策大脑模块(420)判断是否进行跳板攻击,若判断为是则针对相邻目标网络返回攻击面和情报数据、漏洞信息收集,若判断为否则进入渗透测试报告生成;
攻击面和情报信息、漏洞信息收集包括以下步骤:
S21、决策大脑模块判断渗透测试任务的类型,当设定的目标为IP地址或IP地址段时进入步骤S22,当设定的目标为URL或域名时进入步骤S23;
S22、决策大脑模块生成驱动指令并传送至信息收集模块,信息收集模块根据驱动指令对网络目标的端口和服务进行扫描,检测所有可能的WEB应用入口,进入步骤S24;
S23、决策大脑模块生成驱动指令并传送至信息收集模块,信息收集模块反查所述网络目标的IP地址,并对网络目标的端口和服务进行扫描,检测所有可能的WEB应用入口,进入步骤S24;
S24、当存在URL或域名入口时,决策大脑模块生成驱动指令并将驱动指令传送至爬虫模块,爬虫模块根据驱动指令进行全量URL爬取和页面HTML代码内容爬取,并将爬取数据传送至专项智能模块;
S25、专项智能模块对页面HTML代码进行情报识别与提取,为爆破模块和渗透攻击模块提供情报数据;
S26、当存在域名时,决策大脑模块生成驱动指令并将驱动指令传送至爆破模块,爆破模块根据驱动指令、情报数据和域名字典进行子域名爆破,将数据传送至漏洞扫描模块;
S27、当存在URL路径时,决策大脑模块生成驱动指令并将驱动指令传送至爆破模块,爆破模块根据驱动指令、情报数据和URL路径字典进行URL路径爆破,将数据传送至漏洞扫描模块;
S28、当存在SMB、Rlogin、RDP、ftp、telnet、SSH、SNMP、数据库服务、管理后台和webshell等访问入口时,决策大脑模块生成驱动指令并将驱动指令传送至爆破模块,爆破模块根据驱动指令、情报数据和弱口令字典进行弱口令爆破,若当登录页面存在一次性验证码时,图灵对抗模块对验证码进行识别和自动填写,将数据传送至漏洞扫描模块;
S29、漏洞扫描模块对目标IP、域名或URL进行系统漏洞扫描、web应用漏洞扫描和安全配置扫描,生成漏洞信息并将漏洞信息传送至人工智能模块;
基于AI的自动化渗透测试系统包括:
信息收集模块(100):用于对网络目标进行攻击面和情报信息采集,用于分析和生成所述网络目标存在的漏洞信息,用于将所述攻击面和情报信息、所述漏洞信息传送至渗透攻击模块(200)和人工智能模块(400),用于接收所述人工智能模块(400)传送的驱动指令;所述信息收集模块(100)包括:
爬虫模块(110):用于针对所述网络目标的域名或WEB应用类目标通过广度优先或深度优先策略全量爬取静态页面和动态页面,用于对所述静态页面和所述动态页面的HTML页面代码内容进行识别并分析可以用于攻击的所述攻击面和情报信息,用于将所述攻击面和情报信息传送至漏洞扫描模块(130),用于接收所述人工智能模块(400)传送的所述驱动指令;
爆破模块(120):用于通过子域爆破、URL爆破、路径爆破、弱口令爆破和webshell爆破对所述网络目标的域名、URL路径、弱口令和webshell入口进行爆破并获取所述攻击面和情报信息,用于将所述攻击面和情报信息传送至所述漏洞扫描模块(130),用于接收所述人工智能模块(400)传送的所述驱动指令;
漏洞扫描模块(130):用于接收所述爬虫模块(110)传送的所述攻击面和情报信息,用于接收所述爆破模块(120)传送的所述攻击面和情报信息,用于根据所述攻击面和情报信息对所述网络目标进行漏洞扫描并生成所述漏洞信息,用于将所述攻击面和情报信息、所述漏洞信息传送至所述渗透攻击模块(200),用于接收所述人工智能模块(400)传送的所述驱动指令;
渗透攻击模块(200):用于接收所述信息收集模块(100)传送的所述攻击面和情报信息、所述漏洞信息,用于对所述漏洞信息进行验证并利用所述漏洞信息对所述网络目标进行攻击,获取所述网络目标的访问权或信息,并将所述访问权或信息传送至后渗透模块(300)和所述人工智能模块(400),用于接收所述人工智能模块(400)传送的驱动指令;
后渗透模块(300):用于接收所述渗透攻击模块(200)传送的所述访问权或信息,用于对所述网络目标进行提权和提取情报信息,用于对所述网络目标关联网络中的其它对象进行探测和跳板攻击,用于将权限信息和所述情报信息传送至所述人工智能模块(400),用于接收所述人工智能模块(400)传送的驱动指令;
人工智能模块(400):用于接收所述信息收集模块(100)传送的所述攻击面和情报信息、所述漏洞信息,用于接收所述渗透攻击模块(200)传送的所述网络目标的访问权或信息,用于接收所述后渗透模块(300)传送的所述权限信息和所述情报信息,用于根据所述攻击面和情报信息、所述漏洞信息、所述访问权或信息、所述权限信息和所述情报信息生成攻击方法并根据所述攻击方法生成驱动指令,用于向所述信息收集模块(100)、所述渗透攻击模块(200)和所述后渗透模块(300)发送驱动指令;所述人工智能模块(400)包括:
专家系统模块(410):用于存储决策知识,用于将所述决策知识传送至决策大脑模块(420);
决策大脑模块(420):用于接收所述专家系统模块(410)传送的所述决策知识,用于根据所述决策知识进行攻击建模,用于接收所述信息收集模块传送的所述攻击面和情报信息、所述漏洞信息,用于接收所述渗透攻击模块(200)传送的所述网络目标的访问权或信息,用于接收所述后渗透模块(300)传送的所述权限信息和所述情报信息,用于将所述攻击面和情报信息、所述漏洞信息、所述网络目标的访问权或信息、所述权限信息和所述情报信息输入所述攻击建模生成驱动指令,用于向所述信息收集模块(100)、所述渗透攻击模块(200)和所述后渗透模块(300)发送驱动指令;
专项智能模块(430):用于根据不同场景向所述决策大脑模块提供决策支撑;所述专项智能模块(430)包括:
信息收集决策模块(431):用于对攻击面和情报信息收集过程进行决策;
图灵对抗模块(432):用于对WEB应用系统登录界面中的字符验证码进行识别;
情报识别与提取模块(433):根据所述情报信息,识别和提取对攻击有帮助的情报数据;
指纹分析决策模块(434):当所述网络目标指纹、版本信息被修改以隐藏系统真实信息时,基于多维指纹信息分析,进行模糊决策,以匹配更多可以使用的攻击组件;
数据解析与攻击载荷生成决策模块(435):根据攻击目标和网络环境信息,综合决策,拼接和动态调整参数以生成攻击载荷;对于WEB应用,对URL的数据结构进行解释,以生成针对性的漏洞利用和攻击载荷;并根据每次攻击执行后返回的结果,判断攻击是否正确,分析攻击失败的原因,并为下一次攻击载荷生成决策提供依据;
漏洞风险优先级重置模块(500):用于根据所述漏洞对所述网络目标造成的实际风险进行风险值计算,根据漏洞的CVSS值、漏洞利用是否成功、漏洞利用成功后所造成的风险和基于所述漏洞的迭代利用最终造成的风险对所述风险值进行调整,用于根据调整后的所述风险值对所述漏洞的危险度进行排序;
渗透测试报告模块(600):用于根据所述人工智能模块(400)和所述漏洞风险优先级重置模块(500)的输出数据生成渗透测试报告。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京墨云科技有限公司,未经北京墨云科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010303509.9/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种回填工业危险废物的岩洞的施工方法
- 下一篇:一种氧化铝及其制备方法和用途