Как Linux io_uring создает критические бреши в безопасности современных систем?

Недавно разработанный экспериментальный руткит под названием "Curing" продемонстрировал серьезную уязвимость в системах обнаружения угроз для Linux. Используя механизм асинхронного ввода-вывода io_uring, вредоносное ПО способно обходить инструменты мониторинга системных вызовов, создавая то, что специалисты ARMO называют «крупным слепым пятном в инструментах безопасности Linux".
Как Linux io_uring создает критические бреши в безопасности современных систем?
Изображение носит иллюстративный характер

Механизм io_uring был впервые представлен в версии ядра Linux 5.1 в марте 2019 года и предназначен для обеспечения эффективного асинхронного ввода-вывода. Технология использует две кольцевые буферные структуры: очередь отправки (SQ) и очередь завершения (CQ), которые обеспечивают прямую коммуникацию между пользовательским пространством и ядром. Эта архитектура позволяет отслеживать запросы ввода-вывода асинхронно, значительно повышая производительность.

Однако именно эта эффективность становится проблемой с точки зрения безопасности. Руткит "Curing", разработанный командой ARMO в качестве доказательства концепции, демонстрирует, как вредоносное ПО может использовать io_uring для обеспечения скрытой связи между командным сервером (C2) и зараженным хостом. Ключевая особенность руткита заключается в его способности выполнять команды без осуществления традиционных системных вызовов, используя вместо этого механизм io_uring.

Проблема усугубляется тем, что популярные инструменты безопасности Linux, такие как Falco и Tetragon, оказываются «слепыми» к операциям, выполняемым через io_uring. Эти инструменты в значительной степени полагаются на перехват системных вызовов для обнаружения подозрительной активности, и когда эти вызовы не используются, системы защиты оказываются бессильными.

Опасения относительно безопасности io_uring не новы. Еще в июне 2023 года компания Google ограничила использование io_uring в своих продуктах, включая Android, ChromeOS и производственные серверы. В официальных заявлениях Google указывалось, что io_uring «предоставляет мощные примитивы для эксплуатации уязвимостей», что подчеркивает серьезность проблемы.

Эксперты в области кибербезопасности подтверждают сложность ситуации. Амит Шендель, руководитель исследований безопасности в ARMO, отмечает: «С одной стороны, вам необходима видимость системных вызовов; с другой стороны, требуется доступ к структурам ядра и достаточный контекст для эффективного обнаружения угроз». Это заявление подчеркивает фундаментальную проблему современных инструментов безопасности Linux.

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

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


Новое на сайте

20276Как один npm-пакет для защиты кода сам стал источником заражения? 20275Может ли обычное письмо взломать вашу почту в Zimbra? 20274Зачем сразу несколько разведок взломали портал полиции Белуджистана? 20273Кошельки, которые «родились слабыми»: как уязвимость Ill Bloom стоила криптовладельцам... 20272Как мошенники используют фальшивую регистрацию passkey, чтобы захватить чужой Microsoft... 20271Как безобидный установщик 7-Zip превращает компьютер в чужой прокси-сервер? 20270Термометр, а не трофей: зачем всем вдруг понадобились базы уязвимостей 20269Почему кнопка «разрешить» в AI-редакторах кода может обмануть даже опытного разработчика? 20268Как китайская группировка Silver Fox превратила инструмент против цензуры в оружие для... 20266Почему физик из Лондона получил один из самых престижных призов в науке за измерение... 20265Сколько времени нужно хакеру, чтобы взломать вашу сеть — и успеете ли вы это заметить? 20264Как ИИ-агент, который должен ловить вирусы, сам стал вирусом 20263Переговорщик по выкупам работал на тех самых хакеров, от которых должен был защищать... 20262Дыра в Defender: как гонка процессов открывала путь к правам SYSTEM, а заплатка принесла...
Ссылка