Обнаружена уязвимость нулевого дня в роутерах TP-Link, позволяющая удалённое выполнение кода

vulnerability

Исследователи кибербезопасности выявили критическую уязвимость нулевого дня в роутерах TP-Link, которая позволяет злоумышленникам обходить защиту рандомизации размещения адресного пространства (ASLR) и выполнять произвольный код удалённо. Уязвимость, получившая идентификатор CVE-2025-9961, находится в компоненте CWMP (TR-069) и может быть активирована через специально сформированные SOAP-запросы, что предоставляет полный контроль над затронутыми устройствами.

Детали уязвимости

Проблема возникает из-за непроверенного переполнения буфера в стеке в процедуре установки параметров CWMP. Путём отправки тщательно сконструированной вредоносной нагрузки через пользовательский ACS-сервер атакующие могут перезаписать программный счётчик и захватить управление потоком выполнения. Несмотря на активную защиту ASLR, подбор базового адресного пространства в сочетании с автоматическими перезапусками службы через веб-интерфейс обеспечивает надёжную эксплуатацию уязвимости. Используя технику ret2libc с функцией system() из библиотеки libc, злоумышленники в конечном итоге получают обратную оболочку на целевой сети.

Группа исследователей ByteRay впервые обнаружила CVE-2025-9961 во время экспериментов с понижением версии прошивки, используя ранее выявленную уязвимость внедрения команд (CVE-2023-1389) для загрузки уязвимой версии CWMP. С помощью инструмента checksec было подтверждено отсутствие защиты PIE и канареек стека, хотя были активированы NX и частичная RELRO, а ASLR обеспечивала энтропию в 9-10 бит для libc и стека соответственно.

Первоначальные попытки создания доказательства концепции через GenieACS оказались неудачными из-за невозможности сохранения непечатаемых байтов, что потребовало разработки специального ACS на Python, способного полностью передавать диапазон байтов вредоносной нагрузки. Пользовательский ACS выполняет три шага: инициирует сессию TR-069 и получает идентификатор устройства CPE, устанавливает сессионные куки и отправляет запрос SetParameterValues, содержащий нагрузку для переполнения, а также осуществляет подбор рандомизированного базового адреса, обрабатывая сбои CWMP путём перезапуска службы через веб-панель роутера.

Цепочка ret2libc загружает вредоносную нагрузку обратной оболочки, размещённую на простом HTTP-сервере. Ключевые гаджеты и указатели функций вычисляются динамически, чтобы избежать нулевых байтов. Финальная нагрузка вызывает curl для загрузки и выполнения вредоносного бинарного файла ELF, что приводит к установлению обратного TCP-соединения с атакующим.

TP-Link уже выпустила обновления прошивки, устраняющие CVE-2025-9961 путём добавления проверок длины ввода и активации полной RELRO и канареек стека. Администраторам рекомендуется немедленно обновить прошивку и отключить удалённую конфигурацию ACS, если она явно не требуется. Установление строгих учётных данных для веб-интерфейса и ограничение доступа TR-069 доверенным сетям дополнительно снижает риск эксплуатации.

CVE-2025-9961 подчеркивает серьезные риски, связанные с несовершенными протоколами управления и недостаточной защитой двоичных файлов. Своевременное применение исправлений и многоуровневые меры безопасности по-прежнему имеют решающее значение для обеспечения безопасности сетевой инфраструктуры от современных методов эксплуатации.

Ссылки

Комментарии: 0