如何使用log4j-scan检测主机中的Log4J漏洞

admin 2022年2月2日23:23:45评论277 views字数 2577阅读8分35秒阅读模式

 关于log4j-scan 

log4j-scan是一款功能强大的自动化漏洞检测工具,该工具主要针对的是Log4J远程代码执行漏洞-CVE-2021-44228,并且可以提供准确的扫描结果。在该工具的帮助下,广大研究人员可以轻松扫描大规模网络范围内主机,并确定主机是否受到Log4J远程代码执行漏洞的影响。

自Log4J远程代码执行漏洞(CVE-2021-44228)被曝光以来,我们不仅一直在对其进行研究,而且我们也一直在与客户一起致力于防范此漏洞,因此log4j-scan便应运而生,安全团队可以使用log4j-scan来扫描其基础设施中可能存在的Log4J远程代码执行漏洞,并测试可能导致在组织环境中执行代码的WAF旁路。

该工具“开箱即用”,支持DNS OOB回调,并且不需要设置DNS回调服务器。

 功能介绍 

1、支持URL列表扫描;

2、支持对超过60个HTTP请求Header进行模糊处理(而不是像以前看到的工具那样仅对3-4个Header进行模糊处理);

3、针对HTTP POST数据参数进行模糊处理;

4、针对JSON数据参数进行模糊处理;

5、支持DNS回调以实现漏洞发现和验证;

6、Payload支持Web应用防火墙绕过;

 工具下载 

广大研究人员可以使用下列命令将该项目源码克隆至本地:

git clone https://github.com/fullhunt/log4j-scan.git

依赖组件安装:

$ pip3 install -r requirements.txt

 工具参数选项 

$ python3 log4j-scan.py -h
[•] CVE-2021-44228 - Apache Log4j RCE Scanner
[•] Scanner provided by FullHunt.io - The Next-Gen Attack Surface Management Platform.
[•] Secure your External Attack Surface with FullHunt.io.
usage: log4j-scan.py [-h] [-u URL] [-p PROXY] [-l USEDLIST] [--request-type REQUEST_TYPE] [--headers-file HEADERS_FILE] [--run-all-tests] [--exclude-user-agent-fuzzing]
[--wait-time WAIT_TIME] [--waf-bypass] [--custom-waf-bypass-payload CUSTOM_WAF_BYPASS_PAYLOAD] [--test-CVE-2021-45046]
[--dns-callback-provider DNS_CALLBACK_PROVIDER] [--custom-dns-callback-host CUSTOM_DNS_CALLBACK_HOST] [--disable-http-redirects]

optional arguments:
-h, --help 显示帮助菜单和退出
-u URL, --url URL 检测单个URL
-p PROXY, --proxy PROXY
通过代理发送请求
-l USEDLIST, --list USEDLIST
检测URL列表
--request-type REQUEST_TYPE
请求类型: (get, post) - [默认: get].
--headers-file HEADERS_FILE
Header模糊测试列表 - [默认: headers.txt].
--run-all-tests 针对每一个URL运行所有可用的测试
--exclude-user-agent-fuzzing
从模糊测试列表中排除User-Agent Header - 用于绕过针对User-Agent的弱检测
--wait-time WAIT_TIME
等待所有URL处理完成的时间长度 - [默认: 5].
--waf-bypass WAF绕过Payload扩展扫描
--custom-waf-bypass-payload CUSTOM_WAF_BYPASS_PAYLOAD
使用自定义WAF绕过Payload测试
--test-CVE-2021-45046
使用CVE-2021-45046漏洞Payload进行测试 (检测Payload).
--dns-callback-provider DNS_CALLBACK_PROVIDER
DNS回调提供商(选项: dnslog.cn, interact.sh) - [默认: interact.sh].
--custom-dns-callback-host CUSTOM_DNS_CALLBACK_HOST
自定义DNS回调主机
--disable-http-redirects
禁用HTTP重定向

 工具使用 

扫描单个URL

$ python3 log4j-scan.py -u https://log4j.lab.secbot.local

使用所有的请求方法(GET、POST)扫描单个URL

$ python3 log4j-scan.py -u https://log4j.lab.secbot.local --run-all-tests

发现环境中的WAF绕过

$ python3 log4j-scan.py -u https://log4j.lab.secbot.local --waf-bypass

扫描URL列表

$ python3 log4j-scan.py -l urls.txt

Docker支持

git clone https://github.com/fullhunt/log4j-scan.git
cd log4j-scan
sudo docker build -t log4j-scan .
sudo docker run -it --rm log4j-scan

# With URL list "urls.txt" in current directory
docker run -it --rm -v $PWD:/data log4j-scan -l /data/urls.txt

 工具运行截图 

如何使用log4j-scan检测主机中的Log4J漏洞

如何使用log4j-scan检测主机中的Log4J漏洞

许可证协议

本项目的开发与发布遵循MIT开源许可证协议。

项目地址

https://github.com/fullhunt/log4j-scan

如何使用log4j-scan检测主机中的Log4J漏洞



精彩推荐






如何使用log4j-scan检测主机中的Log4J漏洞

如何使用log4j-scan检测主机中的Log4J漏洞
如何使用log4j-scan检测主机中的Log4J漏洞
如何使用log4j-scan检测主机中的Log4J漏洞
如何使用log4j-scan检测主机中的Log4J漏洞

原文始发于微信公众号(FreeBuf):如何使用log4j-scan检测主机中的Log4J漏洞

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年2月2日23:23:45
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   如何使用log4j-scan检测主机中的Log4J漏洞https://cn-sec.com/archives/763821.html

发表评论

匿名网友 填写信息