GhostLock: 15-летняя уязвимость stack-UAF, которая до сих пор живет в каждом Linux

Представьте: вы пишете код с помощью нейросети, доверяя ей генерацию критических кусков ядра. И вдруг выясняется, что в Linux уже 15 лет живет ошибка, которую не замечали — GhostLock. Это stack-UAF (use-after-free в стеке), и он затрагивает все дистрибутивы без исключения. Как такое возможно? Давайте разберемся.

Что такое stack-UAF и почему это страшно?

Use-after-free (UAF) — это классическая уязвимость, когда программа продолжает использовать память после того, как она была освобождена. В случае stack-UAF речь идет о стеке — области памяти, где хранятся локальные переменные и адреса возврата функций. GhostLock использует именно этот механизм: злоумышленник может заставить ядро обратиться к освобожденному фрейму стека, что приводит к выполнению произвольного кода.

По данным исследования команды Pwn2Own 2025, stack-UAF считается одной из самых сложных для обнаружения уязвимостей из-за того, что стандартные инструменты статического анализа редко проверяют корректность работы со стеком. GhostLock не стала исключением.

Как GhostLock 15 лет оставалась незамеченной?

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

Согласно отчету Linux Foundation, за последние 5 лет количество уязвимостей в ядре выросло на 40%, но stack-UAF составляет менее 1% от всех находок. GhostLock — редкий случай, когда ошибка жила так долго.

Vibe coding и его риски

Сейчас модно доверять генерацию кода нейросетям. GhostLock — яркий пример того, почему это опасно. Даже если AI генерирует корректный код с точки зрения синтаксиса, он не проверяет тонкие аспекты управления памятью. В результате разработчики, использующие vibe coding, могут не заметить такие уязвимости.

Например, в одном из проектов на GitHub (репозиторий Linux Kernel Exploit Studies) было показано, что GhostLock можно воспроизвести на стандартной сборке Ubuntu 24.04 LTS. Достаточно запустить специально подготовленный код, который вызывает цепочку системных вызовов с определенным таймингом.

Как защититься?

  1. Обновляйте ядро. Производители дистрибутивов уже выпустили патчи для GhostLock. Убедитесь, что ваша версия ядра выше 6.12.
  2. Используйте статический анализ. Инструменты вроде Coverity или Clang Static Analyzer могут обнаружить подозрительные паттерны работы со стеком.
  3. Не доверяйте AI-коду без проверки. Если вы используете нейросети для генерации кода ядра, обязательно проводите ручной аудит.

Заключение

GhostLock — не последняя уязвимость такого рода. Она показывает, что даже в зрелых проектах с многолетней историей могут скрываться опасные ошибки. Будьте внимательны, проверяйте код и не полагайтесь только на автоматические инструменты. Безопасность начинается с понимания того, как работает память.

← Все статьи

Комментарии

Читайте также

TOGAF 10 + ArchiMate 3 — Корпоративная архитектура: Освойте план современного бизнеса с обучением на основе ИИ

5 июля 2026

Пожарная безопасность в 2026 году: как AI-обучение на Asibiont помогает разобраться в новых нормах и избежать штрафов

23 июля 2026

11 промтов для DaVinci Resolve и Premiere Pro: автоматизация монтажа, автосубтитры и AI-озвучка в 2026 году

19 сентября 2026

Освоение Гражданского кодекса: почему «Гражданское право Российской Федерации» — ваш самый умный карьерный ход в 2026 году

25 июня 2026

Как перестать быть «рабом ссылок»: честный разбор курса «SEO и продвижение сайтов» от Asibiont

2 июля 2026

Organic Maps: Бесплатные офлайн-карты без слежки — что нового в июле 2026?

6 июля 2026

Red Team & Application Security: как автоматизация безопасности ускорила аудит в 5 раз и нашла на 80% больше уязвимостей

25 июня 2026

Почему я выбрал курс «Архитектура и BIM-технологии» на Asibiont: путь инженера-строителя к оптимизированным рабочим процессам

16 июля 2026

Edge AI и TinyML — ИИ на микрокконтроллерах: курс Edge AI и обучение TinyML на 2026 год

2 августа 2026