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

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

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

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

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

Категории

Все категории
Loading categories
CVE-2024-5243-pwn2own-toronto-2023 — Эксплойт удалённого выполнения кода без аутентификации для маршрутизатора TP-Link Omada ER605 через клиентский демон DDNS (cmxddnsd) | Kitploit
Инструменты/GitHubGitHub/redpack-kr/cve-2024-5243-pwn2own-toronto-2023
Анализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийТестирование на ПроникновениеОбучение и ОбразованиеИнструмент Удаленного ДоступаЭксплуатация Бинарных Файлов
GitHubredpack-kr/cve-2024-5243-pwn2own-toronto-2023

CVE-2024-5243-pwn2own-toronto-2023

Эксплойт удалённого выполнения кода без аутентификации для маршрутизатора TP-Link Omada ER605 через клиентский демон DDNS (cmxddnsd)

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

Популярное

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

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

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

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

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

CVE-2024-5243-pwn2own-toronto-2023

TP-Link ER605 RCE до аутентификации (CVE-2024-5242 / CVE-2024-5243 / CVE-2024-5244)

Цепочка эксплойтов Proof-of-Concept (PoC), нацеленная на демон DDNS-клиента TP-Link Omada ER605 (cmxddnsd), когда устройство настроено на использование DDNS-сервиса Comexe.

⚠️ Юридические / этические аспекты: Этот репозиторий предназначен только для авторизованных исследований безопасности и контролируемого воспроизведения в лабораторных условиях. Не используйте его против систем, которыми вы не владеете или на тестирование которых у вас нет явного разрешения.


Обзор

Этот PoC демонстрирует подход к объединению в цепочку, который сочетает:

  1. примитив подмены/имитации на уровне протокола DDNS,
  2. утечку информации для обхода ASLR, и
  3. перехват потока управления, приводящий к выполнению кода на основе ROP.

Цепочка соответствует следующим опубликованным проблемам:

CVEКонсультация ZDIТип (по описанию ZDI/NVD)Роль в цепочке (на высоком уровне)
CVE-2024-5244ZDI-24-503Полагается на безопасность через неясность (сообщения DDNS могут быть доступны/подделаны)Позволяет создавать/подделывать правдоподобно выглядящие сообщения DDNS
CVE-2024-5243ZDI-24-502Переполнение буфера при обработке DNS-имёнИспользуется для влияния/отравления состояния, связанного с DNS-именами, и обеспечения пути утечки для обхода ASLR
CVE-2024-5242ZDI-24-501Переполнение буфера на основе стека при обработке кодов ошибок DDNSИспользуется как примитив перехвата потока управления для RCE на основе ROP

Примечание. Этот README согласует описание CVE ↔ проблемы с формулировками ZDI/NVD. Точная хореография эксплойта может различаться в зависимости от версии прошивки и деталей локального воспроизведения; см. exploit.py и заметки по анализу в этом репозитории.


Затронутые версии

  • Цель: маршрутизатор TP-Link Omada ER605 VPN
  • Уязвимые: < ER605(UN)_V2_2.2.4
  • Протестировано на: 2.2.2
  • Исправлено в: ER605(UN)_V2_2.2.4 Build 20240119 (и более поздних)

Модель угроз / Предварительные условия (на высоком уровне)

ZDI описывает воздействие как атаку из смежной сети (network-adjacent), когда Comexe DDNS включён/настроен. На практике для воспроизведения обычно требуется возможность наблюдать и влиять на путь DDNS/DNS-трафика маршрутизатора в достаточной степени, чтобы:

  • перенаправлять/имитировать серверную сторону Comexe DDNS, и
  • доставлять на маршрутизатор специально созданные DDNS-ответы.

Этот репозиторий намеренно избегает пошаговых операционных инструкций по достижению такого позиционирования вне контролируемой лаборатории.


Схема атаки (концептуальная)

