Раньше считалось, что старый сетевой код Linux давно вычищен и опасны в основном свежие дыры. Теперь выяснилось обратное: уязвимость SCTPhantom жила в ядре с 2008 года и дожила до публикации с тем же эффектом — локальный пользователь мог получить root-доступ.
Что произошло
Исследователи Tencent нашли в сетевом коде Linux уязвимость типа use-after-free — ошибку, когда программа продолжает обращаться к уже освобождённой памяти. Баг получил имя SCTPhantom и идентификатор CVE-2026-64564.
Проблема затронула реализацию SCTP — протокола для соединений, которые умеют работать сразу с несколькими адресами и сетевыми путями. По оценке Tencent, серьёзность дыры достигала 8,5 балла по CVSS.
Как работала атака
Слабое место оказалось в механизме динамической перенастройки адресов SCTP. Ядро проверяло один адрес, а сетевой путь выбирало уже по другому — по адресу внутри ASCONF-сообщения.
В итоге атакующий мог отправить специально подготовленный пакет с последовательностью адресных операций, которая приводила к удалению транспорта, а затем — к повторному использованию уже освобождённого указателя. После этого соединение продолжало опираться на память, которой уже не существовало, и система падала в уязвимое состояние.
По сути, это не сложная магия, а классическая ошибка управления памятью. Именно такие баги часто становятся основой для эскалации привилегий — разбор похожей цепочки атак мы публиковали на примере 0-day в Metabase.
Кого затронуло и чем всё закончилось
SCTPhantom присутствовала в коде Linux начиная с версии 2.6.25, то есть с 2008 года. Формально атака требовала локального доступа и доступности SCTP в целевой системе, но на практике исследователи показали получение root-прав в Debian 13, Ubuntu 24.04, Rocky Linux 9, RHEL 9 и OpenCloudOS.
Отдельно специалисты продемонстрировали, что CVE-2026-64564 подходит и для побега из контейнера. Сначала эксплоит требовал включённых параметров net.sctp.addip_enable и net.sctp.addip_noauth_enable, но позже исследователи нашли способ включать нужные возможности SCTP на уровне отдельного сокета.
В итоговых тестах контейнер работал со стандартным профилем seccomp, без CAP_NET_ADMIN и CAP_SYS_ADMIN, а шесть из восьми попыток завершились получением root-прав на хосте. При этом в Tencent не раскрыли, какой контейнерный рантайм использовали.
Исправление уже вошло в версии ядра 7.1.6, 6.18.42, 6.12.101 и 6.6.148, выпущенные 3 августа 2026 года. Администраторам Linux-систем стоит проверить, обновлены ли ядро и контейнерные образы, а также не включён ли SCTP там, где он не нужен.
Что делать сейчас
Если у вас Linux-сервер, рабочая станция или контейнерная инфраструктура, проверьте версии ядра и планы обновления. Заодно посмотрите, используется ли SCTP вообще: если протокол не нужен, его лучше убрать из поверхности атаки.
Для систем с чувствительными данными полезно отдельно пересмотреть политики seccomp, user namespaces и права контейнеров. А если речь идёт о ноутбуке или устройстве, которое часто подключается к открытым сетям, перед выходом из дома стоит заранее настроить защиту трафика.
- Проверить версию ядра и наличие патчей от 3 августа 2026 года.
- Убедиться, что SCTP включён только там, где он действительно нужен.
- Пересмотреть настройки seccomp, user namespaces и контейнерных прав.
- Обновить контейнерные образы и базовые шаблоны развёртывания.
- Ограничить локальные учётные записи и следить за подозрительным повышением привилегий.
- Для мобильной работы в кафе, аэропорту и поезде использовать защищённый канал для поездок и командировок.
Комментарии (0)
Будьте уважительны. Спам и ссылки на сторонние сервисы скрываются модерацией.
Пока комментариев нет. Вы можете быть первым.