「漏洞复现」CVE-2020-2555-Oracle Coherence&WebLogic反序列化远程代码执行
我的环境
靶机:
windows2008 r2 datacenter
java jdk8u202
weblogic 12.2.1.3.0
ip:192.168.91.131
攻击机:
macOS catalina 10.15.2
java jdk8u241
IDEA 2019.3
环境搭建我就不放了,没啥技术含量。
漏洞复现
利用POC:
https://github.com/Y4er/CVE-2020-2555
说实话,我还是第一次调试java代码项目。。一脸懵逼,啥都不会,都是凭着感觉走的。
直接将Y4er的项目拖进IDEA中,然后自己新建一个。(这里我也是一脸懵逼,但是感觉跟python差不多就跟着感觉走了)
看不懂,直接下一步。
继续下一步
取个吊炸天的名字
有点模样了/。。。。。
这时我们的项目已经差不多了,现在就差复制别人的poc了。。
直接将POC项目拖进IDEA即可,然后我们自己的项目新建一个名为lib的目录。
创建好后,我们将lib里面的jar包复制一下。
然后我们设置一下lib目录
最后,将src里面的文件也复制一下
复制好后,修改执行的命令。这里用的是Runtime.getRuntime().exec方式来执行命令,那么我们要么将执行的命令进行base64编码一次,或者使用使用数组的形式命令执行。
然后修改下ip地址和端口,其实可以注释掉这里,使用python脚本来执行。
T3ProtocolOperation.send("192.168.91.131", "7001", payload);
它会生成一个test.ser文件,在当前目录。然后在使用python脚本即可
我这里就体验下不用python脚本的,因为后面还要进一步学习下的。
注意的地方
coherence.jar要使用和目标版本一致的,不然会有serialVersionUID不一致的问题。
coherence.jar位置可以在靶机里面搜索一下
cmd.exe /c 是执行windows命令
/bin/bash -c 是执行linux命令