Log4j2复现修复利用
01
漏洞描述
2021 年 11 月 24 日,阿里云安全团队向 Apache 官方报告了 Apache Log4j2 远程代码执行漏洞,在 12 月 9 日被国外有人公开 POC,从而导致了一波安全从业人员的疯狂运动,甲方安全从业者加班加点修复漏洞;白帽子们疯狂扫描漏洞并提交 SRC,一度导致一些 SRC 发布公告暂停接收相关漏洞;而黑灰产们已经在自己的挖矿勒索武器库上增加了该漏洞的利用模块。为什么会这么疯狂?
Apache Log4j2 是 Apache 的一个开源项目,Apache Log4j2 是一个基于 Java 的日志记录工具,使用非常广泛,被大量企业和系统索使用,漏洞触发及其简单,攻击者可直接构造恶意请求,触发远程代码执行漏洞。漏洞利用无需特殊配置
02
影响版本
2.0 <= Apache Log4j 2 <= log4j-2.15.0-rc1
目前为止已知如下组件存在漏洞:
Spring-Boot-strater-log4j2
Apache Struts2v
Apache Solr
Apache Flink
Apache Druid
ElasticSearch
Flume
Dubbo
Redis
Logstash
Kafka
vmvare
03
紧急补救措施
设置jvm参数
-Dlog4j2.formatMsgNoLookups=true
。设置
log4j2.formatMsgNoLookups=True
。设置系统环境变量
FORMAT_MESSAGES_PATTERN_DISABLE_LOOKUPS 为 true
。采用 rasp 对lookup的调用进行阻断。
采用waf对请求流量中的${jndi进行拦截。
禁止不必要的业务访问外网。
04
检测方案
建议企业可以通过流量监测设备监控是否有相关
DNSLog
域名的请求.建议企业可以通过监测相关流量或者日志中是否存在
“jndi:ldap://”、“jndi:rmi”
等字符来发现可能的攻击行为。
05
修复方案
检查所有使用了 Log4j 组件的系统,并尽快升级到最新的 log4j-2.15.0-rc2
版本
https://github.com/apache/logging-log4j2/releases/tag/log4j-2.15.0-rc1
06
复现靶场
这里使用burp suite插件,直接使用POST协议随便上传个参数上去访问hello页面
然后用vps 起jndi 和nc监听
这里根据自己jdk版本使用payload
现在已经拿到shell,解题自己找下flag,提交就OK了。