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

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

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

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

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

Категории

Все категории
Loading categories
log4j-detector — Сканер файловой системы, который обнаруживает уязвимые версии Log4J (CVE-2021-44228, CVE-2021-45046) путем анализа скомпилированных Java-классов, включая вложенные архивы. Работает на Linux, Windows и Mac. | Kitploit
Инструменты/GitHubGitHub/mergebase/log4j-detector
Статический анализСканеры уязвимостейАнализ уязвимостейБезопасность Цепочки Поставок
GitHubmergebase/log4j-detector

log4j-detector

Сканер файловой системы, который обнаруживает уязвимые версии Log4J (CVE-2021-44228, CVE-2021-45046) путем анализа скомпилированных Java-классов, включая вложенные архивы. Работает на Linux, Windows и Mac.

Репозиторий
64096224 лет назадПроверено Kitploit

Популярное

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

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

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

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

Смотреть все инструменты →
Поделиться

логотип mergebase

Log4-detector

Сканер, который обнаруживает уязвимые версии Log4J, помогая командам оценить степень подверженности CVE-2021-44228 (КРИТИЧЕСКАЯ), CVE-2021-45046, CVE-2021-45105 и CVE-2021-44832. Может искать экземпляры Log4J, тщательно исследуя всю файловую систему, включая все установленные приложения. Он способен находить экземпляры Log4J, скрытые на нескольких уровнях вложенности. Работает в Linux, Windows, Mac и везде, где выполняется Java!

Содержание

  • Введение
  • Пример использования
  • Дополнительные примеры использования
  • Понимание результатов
  • Использование
  • Сборка из исходников
  • Тестирование
  • Лицензия
  • Часто задаваемые вопросы
    • Как это работает?
    • Этот сканер сообщает только о попаданиях по библиотеке log4j-core. А как насчёт log4j-api?
    • Почему сообщается о версиях 2.10.0, 2.15.0 и 2.16.0?
    • Что означают результаты вида "file1.war!/path/to/file2.zip!/path/to/file3.jar!/path/to/log4j.jar"?
    • А что насчёт Log4J 1.2.x?
    • Как я могу быть уверен, что это не троян, маскирующийся под детектор Log4J?
  • Что такое MergeBase?

Введение

В настоящее время сообщает версии log4j-core 2.3.2, 2.12.4 и 2.17.1 как _SAFE_, 2.3.1, 2.12.2, 2.12.3, 2.15.0, 2.16.0 и 2.17.0 как _OKAY_ и все остальные версии как _VULNERABLE_ (хотя для версий до 2.0-beta9 сообщается _POTENTIALLY_SAFE_). Старые версии log4j-1.x помечает как _OLD_.

Корректно обнаруживает log4j внутри исполняемых spring-boot jar/war, зависимостей, смешанных в uber jars, затенённых (shaded) jar, и даже распакованных jar-файлов, просто лежащих на файловой системе (т.е. *.class).

Мы поддерживаем коллекцию log4j-samples, которую используем для тестирования.

Пример использования:

java -jar log4j-detector-2021.12.29.jar ./samples 

-- github.com/mergebase/log4j-detector v2021.12.29 (by mergebase.com) analyzing paths (could take a while).
-- Note: specify the '--verbose' flag to have every file examined printed to STDERR.
false-hits/log4j-core-2.12.2.jar contains Log4J-2.x   == 2.12.2 _OKAY_
false-hits/log4j-core-2.12.3.jar contains Log4J-2.x   == 2.12.3 _OKAY_
false-hits/log4j-core-2.12.4.jar contains Log4J-2.x   == 2.12.4 _SAFE_
false-hits/log4j-core-2.15.0.jar contains Log4J-2.x   == 2.15.0 _OKAY_
false-hits/log4j-core-2.16.0.jar contains Log4J-2.x   == 2.16.0 _OKAY_
false-hits/log4j-core-2.17.0.jar contains Log4J-2.x   == 2.17.0 _OKAY_
false-hits/log4j-core-2.17.1.jar contains Log4J-2.x   >= 2.17.1 _SAFE_
false-hits/log4j-core-2.3.1.jar contains Log4J-2.x   == 2.3.1 _OKAY_
false-hits/log4j-core-2.3.2.jar contains Log4J-2.x   == 2.3.2 _SAFE_
true-hits/log4j-core-2.0-beta9.jar contains Log4J-2.x   >= 2.0-beta9 (< 2.10.0) _VULNERABLE_
true-hits/log4j-core-2.10.0.jar contains Log4J-2.x   >= 2.10.0 _VULNERABLE_
true-hits/log4j-core-2.10.0.zip contains Log4J-2.x   >= 2.10.0 _VULNERABLE_
true-hits/log4j-core-2.11.0.jar contains Log4J-2.x   >= 2.10.0 _VULNERABLE_
true-hits/log4j-core-2.11.1.jar contains Log4J-2.x   >= 2.10.0 _VULNERABLE_
true-hits/log4j-core-2.11.2.jar contains Log4J-2.x   >= 2.10.0 _VULNERABLE_
true-hits/log4j-core-2.12.0.jar contains Log4J-2.x   >= 2.10.0 _VULNERABLE_
true-hits/log4j-core-2.12.1.jar contains Log4J-2.x   >= 2.10.0 _VULNERABLE_
true-hits/log4j-core-2.14.0.jar contains Log4J-2.x   >= 2.10.0 _VULNERABLE_
true-hits/log4j-core-2.14.1.jar contains Log4J-2.x   >= 2.10.0 _VULNERABLE_
true-hits/log4j-core-2.2.jar contains Log4J-2.x   >= 2.0-beta9 (< 2.10.0) _VULNERABLE_
true-hits/log4j-core-2.3.jar contains Log4J-2.x   >= 2.0-beta9 (< 2.10.0) _VULNERABLE_
true-hits/log4j-core-2.4.1.jar contains Log4J-2.x   >= 2.0-beta9 (< 2.10.0) _VULNERABLE_
true-hits/log4j-core-2.4.jar contains Log4J-2.x   >= 2.0-beta9 (< 2.10.0) _VULNERABLE_
true-hits/log4j-core-2.9.1.jar contains Log4J-2.x   >= 2.0-beta9 (< 2.10.0) _VULNERABLE_
old-hits/log4j-1.1.3.jar contains Log4J-1.x   <= 1.2.17 _OLD_
old-hits/log4j-1.2.17.jar contains Log4J-1.x   <= 1.2.17 _OLD_
old-hits/log4j-core-2.0-beta2.jar contains Log4J-2.x   <= 2.0-beta8 _POTENTIALLY_SAFE_ (Did you remove JndiLookup.class?)

