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

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

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

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

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

Категории

Все категории
Loading categories
CVE-2023-21554 — CVE-2023-21554 PoC | Kitploit
Инструменты/GitHubGitHub/shootweb/cve-2023-21554
Анализ уязвимостейЭксплуатацияСетевая безопасностьТестирование на ПроникновениеОбучение и ОбразованиеЛаборатории и Практика
GitHubshootweb/cve-2023-21554

CVE-2023-21554

CVE-2023-21554 PoC

Репозиторий
210 месяцев назадЕщё не проверено

Популярное

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

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

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

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

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

Доказательство концепции уязвимости MSMQ

Этот репозиторий содержит готовое к запуску доказательство концепции (PoC), нацеленное на службу Microsoft Message Queuing, прослушивающую TCP-порт 1801. Работа основана на материалах оригинального проекта и использует их: https://github.com/leongxudong/MSMQ-Vulnerability

В этом репозитории используются бинарные артефакты, предоставленные указанным проектом. Бинарные файлы, включённые в PoC и упоминаемые в нём:

  1. establish_connection.bin
  2. connection_parameters.bin
  3. user_message.bin

Описание

Данный PoC пытается воспроизвести условие, описанное в CVE 2023 21554, путём отправки последовательности кадров протокола MSMQ на целевой хост через порт 1801. Скрипты PoC выполняют только действия на сетевом уровне и не выполняют никаких действий после эксплуатации. Этот проект предназначен исключительно для анализа и проверки защитных механизмов в изолированной лабораторной среде.

Входящие файлы

  1. CVE-2023-21554.py — оригинальный скрипт PoC, который отправляет три бинарных блоба последовательно
  2. CVE-2023-21554.py — вспомогательный скрипт на стороне атакующего, который записывает ответы, hexdumps, временные метки и ошибки сокетного уровня. Используйте этот скрипт для получения более полезных доказательств на стороне атакующего
  3. establish_connection.bin — бинарная полезная нагрузка первого этапа из оригинального репозитория
  4. connection_parameters.bin — бинарная полезная нагрузка второго этапа из оригинального репозитория
  5. user_message.bin — бинарная полезная нагрузка третьего этапа из оригинального репозитория
  6. README.md — этот файл

Предварительные требования

  1. Python 3, установленный на хосте атакующего
  2. Сетевой доступ к порту 1801 целевого хоста и явное разрешение на тестирование этого хоста
  3. Снимок целевой виртуальной машины, чтобы можно было откатить изменения после тестирования
  4. Инструменты для сбора доказательств для проверки (например, Wireshark или tcpdump), а также Sysinternals procdump для Windows

Как запустить PoC в лабораторной среде

  1. Поместите три бинарных файла в ту же папку, где находится скрипт PoC

  2. Отредактируйте скрипт PoC или CVE-2023-21554.py, чтобы задать IP-адрес цели

  3. Запустите захват сетевого трафика на машине атакующего для целевого IP и порта. Пример команды в отдельном терминале (замените IP на адрес вашей цели):

    sudo tcpdump -i eth0 host 10.0.2.15 and port 1801 -w msmq_test.pcap

  4. Запустите расширенный проверочный скрипт, чтобы получить журналы с временными метками и hexdumps

    python3 CVE-2023-21554.py

  5. Сохраните вывод PoC и файл захвата сетевого трафика для анализа

Как понять, что PoC сработал

1. Индикаторы на стороне атакующего

  1. Скрипт CVE-2023-21554.py сообщает connection_reset или orderly_close сразу после одного из этапов полезной нагрузки (это явные статусы, выводимые вспомогательным скриптом).
  2. PoC получает от цели нетривиальный ответ (небольшие необычные байты ответа). Сохраните и сделайте hexdump этого ответа для сравнения.
  3. Захват сетевого трафика показывает TCP-сброс (RST) или другое аномальное завершение соединения сразу после эксплойт-пакетов.

