Log4j-scan: Tool scan tìm các trang web dính lỗi log4j

Trong bài này, mình sẽ hướng dẫn các bạn sử dụng công cụ Log4j-scan, tool scan hoàn toàn tự động và chính xác nhất để tìm các máy chủ dễ bị tấn công log4j.

Log4j-scan: Tool scan tìm các trang web dính lỗi log4j

Tính năng

  • Hỗ trợ danh sách các URL.
  • Fuzzing cho hơn 60 request headers HTTP (không chỉ 3-4 headers như các công cụ đã thấy trước đây).
  • Fuzzing cho HTTP parameters POST Data.
  • Fuzzing cho các parameters JSON.
  • Hỗ trợ callback DNS để phát hiện và xác thực lỗ hổng bảo mật.
  • WAF bypass payloads.

Miêu tả

Tác giả đã nghiên cứu Log4J RCE (CVE-2021-44228) kể từ khi nó được phát hiện và đã làm việc để ngăn chặn lỗ hổng bảo mật này. Team đã phát triển một công cụ quét mã nguồn mở để phát hiện và và giúp các nhà phát triển vá lỗ hổng Log4J RCE CVE-2021-44228. Công cụ này sẽ được sử dụng bởi các nhóm bảo mật nhằm quét cơ sở hạ tầng của họ để tìm Log4J RCE và cũng kiểm tra các lượt bypass WAF có thể dẫn đến việc thực thi mã trên môi trường dự án.
Nó hỗ trợ callback DNS OOB ngay lập tức, không cần thiết lập máy chủ callback DNS.

Cách sử dụng

$ 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] [-l USEDLIST] [--request-type REQUEST_TYPE] [--headers-file HEADERS_FILE] [--run-all-tests] [--exclude-user-agent-fuzzing]
                     [--wait-time WAIT_TIME] [--waf-bypass] [--dns-callback-provider DNS_CALLBACK_PROVIDER] [--custom-dns-callback-host CUSTOM_DNS_CALLBACK_HOST]

optional arguments:
  -h, --help            show this help message and exit
  -u URL, --url URL     Check a single URL.
  -p PROXY, --proxy PROXY
                        Send requests through proxy. proxy should be specified in the format supported by requests
                        (http[s]://<proxy-ip>:<proxy-port>)
  -l USEDLIST, --list USEDLIST
                        Check a list of URLs.
  --request-type REQUEST_TYPE
                        Request Type: (get, post) - [Default: get].
  --headers-file HEADERS_FILE
                        Headers fuzzing list - [default: headers.txt].
  --run-all-tests       Run all available tests on each URL.
  --exclude-user-agent-fuzzing
                        Exclude User-Agent header from fuzzing - useful to bypass weak checks on User-Agents.
  --wait-time WAIT_TIME
                        Wait time after all URLs are processed (in seconds) - [Default: 5].
  --waf-bypass          Extend scans with WAF bypass payloads.
  --test-CVE-2021-45046
                        Test using payloads for CVE-2021-45046 (detection payloads).
  --dns-callback-provider DNS_CALLBACK_PROVIDER
                        DNS Callback provider (Options: dnslog.cn, interact.sh) - [Default: interact.sh].
  --custom-dns-callback-host CUSTOM_DNS_CALLBACK_HOST
                        Custom DNS Callback Host.
  --disable-http-redirects
                        Disable HTTP redirects. Note: HTTP redirects are useful as it allows the payloads to have higher chance of reaching vulnerable systems.

Scan Website

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

Quét một URL duy nhất bằng tất cả các phương thức Request: GET, POST (form được mã hóa url), POST (body JSON)

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

Tìm bypass WAF.

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

Quét danh sách các URL

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

Cách cài đặt

$ pip3 install -r requirements.txt

Hỗ trợ 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

Tuyên bố từ chối trách nhiệm

Dự án này chỉ được thực hiện cho mục đích giáo dục và pentest. Việc sử dụng log4j-scan để tấn công các mục tiêu mà không có sự đồng ý trước của hai bên là bất hợp pháp. Bạn phải có trách nhiệm tuân theo tất cả các luật hiện hành của quốc gia đang sống. Các nhà phát triển và Anonyviet sẽ không chịu bất kỳ trách nhiệm pháp lý hoặc thiệt hại nào do bài viết hoặc tool gây ra.

Previous Post Next Post