Skip to content

Python2编写的struts2漏洞全版本检测和利用工具

Notifications You must be signed in to change notification settings

x7peeps/struts-scan

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

42 Commits
 
 
 
 
 
 
 
 

Repository files navigation

struts-scan

快速检测struts命令执行漏洞,可批量。

运行环境

Windows下的Python2

支持对以下版本的检测

ST2-005

ST2-008

ST2-009

ST2-013

ST2-016

ST2-019

ST2-020

ST2-devmode

ST2-devmode-post

ST2-032

ST2-033

ST2-037

ST2-045

ST2-046

ST2-048

ST2-052

ST2-053

ST2-057

使用

image

image

增加

[+]针对各版本的shell命令交互

[+]struts2-052检测(利用后面会加上)

[+]struts2-053检测+利用(需要提供参数)

[+]检测过程中输出超时原因

[+]兼容HTTP/1.0,修复了struts-045检测不准确的问题

[+]struts2-046检测+利用

[+]修改struts2-048的payload

[+]增加struts2-057检测和利用,生产环境还没有找到可利用的例子,实属鸡肋的洞,参考https://github.com/Ivan1ee/struts2-057-exp。

二次开发部分 Edit by XT.

[+]针对某些超时的情况,注释掉 httplib.HTTPConnection._http_vsn = 10 和httplib.HTTPConnection._http_vsn_str = 'HTTP/1.0'这两行再测试一遍,因为有的可能不支持HTTP/1.0的协议。

[+]增加linux和win的可执行文件,windows需要.NET环境。

[+]增加写入文件功能,针对有漏洞的struts版本号会自动写入success.txt文件。

[+]增加ST2-devmode post方式验证。

[+]修改cprint编码在windows下中文乱码问题。

[+]适应批量暂时关闭S2-053检测以提高值检测守效率

[+]展示漏洞检测的时候命令执行结果 image

[+]同步了Lucifer1993的st2-057检测的两个poc,利用

[+]同步了Lucifer1993的st2-008检测的两个poc,利用

特别说明

此工具仅限于漏洞验证,如若使用者引起相关的法律责任请自负,开发者不承担连带责任。

About

Python2编写的struts2漏洞全版本检测和利用工具

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%