
멀티스레딩을 사용하여 URL 목록에서 Log4j Java 라이브러리 취약점(CVE-2021-44228)을 탐지하는 간단한 Python 3 스크립트
Python 3로 개발된 "log4j-detect.py" 스크립트는 URL 목록이 CVE-2021-44228에 취약한지 탐지하는 역할을 합니다.
이를 위해, 지정된 목록의 각 URL에 대해 스레드를 사용하여 GET 요청을 보냅니다(더 높은 성능). GET 요청에는 성공 시 Burp Collaborator / interactsh로 DNS 요청을 반환하는 페이로드가 포함됩니다. 이 페이로드는 테스트 매개변수와 "User-Agent" / "Referer" / "X-Forwarded-For" / "Authentication" 헤더에 전송됩니다.
마지막으로, 호스트가 취약한 경우 Burp Collaborator / interactsh 페이로드의 서브도메인 접두사와 스크립트 출력에 식별 번호가 나타나며, 이를 통해 어떤 호스트가 DNS를 통해 응답했는지 알 수 있습니다.
이 스크립트는 취약점의 DNS 탐지만 처리하며 원격 명령 실행은 테스트하지 않는다는 점에 유의해야 합니다.
wget https://raw.githubusercontent.com/Woahd/log4j-urlscanner/main/log4j-detect.py
python3 log4j-detect.py <urlFile> <collaboratorPayload>
