背景
近日,网络上出现 Apache Log4j2 远程代码执行漏洞。攻击者可利用该漏洞构造特殊的数据请求包,最终触发远程代码执行。由于该漏洞影响范围极广,建议广大用户及时排查相关漏洞,经过白帽汇安全研究院分析确认,目前市面有多款流行的系统都受影响。
log4j作为众多软件广泛引入的类库,漏洞影响范围太大了,据说各大厂程序员半夜被叫起来加班加点修复。
漏洞描述
Apache Log4j2 是一个基于 Java 的日志记录工具。该工具重写了 Log4j 框架,并且引入了大量丰富的特性。该日志框架被大量用于业务系统开发,用来记录日志信息。
在大多数情况下,开发者可能会将用户输入导致的错误信息写入日志中。攻击者利用此特性可通过该漏洞构造特殊的数据请求包,最终触发远程代码执行。
该漏洞危害等级:严重
影响范围
影响判断方式:用户只需排查Java应用是否引入 log4j-api , log4j-core 两个jar。若存在应用使用,极大可能会受到影响。
漏洞原理
扫描工具-运行环境
基于python 编写的扫描工具,需要本地运行有python环境
扫描工具-使用说明
- 下载工具包
git clone https://github.com/Aronlele/log4j-scan.git
- 安装必要组件
pip3 install -r requirements.txt
- 使用工具扫描
# 查看命令帮助
python log4j-scan.py -h
# 执行单URL 扫描
python log4j-scan.py -u http://xxx.xxx.com/local
# 执行集合URL 扫描
python log4j-scan.py -l urls.txt
# 支持GET POST HEADER 等全测试
python log4j-scan.py -u https://log4j.lab.secbot.local --run-all-tests
- 注:其他相关命令,可以根据工具命令查看帮助
检测完毕,如图所示:
修复建议
如果不幸中招了,那么赶紧修复吧!
官方现已发布,2.16.0版本,可以及时修复