root@kitploit:~
┌─────────────────┐                    ┌─────────────────────────┐
│   TP-Link ER605  │                    │        Attacker         │
│   (cmxddnsd)     │                    │ (authorized lab setup)  │
└───────┬─────────┘                    └───────────┬─────────────┘
        │                                          │
        │ (1) DDNS message spoofing/impersonation  │  CVE-2024-5244
        │<-----------------------------------------│
        │                                          │
        │ (2) Parsing-time overflow affects DNS-   │  CVE-2024-5243
        │     name-related state; later leak occurs│
        │     in DNS query sending path (e.g.,     │
        │     sndDnsQuery) to bypass ASLR          │
        │<-----------------------------------------│
        │                                          │
        │ (3) Error-code overflow for control-flow │  CVE-2024-5242
        │     hijack → ROP → system(command)       │
        │<-----------------------------------------│

Ключевое разделение:

  • Переполнения при разборе срабатывают во время разбора DDNS-сообщений (в частности, через логику разбора, связанную с _chkPkt, для кодов ошибок / обработки DNS-имён).
  • Утечка для обхода ASLR достигается позже через путь отправки DNS-запросов после отравления состояния, связанного с DNS-именами.

Содержимое репозитория

  • exploit.py — реализация PoC, используемая для лабораторного воспроизведения (требует подстановки констант/смещений, специфичных для сборки).
  • README.md — этот документ.

Примечания по конфигурации (специфично для сборки)

Этот PoC требует значений, зависящих от конкретной сборки (например, смещений, расположения гаджетов, интерпретации утечки), которые зависят от целевой прошивки и libc. Эти значения намеренно оставлены в качестве заполнителей и должны быть получены путём анализа протестированной сборки.

Примеры заполнителей (см. exploit.py):

  • вычисление базового адреса libc (смещение утечки → базовый адрес libc)
  • смещение system()
  • подходящая последовательность MIPS-гаджетов и ограничения
  • адрес для стабильной ссылки на строку команды, используемой в ROP-цепочке

Технические примечания (на высоком уровне)

Паттерн первопричины (концептуально)

Повторяющийся анти-паттерн в логике разбора заключается в копировании управляемых атакующим данных поля с использованием длины, полученной из разделителя, без надлежащего ограничения размером буфера назначения (концептуально):

root@kitploit:~
char *end = strchr(ptr, '\x01');   // delimiter
int len = end - ptr;               // attacker-influenced length
memcpy_or_strncpy(dest, ptr, len); // missing bounds check -> overflow

ROP-гаджет (слот задержки MIPS)

PoC использует форму гаджета, дружественную к слоту задержки MIPS:

root@kitploit:~
move    $t9, $s0
jalr    $t9
move    $a0, $s1      ; delay slot

Управляя $s0 и $s1 через перезапись сохранённых регистров, это позволяет создать компактную последовательность вызова system(command).

Ограничения полезной нагрузки (зависит от реализации)

Практическое создание полезной нагрузки ограничено:

  • разделителями полей протокола (например, \x01), и
  • поведением строк/разбора, которое может усекать или изменять скопированные данные.

Точные ограничения, использованные в этом воспроизведении, см. в exploit.py.


Отказ от ответственности

Этот код и документация предоставлены исключительно в образовательных целях и для авторизованных исследований безопасности. Любое использование без явного разрешения запрещено и может быть незаконным.


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

  • Первоначальное обнаружение уязвимости и исследование Pwn2Own Toronto 2023: Claroty Research Team82
  • Этот репозиторий: независимое воспроизведение и аналитическая работа

Ссылки

  • ZDI-24-501 (CVE-2024-5242): https://www.zerodayinitiative.com/advisories/ZDI-24-501/
  • ZDI-24-502 (CVE-2024-5243): https://www.zerodayinitiative.com/advisories/ZDI-24-502/
  • ZDI-24-503 (CVE-2024-5244): https://www.zerodayinitiative.com/advisories/ZDI-24-503/
  • Записи NVD:
    • CVE-2024-5242: https://nvd.nist.gov/vuln/detail/CVE-2024-5242
    • CVE-2024-5243: https://nvd.nist.gov/vuln/detail/CVE-2024-5243
    • CVE-2024-5244: https://nvd.nist.gov/vuln/detail/CVE-2024-5244

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