0×01 说明:
由于struts2框架频繁爆出漏洞,为方便安全从业人员检测并及时修复,遂将struts历史版本payload整合在一起(ST2-005至ST2-048)。
0×02 检测原理:
执行netstat -an命令,windows和linux都支持此命令,并通过关键字匹配出操作系统类型。
0×03 使用参数:
python struts-scan.py http://example.com/index.action
检测python struts-scan.py -u http://example.com/index.action -i struts2-045
进入指定漏洞交互式shellpython struts-scan.py -f url.txt 链接: https://github.com/Lucifer1993/struts-scan
*本文作者:六翼,转载请注明来自 FreeBuf.COM
活动预告
-
11月
FreeBuf精品公开课·双11学习狂欢节 | 给努力的你打打气
已结束 -
10月
已结束 -
10月
已结束 -
9月
已结束
0daybank
已有 39 条评论
貌似用不了
老表 玩的6啊!
K8表示终于有人又搞了个没用的东西了
@ k8team 我觉得你说的很对 ~hahaha
@ k8team 大哥你也要点face 带后门的软件 你怎么不去吃shift
前排卖瓜子……
结果我乱码了呃
@ D14tr0y 应该是2.7写的 windows是gbk编码 把开头声明改成gbk就好了
好人一生平安
windows运行,中文显示异常,linux可以正常运行
K8表示不服
不到053就别出来了。
Traceback (most recent call last):
File "struts-scan.py", line 11, in <module>
from termcolor import cprint
ImportError: No module named termcolor
缺少什么支持模块运行不了 要如何解决
@ 小强 都给你提示了呀 ,缺少termcolor
@ 小强 sudo pip install termcolor
termcolor 模块装不上去最后还是用了easy_install才装上去pip 不行 真蛋疼
检测了一下,提示超时,但是该站点确实存在Struts2-045漏洞,附图
为什么没有052 053?
@ 1122 052已经添加。
@ 六翼 052检测一个不回显的whoami 判断http500 和存在java.security.Provider$Service 会不会有点不妥?
@ 新手 command标签里面其实写什么都不影响,漏洞不回显,但是返回码可以基本能判断是不是存在漏洞,java.security.Provider$Service关键字是我在本地测试发现存在的特征。
没有053也敢说全版本?
检测不准 你们有这种情况吗
搞个批量检测就更好了,再提升一下检测的准确度
你们难道都没遇到装上termcolor,仍然找不到cprint函数么?
装了termcolor库还是出现: from termcolor import cprint的同学,建议替换cprint为colored [ from termcolor import colored]

然后全局替换cprint-> print colored.
052和053已经添加,053的检测和利用都需要提供参数。
@ 六翼 这个参数具体指什么哇?
@ pine 修改后报错了
@ 六翼 脚本使用存在检测超时是什么原理?!具体检测时,有些网站是存在s2-045的漏洞,但是却还是报超时。运行环境为kali 2.0 中的Python环境。
@ 苏言瑾 超时可能网站有防护,数据被拦截了,也有可能网站本身响应缓慢,连接超时。
K8表示又有人来一较高下了
超时的人,url后面加了http(s)了嘛?
楼主有心了,给你点赞!!!
楼主有心了,给你点赞
试用了下 居然直接漏报了 不准
表示有乱码,怎么解决?
支持一下
@ 未知用户 后门在哪?请拿出证据。
靠贬低别人抬高自己的人不是什么好鸟
还有楼主弄的东西确实没什么用,
检测而已不知道哪来的勇气抬高自己?