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

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

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

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

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

Категории

Все категории
Loading categories
log4shell-finder — Самый быстрый сканер файловой системы для поиска log4shell (CVE-2021-44228, CVE-2021-45046) и других уязвимых (CVE-2017-5645, CVE-2019-17571, CVE-2022-23305, CVE-2022-23307 ... ) экземпляров библиотеки log4j. Отличная производительность и низкое потребление памяти. | Kitploit
Инструменты/GitHubGitHub/hynekpetrak/log4shell-finder
Статический анализСканеры уязвимостейАнализ уязвимостейАнализ КодаБезопасность Цепочки ПоставокНеправильная Конфигурация
GitHubhynekpetrak/log4shell-finder

log4shell-finder

Самый быстрый сканер файловой системы для поиска log4shell (CVE-2021-44228, CVE-2021-45046) и других уязвимых (CVE-2017-5645, CVE-2019-17571, CVE-2022-23305, CVE-2022-23307 ... ) экземпляров библиотеки log4j. Отличная производительность и низкое потребление памяти.

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

Популярное

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

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

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

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

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

log4shell-finder — самый быстрый сканер файловой системы для поиска экземпляров log4j

Python-порт https://github.com/mergebase/log4j-detector. log4j-detector защищён авторским правом (C) Copyright 2021 Mergebase Software Inc. https://mergebase.com/ Лицензия: GPLv3.

Мотивацией для портирования на Python было повышение производительности, снижение потребления памяти и улучшение читаемости кода. См. раздел о сравнении производительности ниже.

И похоже, это самый быстрый инструмент сканирования с наименьшими требованиями к памяти

Определяет версии log4j (1.x), reload4j (1.2.18+) и log4j-core (2.x) в вашей файловой системе, уязвимые к CVE-2021-44228, CVE-2021-45046 и многим другим — см. таблицу ниже. Он способен находить экземпляры, встроенные в более крупные приложения на несколько уровней вглубь. Работает на Linux, Windows, Mac и везде, где работает Python 3.8+.

Может корректно обнаруживать log4j внутри исполняемых spring-boot jar/wars, зависимостей, объединённых в uber jars, shaded jars и даже распакованных jar-файлов, просто лежащих на файловой системе без сжатия (так называемые *.class). Также умеет обрабатывать shaded-файлы классов — расширения .esclazz (elastic) и .classdata (Azure).

Ищет Java-архивы со следующими расширениями: .zip, .jar, .war, .ear, .aar, .jpi, .hpi, .rar, .nar, .wab, .eba, .ejb, .sar, .apk, .par, .kar

Обнаруживаемые уязвимости

DetectsCVECVSSv3SeverityJavaVuln fromVulnerable toFixed inlibrary
ДАCVE-2021-4422810.0Критическая82.0-beta92.14.12.15.0log4jv2
ДАCVE-2017-56459.8Критическая72.0-alpha12.8.12.8.2log4jv2
ДАCVE-2019-175719.8Критическая1.2.01.2.17nofixlog4jv1
ДАCVE-2021-450469.0Критическая7/82.0-beta92.15.0, исключая 2.12.22.12.2/2.16.0log4jv2
ДАCVE-2022-233059.8Критическая1.2.01.2.17nofix / 1.2.18.1log4jv1, reload4j
ДАCVE-2022-233079.8Критическая1.2.01.2.17nofix / 1.2.18.1log4jv1, reload4j
ДАCVE-2022-233028.8Высокая1.01.2.17nofix / 1.2.18.1log4jv1, reload4j
ДАCVE-2021-41047.5Высокая-1.01.2.17nofixlog4jv1
ДАCVE-2021-448326.6Средняя6/7/82.0-alpha72.17.0, исключая 2.3.2/2.12.42.3.2/2.12.4/2.17.1log4jv2
-CVE-2021-425506.6Средняя-1.01.2.71.2.8logback
ДАCVE-2021-451055.9Средняя6/7/82.0-beta92.16.0, исключая 2.12.32.3.1/2.12.3/2.17.0log4jv2
-CVE-2020-94883.7Низкая7/82.0-alpha12.13.12.12.3/2.13.2log4jv2

