Баги в ядре Linux скрываются в среднем 2 года, а иногда и 20 лет

Баги в ядре Linux скрываются в среднем 2 года, а иногда и 20 лет

Баги в ядре Linux скрываются в среднем 2 года, а иногда и 20 лет

История с первой CVE для Rust-кода в ядре Linux, которая недавно привела к падениям системы, выглядела почти как повод для оптимизма. В тот же день для кода на C зарегистрировали ещё 159 CVE — контраст показательный. Но новое исследование напоминает: проблема не только в языках программирования.

Гораздо тревожнее первой Linux-дыры в коде на Rust тот факт, что многие ошибки в ядре Linux могут годами, а иногда и десятилетиями оставаться незамеченными.

Исследовательница Дженни Гуанни Ку из компании Pebblebed проанализировала 125 183 бага за почти 20 лет развития ядра Linux — и результаты оказались, мягко говоря, неожиданными.

 

По данным исследования, средний баг в ядре Linux обнаруживают через 2,1 года после его появления. Но это ещё не предел. Самый «долгоиграющий» дефект — переполнение буфера в сетевом коде — прожил в ядре 20,7 года, прежде чем на него обратили внимание.

Важно уточнить: речь идёт о багах в целом, а не только об уязвимостях. Лишь 158 ошибок из всей выборки получили CVE, остальные могли приводить к сбоям, нестабильности или неопределённому поведению, но не обязательно к эксплуатации.

Исследование опирается на тег Fixes:, который используется в разработке ядра Linux. Когда разработчик исправляет ошибку, он указывает коммит, в котором баг был добавлен. Дженни написала инструмент, который прошёлся по git-истории ядра с 2005 года, сопоставил такие пары коммитов и вычислил, сколько времени баг оставался незамеченным.

В датасет вошли данные до версии Linux 6.19-rc3, охватывающие период с апреля 2005 по январь 2026 года. Всего — почти 120 тысяч уникальных исправлений от более чем 9 тысяч разработчиков.

Оказалось, что скорость обнаружения ошибок сильно зависит от подсистемы ядра:

  • CAN-драйверы — в среднем 4,2 года до обнаружения бага;
  • SCTP-стек — около 4 лет;
  • GPU-код — 1,4 года;
  • BPF — всего 1,1 года.

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

Отдельная проблема — неполные фиксы. Исследование показывает, что нередко разработчики закрывают проблему лишь частично. Например, в 2024 году был выпущен патч для проверки полей в netfilter, но уже через год исследователь нашёл способ его обойти.

Такие ситуации особенно опасны: создаётся ощущение, что проблема решена, хотя на самом деле она просто сменила форму.

Замаскированные ссылки в Telegram позволяют деанонимизировать людей

Даже один, казалось бы, безобидный клик в Telegram может обернуться утечкой реального IP-адреса. Исследователи обнаружили, что специально сформированные прокси-ссылки позволяют злоумышленникам деанонимизировать пользователя — без дополнительных подтверждений и предупреждений. После публикаций об этом Telegram пообещал добавить предупреждения при открытии таких ссылок.

Как выяснилось, клиенты Telegram на Android и iOS автоматически пытаются подключиться к прокси-серверу, если пользователь нажимает на ссылку формата t.me/proxy?.... Причём соединение происходит напрямую, ещё до добавления прокси в настройки.

Proxy-ссылки Telegram предназначены для быстрой настройки MTProto-прокси — их часто используют для обхода блокировок и сокрытия реального местоположения. Обычно такая ссылка выглядит так:

t.me/proxy?server=IP&port=PORT&secret=SECRET

Но, как показали исследователи, такую ссылку легко замаскировать под обычное имя пользователя или «безопасный» URL. В сообщении она может выглядеть, например, как @username, хотя на самом деле ведёт на прокси-настройку.

Если пользователь нажимает на такую ссылку с телефона, Telegram автоматически проверяет доступность прокси, отправляя сетевой запрос напрямую с устройства. В результате владелец прокси-сервера получает реальный IP-адрес жертвы.

«Telegram автоматически пингует прокси до его добавления, запрос идёт в обход всех настроек, и реальный IP логируется мгновенно», — описывают механизм исследователи. Они называют это «тихой и эффективной точечной атакой».

Раскрытый IP-адрес можно использовать для определения примерного местоположения пользователя, таргетированных атак, DDoS или дальнейшего профилирования. Особенно опасной эта проблема выглядит для журналистов, активистов и пользователей, которые изначально используют Telegram и прокси именно ради анонимности.

Ситуацию впервые подробно описал телеграм-канал chekist42, а затем её подхватили исследователи и OSINT-аккаунты в X, опубликовав видеодемонстрации атаки.

В Telegram не считают происходящее полноценной уязвимостью. В компании заявили, что любой сайт или прокси-сервер в интернете может видеть IP-адрес посетителя, и это якобы не делает ситуацию уникальной.

«Любой владелец сайта или прокси видит IP-адрес пользователя вне зависимости от платформы. Это не более актуально для Telegram, чем для WhatsApp (принадлежит Meta, признанной экстремистской и запрещенной в России) или других сервисов», — сообщили в Telegram BleepingComputer.

Тем не менее разработчики признали риски и пообещали добавить предупреждения при переходе по прокси-ссылкам, чтобы пользователи понимали, что именно они открывают. Когда именно это появится в клиентах — пока не уточняется.

Пока предупреждений нет, эксперты советуют быть особенно осторожными:

  • не кликать по подозрительным ссылкам t.me, даже если они выглядят как имена пользователей;
  • помнить, что прокси-ссылки могут быть замаскированы под обычный текст;
  • особенно внимательно относиться к таким ссылкам на мобильных устройствах.

RSS: Новости на портале Anti-Malware.ru