Понимание результатов

_VULNERABLE_ -> Вам необходимо обновить или удалить этот файл.

_OKAY_ -> Мы сообщаем это для версий Log4J 2.3.1, 2.12.2, 2.12.3, 2.15.0, 2.16.0 и 2.17.0. Рекомендуем обновиться до 2.17.1.

_SAFE_ -> В настоящее время мы сообщаем это только для версий Log4J 2.3.2, 2.12.4 и 2.17.1 (и выше).

_OLD_ -> Вы защищены от CVE-2021-44228, но следует запланировать обновление, так как Log4J 1.2.x находится в статусе EOL уже 7 лет и содержит несколько известных уязвимостей.

_POTENTIALLY_SAFE_ -> Файл "JndiLookup.class" отсутствует: либо из-за очень старой версии Log4J (до 2.0-beta9), либо кто-то уже удалил этот файл. Убедитесь, что это сделал кто-то из вашей команды или компании, если это так, поскольку злоумышленники, как известно, сами удаляют этот файл, чтобы предотвратить доступ других конкурирующих атакующих к скомпрометированным системам.

Использование

java -jar log4j-detector-2021.12.29.jar 

Usage: java -jar log4j-detector-2021.12.29.jar [--verbose] [--json] [--stdin] [--exclude=X] [paths to scan...]

  --json       - Output STDOUT results in JSON.  (Errors/warning still emitted to STDERR)
  --stdin      - Read STDIN for paths to explore (one path per line)
  --exclude=X  - Where X is a JSON list containing full paths to exclude. Must be valid JSON.

                 Example: --exclude='["/dev", "/media", "Z:\TEMP"]'

Exit codes:  0 = No vulnerable Log4J versions found.
             1 = At least one legacy Log4J 1.x version found.
             2 = At least one vulnerable Log4J version found.

About - MergeBase log4j detector (version 2021.12.29)
Docs  - https://github.com/mergebase/log4j-detector 
(C) Copyright 2021 Mergebase Software Inc. Licensed to you via GPLv3.

Сборка из исходников:

git clone https://github.com/mergebase/log4j-detector.git
cd log4j-detector/
mvn install
java -jar target/log4j-detector-latest.jar

Тестирование:

Мы поддерживаем коллекцию образцов log4j здесь: https://github.com/mergebase/log4j-samples

Лицензия

GPL версии 3.0

Часто задаваемые вопросы

Как это работает?

Компилятор Java сохраняет строковые литералы непосредственно в скомпилированных файлах *.class. Если log4j-detector обнаруживает файл с именем "JndiManager.class" в вашей файловой системе, он затем проверяет этот файл на наличие строки: "Invalid JNDI URI - {}". Оказывается, этот конкретный строковый литерал присутствует только в исправленной версии Log4J (версия 2.15.0). Любые версии Log4J без этой строки уязвимы.

Тот же метод анализа файлов *.class на предмет строковых литералов дополнительно расширен для точного обнаружения безопасных версий 2.3.2, 2.12.4 и 2.17.1.

Этот сканер сообщает только о попаданиях по библиотеке log4j-core. А как насчёт log4j-api?

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