Для каждого экземпляра выводится соответствующий список CVE. Для каждого CVE анализируется файл библиотеки log4j — проверяется, применены ли рекомендуемые обходные меры (например, удалены JndiLookup.class или JMSAppender.class); в этом случае он считается неуязвимым. Статус STRANGE выводится для архивов с файлом pom.properties библиотеки log4j-core, но без фактических классов байт-кода; обычно это исходные пакеты, и их можно игнорировать.

Предупреждение Функция --fix экспериментальная, используйте её на свой страх и риск; перед использованием обязательно сделайте резервные копии ваших jar-файлов.

Аргумент --fix пытается переименовать экземпляры JndiLookup.class в JndiLookup.vulne, предотвращая таким образом загрузку класса. Внутри Java-архивов это делается путём переименования на месте, не требует повторной упаковки архива и выполняется мгновенно.

Готовые бинарные файлы доступны для Linux 64bit, MS Windows 64bit и 32bit — см. Releases.

Минимальная поддерживаемая версия Python — 3.8. Согласно моему тестированию, реализация zip в Python 3.6 не может открыть многие .jar-файлы из моих тестовых данных.

Производительность

log4shell finder оптимизирован на производительность и низкое потребление памяти.

Обновлено 23.1.2022, производительность измерена на каталоге с 26237 файлами в 2005 папках.

Время выполнения сокращено вдвое, потребление памяти — на 2/3, чтение файловой системы — по крайней мере на 90%

log4shell-finder (этот инструмент)

Command being timed: "./test_log4shell.py /home/hynek/war/ --exclude-dirs /mnt --same-fs"
User time (seconds): 17.68
System time (seconds): 1.20
Percent of CPU this job got: 127%
Elapsed (wall clock) time (h:mm:ss or m:ss): 0:14.47
Maximum resident set size (kbytes): 64144
File system inputs: 114424

log4j-finder (https://github.com/fox-it/log4j-finder)

Command being timed: "./log4j-finder.py /home/hynek/war/"
User time (seconds): 23.59
System time (seconds): 1.09
Percent of CPU this job got: 99%
Elapsed (wall clock) time (h:mm:ss or m:ss): 0:26.18
Maximum resident set size (kbytes): 38604
File system inputs: 142824

log4j-detector (https://github.com/mergebase/log4j-detector)

Command being timed: "java -jar log4j-detector-latest.jar /home/hynek/war"
User time (seconds): 30.56
System time (seconds): 1.39
Percent of CPU this job got: 113%
Elapsed (wall clock) time (h:mm:ss or m:ss): 0:28.26
Maximum resident set size (kbytes): 214116
File system inputs: 14416

log4j2-scan (https://github.com/logpresso/CVE-2021-44228-Scanner)

Command being timed: "./log4j2-scan /home/hynek/war --scan-log4j1 --scan-zip"
User time (seconds): 52.05
System time (seconds): 25.32
Percent of CPU this job got: 88%
Elapsed (wall clock) time (h:mm:ss or m:ss): 1:27.86
Maximum resident set size (kbytes): 593080
File system inputs: 215416

История изменений

Версия 1.22-20220222

  • Добавлено: чтение версии и имени библиотеки (log4j, log4j-core, reload4j) как из MANIFEST.MF, так и из pom.properties
  • Улучшение производительности ещё на 15%
  • Добавлено: автоматическое определение всех локальных дисков в MS Windows с параметром all
  • Добавлено: --no-csv-header для исключения заголовка CSV, что упрощает объединение результатов с нескольких хостов
  • Добавлено: обнаружение CVE-2017-5645 (9.8), CVE-2019-17571 (9.8), CVE-2022-23307 (8.1), CVE-2022-23305 (9.8), CVE-2022-23305 (9.8), CVE-2022-23302 (8.1), улучшено обнаружение CVE-2017-5645
  • Добавлено: параметр --threads для ручной настройки количества потоков сканирования
  • Добавлено: параметр --cvs-clean для записи строки "CLEAN" в CSV-вывод, если библиотека log4j не обнаружена
  • Добавлено: параметр --cvs-stats для записи строки "STATS" в CSV-вывод с временем выполнения в секундах и количеством просканированных файлов и папок

Версия 1.21-20220109

  • Исправлена ошибка: команда --fix в версиях 1.19 и 1.20 могла повредить .jar-архивы.

За предыдущие изменения см. Примечания к выпуску

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

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