2. Индикаторы на стороне цели

  1. Процесс службы Message Queuing mqsvc.exe аварийно завершается или перезапускается в момент теста.
  2. В Просмотре событий Windows содержатся события приложения или системы, ссылающиеся на нарушение прав доступа или имя отказавшего приложения mqsvc.exe.
  3. Снимок procdump, снятый в момент теста, показывает исключение в процессе mqsvc.

Практические шаги и фильтры Wireshark, готовые для копирования

Замените <TARGET> на IP вашей цели в каждом фильтре.

Показать весь трафик между атакующим и целью на порту MSMQ: ip.addr == <TARGET> && tcp.port == 1801

Показать только TCP RST, исходящие от сервера: ip.src == <TARGET> && tcp.port == 1801 && tcp.flags.reset == 1

Показать пакеты, содержащие данные приложения (ненулевые TCP-полезные нагрузки): ip.addr == <TARGET> && tcp.port == 1801 && tcp.len > 0

Показать сегменты нулевой длины или FIN: ip.addr == <TARGET> && tcp.port == 1801 && (tcp.len == 0 || tcp.flags.fin == 1)

Показать повторные передачи и аномалии TCP: tcp.analysis.retransmission || tcp.analysis.fast_retransmission || tcp.analysis.duplicate_ack

Шаги для извлечения байт ответа сервера (raw hexdump)

  1. Найдите интересующий пакет сервера в списке пакетов. Ищите небольшие значения tcp.len или пакет непосредственно перед RST.
  2. Щёлкните правой кнопкой мыши по пакету → Follow → TCP Stream.
  3. В диалоговом окне Follow TCP Stream выберите Show data as: Raw и затем Save As, чтобы экспортировать точные байты.
  4. Либо выберите пакет и скопируйте байты из области Packet Bytes. Сохраните сырые байты/hexdump в качестве доказательства (например, server_reply.hex).

Как определить, пришёл ли сброс от цели, а не от промежуточного устройства

  1. Убедитесь, что Source IP пакета RST совпадает с целью. Если это так, это с большой вероятностью указывает на то, что целевой хост или его ядро закрыло сокет.
  2. Если источник RST — другое устройство на пути, это обычно означает, что соединение разорвал промежуточный межсетевой экран или другое устройство. Различия в TTL и IP-адресах интерфейсов могут помочь в диагностике.

Корреляция по времени (важно)

  1. Зафиксируйте разницу во времени между эксплойт-пакетом и реакцией сервера. Аварийные завершения или внезапные RST обычно происходят в течение десятков или сотен миллисекунд после проблемного пакета. Записывайте эти моменты времени как часть доказательств.

Сравнительный тест

  1. Захватите ту же последовательность против заведомо пропатченного хоста и сравните наличие или отсутствие RST, FIN или коротких ответов сервера. Различия усиливают ваш вывод.

Контрольный список сбора доказательств

  1. Сохраните полный журнал stdout от CVE-2023-21554.py в текстовый файл
  2. Сохраните файл захвата сетевого трафика (например, msmq_test.pcap)
  3. Экспортируйте события приложения и системы из Просмотра событий, соответствующие времени теста
  4. Если возможно, снимите дамп аварийного завершения mqsvc.exe с помощью procdump и сохраните его для анализа

Уведомление о безопасности и правовых аспектах

Этот код может вызывать аварийные завершения служб и нестабильность на целевых хостах. Не запускайте его против систем, которыми вы не владеете или на тестирование которых у вас нет явного разрешения. Всегда тестируйте в изолированной лабораторной среде и делайте снимок виртуальной машины перед запуском тестов. Оригинальная работа принадлежит вышестоящему проекту:
https://github.com/leongxudong/MSMQ-Vulnerability

Атрибуция

Этот репозиторий является производным от оригинального проекта:
https://github.com/leongxudong/MSMQ-Vulnerability

Вклад

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

Контакты и дополнительное чтение

Обратитесь к вышестоящему репозиторию по указанной выше ссылке за оригинальным контекстом и бинарными артефактами. Для получения рекомендаций по защите обращайтесь к бюллетеням вендора и опубликованным разборам CVE 2023 21554

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