Обработка сеансов TCP-AO в ядре Linux позволяет удалённо влиять на защищённые соединения

vulnerability

В ядре Linux обнаружили уязвимость в механизме TCP-AO, который защищает сеансы связи между сетевыми узлами. Ошибка кроется в процедуре проверки криптографического хеша. Из-за неё сеанс сохраняет силу дольше положенного срока. Оценка по CVSS 3.1 достигает 9,8. По устаревшей CVSS 2.0 она равна 10, то есть верхней границе шкалы. Уязвимость получила идентификаторы BDU:2026-12677 и CVE-2026-43384. Сведения о ней внесли в Банк данных угроз безопасности информации (BDU).

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

TCP-AO (TCP Authentication Option) - расширение протокола TCP для аутентификации сегментов. Оно позволяет узлам убедиться, что пакеты пришли от доверенного партнёра. Проверка также показывает, не изменились ли данные по пути. В основе лежит криптографический хеш, который вычисляют обе стороны соединения. Такой механизм востребован там, где сессии работают долго и требуют постоянного подтверждения подлинности. В частности, его применяют в сетях операторов связи для защиты сессий маршрутизации. Отчасти он заменяет более старую схему, где подлинность подтверждали паролем и хеш-функцией.

Уязвимость связана с неверным сроком действия сеанса. Этот тип ошибки описывают как CWE-613. Кроме того, проблема относится к утечке информации на основании временных расхождений, CWE-208. Смысл в том, что проверка хеша занимает разное время в зависимости от входных данных. Злоумышленник измеряет задержки и по ним судит о внутреннем состоянии сеанса. Подобные приёмы называют атаками по сторонним каналам. Они не требуют внедрения вредоносного кода на целевой узел. Вместо этого нарушитель наблюдает за откликом системы и накапливает статистику. Со временем разрозненные замеры складываются в картину, которой можно воспользоваться.

Для эксплуатации достаточно сетевого доступа к узлу. Учётная запись и действие пользователя не нужны. Поэтому барьер для атаки низкий, а сама она возможна удалённо. Воздействие затрагивает конфиденциальность, целостность и доступность защищаемой информации. В BDU класс проблемы определён как уязвимость кода. Способ эксплуатации описан как манипулирование сроками и состоянием соединения вместе с несанкционированным сбором информации.

Затронуты ядра Linux с 6.7 по 6.12.77, с 6.13 по 6.18.18 и с 6.19 по 6.19.8. В перечень уязвимого программного обеспечения также входят Debian GNU/Linux 13 и операционная система АЛЬТ СП 10 от АО "ИВК". Для последней вендор не указал конкретную версию продукта. Под действие уязвимости подпадают серверы, сетевое оборудование и другие системы, где ядро собрано с поддержкой TCP-AO. Между тем механизм включают выборочно, для отдельных соединений. Поэтому администратору стоит проверить, какие сессии на его узлах защищены таким образом.

Отдельная сложность в том, что ядро Linux распространяется в десятках сборок. Каждый дистрибутив сопровождает собственную ветку и переносит исправления отдельно. Поэтому одна и та же уязвимость закрывается в разные сроки. Встраиваемые устройства и промышленные контроллеры нередко остаются на старых ядрах годами. Для них обновление может быть недоступно вовсе. Тогда помогает только изоляция от недоверенных сетей и ограничение числа открытых служб.

Сведения об эксплуатации уязвимости в реальных атаках пока не опубликованы. Наличие эксплойта, то есть вредоносного кода, использующего ошибку, уточняется. Однако производитель подтвердил проблему, и это главный признак того, что она реальна. Уязвимость закрыли в стабильных ветках ядра. Обновления доступны для Debian и АЛЬТ СП 10. Пользователям АЛЬТ СП 10 предлагают установить пакеты из публичного репозитория. Для Debian данные собрали в трекере безопасности проекта.

Если установить обновление нельзя, ФСТЭК советует опираться на "Рекомендации по безопасной настройке операционных систем LINUX". Документ утвердили 25 декабря 2022 года. Он описывает базовые меры, среди них ограничение сетевого доступа, отказ от лишних служб и разделение прав. Для узлов с прямым доступом из интернета такие настройки снижают вероятность успешной атаки.

Ядро Linux лежит в основе серверов, облачных платформ и сетевых устройств. Ошибка в общем для всех компоненте затрагивает сразу много организаций. При этом тайминговые уязвимости сложнее заметить. Они не связаны с запуском постороннего кода, а значит, не оставляют явных следов в журналах. Обнаружить их можно лишь по косвенным признакам, например по аномальной задержке ответов. Поэтому регулярное обновление ядра и отказ от неиспользуемых сетевых механизмов сокращают окно риска.

Ссылки

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