近日,多篇关于jboss的java反序列化漏洞的文章盛传于网络。那么到底是不是只要用了jboss就会存在这个漏洞?而这个漏洞的危害到底有多大呢?
什么是反序列化漏洞?
其实该java序列化的漏洞,并非最近才被发现,早在2015年年初的在AppSecCali大会上,有一片题为《Marshalling Pickles》的报告,报告中详细描述了Java反序列化漏洞可以利用Apache Commons Collections这个常用的Java库来实现任意代码执行,甚至还提供了相应的 Payload 生成工具–ysoserial当时并没有引起太大的关注。直到2015年11月6日,FoxGlove Security安全团队的@breenmachine 发布的一篇博客中介绍了如何利用Java反序列化漏洞,来攻击最新版的WebLogic、WebSphere、JBoss、Jenkins、OpenNMS这些大名鼎鼎的Java应用,实现远程代码执行。接着一石激起千层浪,大量关于此漏洞的文章被发表,使用JBOSS的用户不在少数,人人自危。
风险多大?
Java反序列化漏洞:该漏洞的出现的根源在CommonsCollections组件中对于集合的操作存在可以进行反射调用的方法,并且该方法在相关对象反序列化时并未进行任何校验,导致远程代码执行。如果漏洞一旦被利用,网站形同"裸奔"。
如何排查?
Jboss利用的是HTTP协议,可以在任何端口上运行,默认安装在8080端口中。而且Jboss与“JMXInvokerServlet”的通信过程中存在一个公开漏洞。JMX是一个java的管理协议,在Jboss中的JMXInvokerServlet可以使用HTTP协议与其进行通话。这一通信功能依赖于java的序列化类。以下可以作为自查依据:
JBoss JMXInvokerServlet接口(默认8080端口)以及JBoss Web Console (/web-console/) 禁止对外
以上系统均有传输对象序列化内容(二进制流或base64encode)。
当对这些传输数据截包并且替换为包含命令执行的序列化内容,远程命令执行即触发。
对整个互联网的影响如何?
为了了解整个互联网收此次漏洞的波及情况,百度云观测平台联合百度泰坦平台,对全网40亿个站点进行了相关检查。
检查结果如下:
共发现有32190个站点使用了Jboss,其中共有8037个站点存在该漏洞
按照地理信息分布,共有1461个站点在中国,仅此于第一名美国的1961个。
其中中国受影响的top5城市为:
云观测用户表现如何?
在得知此漏洞的第一时间,云观测就启动了重大安全问题0day漏洞预警方案,对所有云观测用户的站点进行了针对此次Jboss漏洞的扫描。并且同时发送了0day公告。
扫描后,在云观测所有站点中一共出现了12个拥有该漏洞的网站,云观测已经第一时间通过站内信和邮件通知了站长进行修复。
同时,扫描结果中,有70%的用户已经因为之前Jboss的漏洞报警关闭对应的接口,避免了此次漏洞的侵袭。
* 作者:百度云安全(企业账号),转载请注明来自FreeBuf黑客与极客(FreeBuf.COM)