GyoiThon-基于机器学习的渗透测试工具

       GyoiThon是一款基于机器学习的渗透测试工具。GyoiThon根据学习数据识别安装在Web服务器上的软件(操作系统,中间件,框架,CMS等)。之后,GyoiThon为已识别的软件执行有效的攻击。最终,GyoiThon会自动生成扫描结果报告。上述处理均由GyoiThon自动执行。流程如下所示:

第1步:收集HTTP响应

       GyoiThon在抓取时会收集目标网站的几个HTTP响应。以下是GyoiThon获取的HTTP响应示例。如:

HTTP/1.1 200 OK Date: Tue, 06 Mar 2018 03:01:57 GMT Connection: close

Content-Type: text/html; charset=UTF-8 Etag: "409ed-183-53c5f732641c0" Content-Length: 15271 ...snip...

第2步:识别产品名称

       GyoiThon使用以下两种方法,来识别安装在Web服务器上的产品名称。

1.基于机器学习

       通过使用机器学习(朴素贝叶斯),GyoiThon基于每个软件的略微不同的特征(ETAG值、Cookie值、特定HTML标签等)的组合来进行识别。朴素贝叶斯使用以下示例(训练数据)的训练数据来学习。与签名库不同的是,当在一个特征中不能识别软件时,朴素贝叶斯是基于HTTP响应中包含的各种特征随机识别的。如:

Etag: "409ed-183-53c5f732641c0"

GyoiThon可以识别Web服务器软件Apache。

       这是因为GyoiThon学习了Apache的特性,例如“Etag头值(409ed-183-53c5f732641c0)”。在我们的研究测试中发现,Apache使用数字和小写字母的组合作为Etag值。并且,Etag值分开4-5位和3-4位和12位,最终位在多数情况下为0。

2.基于字符串匹配。

       当然,GyoiThon也可以通过传统渗透测试工具中使用的字符串匹配来识别软件。

第3步:使用Metasploit进行利用

       GyoiThon使用Metasploit执行与识别软件相对应的漏洞利用,并检查软件是否受此漏洞影响。

运行示例

[*] exploit/multi/http/struts_code_exec_exception_delegator, target: 1, payload: linux/x86/shell/revers

第4步:生成扫描报告

GyoiThon生成汇总漏洞的报告,报告的样式为html。

Gituhub地址:https://github.com/gyoisamurai/GyoiThon

还有另外一款基于机器学习的全自动渗透工具:Deep Exploit

 

参考

https://www.freebuf.com/sectool/173476.html

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值