2017 九月 06
上午才和tomato师傅提到的反序列化,晚上就出了s2-052,S2-052 - Apache Struts 2 Documentation - Apache So... 正好趁热打铁,刚复现了一下,具体POC我就不公布了。 直接去s2官网下一个rest-showcase,然后跑在tomcat下,默认配置就可以打。我感觉可以起床应急了。

图片



28882558228121

Group_T_00

p师傅,问一下这个052是和045同等危害吗

phith0n

@Group_T_00
都是rce,但是这个应该没那个影响大,因为需要使用rest这个组件

Royal.

@phith0n
用rest组件的多吗?或者说这个组件常用吗

华莱士

rest 框架默认不是开启的吧。

华莱士

另外,针对之前struts 漏洞,在WAF都加了相应规则,调用_memberAccess 等等关键字都拦截了,这个应该也是可以拦的。

Bear

@华莱士
这个是xstream反序列化,跟ognl没关系

华莱士

@Bear
哦,升级太麻烦了,那么多业务,这个简直是坑。

phith0n

@华莱士
这次升级确实有点蛋疼,因为会影响业务;但WAF也很难做,因为POC基本没有关键字,就是一个很普通的XML。不过强行关键字也是可以的,但也只是防御这个关键字对应的POC,随便换个gadget就绕过了。

Destiny

@Royal.
用的比较少

彈指一揮一滄桑

请问P神,之前的048是插件的漏洞,也成功复现了。这次也成功复现了,然后PoC也构造出来了。但是进行内网脆弱评估的时候却没有发现漏洞。用其他的安全产品发现了确实存在,我测试的url是这个,/struts2-rest-showcase/orders/3。请问要找到.action或者.do文件才能在实际生产中检测么?我换成网站的根目录也出不来。表示不懂Java。。请支招儿

华莱士

@phith0n
恩,不好防御啊,拦截command和string 中的内容?

华莱士

下午抽空在docker上试了下,touch 文件没成功,git 别人的 也没成功,很简单的事,吃完饭再尝试下。

Reverser0

@彈指一揮一滄桑
根目录就能触发,只要碰到url的路由功能(不懂st2是不是这个意思)就能触发