Greg KH: LLM меняет безопасность ядра Linux
Грег Кроа-Хартман — мейнтейнер стабильной ветки Linux — рассказал, как LLM-инструменты радикально изменили поиск уязвимостей и процесс разработки ядра.
LLM перевернул безопасность ядра Linux
Мейнтейнер стабильной ветки Linux Грег Кроа-Хартман (Greg Kroah-Hartman) заявил, что LLM-инструменты (Large Language Models — большие языковые модели) помогают выявлять целый поток новых уязвимостей безопасности в ядре, включая такие баги, как Dirty Frag, Copy Fail и Fragnesia. При этом ситуация развивается настолько стремительно, что традиционные подходы к разработке и раскрытию уязвимостей оказались под серьёзным давлением. В качестве главного ответа на вызовы эпохи Кроа-Хартман называет язык Rust.
От «AI-мусора» к реальным отчётам
Ещё несколько месяцев назад команда ядра получала то, что сами разработчики называли «AI slop» — очевидно ошибочные или низкокачественные отчёты от ИИ. Но затем что-то изменилось: «Something happened a month ago, and the world switched. Now we have real reports».
Команды безопасности крупных open source проектов общаются между собой неформально и часто — и все фиксируют одну и ту же смену тренда. Поток реальных находок нарастает и не замедляется, а небольшие проекты особенно уязвимы, поскольку у них значительно меньше ресурсов для обработки резко возросшего числа правдоподобных AI-сгенерированных отчётов.
Сам Кроа-Хартман признаёт личную пользу от LLM: он дал модели простой запрос и получил 60 потенциальных проблем с готовыми патчами. Примерно треть оказалась ошибочной, но всё равно указывала на реальные слабые места, а две трети патчей были корректными.
«The tools are good. We can’t ignore this stuff. It’s coming up, and it’s getting better.» — Greg Kroah-Hartman
Политика: LLM-патчи под запретом, кроме security-фиксов
Несмотря на личное использование AI, Кроа-Хартман ввёл жёсткую политику: LLM-сгенерированные патчи теперь запрещены в секции drivers/staging/ ядра Linux — той самой площадке, где новички учатся участвовать в разработке.
Логика проста: staging существует как учебная площадка для новых контрибьюторов, и если AI делает всю работу по очистке кода, смысл этой зоны теряется. Единственное исключение — подлинные security-фиксы, найденные LLM, при условии что автор тестировал патч на реальном железе и может объяснить процесс тестирования.
Rust как ответ на вызов LLM-эпохи
Выступая на конференции Rust Week 2026 в Утрехте, Кроа-Хартман сообщил, что команда ядра сейчас выпускает около 13 CVE (Common Vulnerabilities and Exposures — общепринятый реестр уязвимостей) в день, назвав это «something crazy» и указав на давние проблемы управления памятью в языке C как главную причину.
В качестве иллюстрации он привёл реальные баги в ядре: 15-летний баг в Bluetooth, где указатель разыменовывался без проверки, и баг в Xen, где в ветке обработки ошибки забыли снять блокировку. «Большинство багов в ядре — вот такие маленькие, незаметные штуки: не проверены условия ошибок, забытые блокировки, утечки памяти — и уязвимости накапливаются».
Главное достоинство Rust, по его словам, — компилятор ловит эти ошибки на этапе сборки, а не во время ревью. Например, в Rust доступ к внутренним полям структуры возможен только при захваченной блокировке, причём её снятие происходит автоматически — компилятор гарантирует это.
При этом Кроа-Хартман подчёркивает: Rust — «not a silver bullet» и не предполагает переписывания всего ядра. Но новые драйверы и подсистемы будут всё активнее писаться на Rust по мере развития Linux.
graph TD
A[LLM-инструменты] -->|Находят уязвимости| B[Поток CVE ~13/день]
A -->|Генерируют патчи| C[AI-патчи в staging]
B --> D{Реакция команды ядра}
C --> D
D -->|Запрет LLM-патчей в staging| E[Политика Greg KH]
D -->|Внедрение Rust| F[Защита на уровне компилятора]
E -->|Исключение| G[Security-фиксы — разрешены]
F --> H[Меньше CVE в будущем]
Конец традиционной модели раскрытия уязвимостей
В профессиональном сообществе всё громче звучит мысль о том, что традиционная модель координированного раскрытия уязвимостей (coordinated disclosure) безвозвратно устарела. Кроа-Хартман согласен: координация уязвимостей в нынешних условиях практически невозможна.
По мере того как LLM-инструменты ускоряют обнаружение проблем, традиционное уведомление при раскрытии становится всё труднее — а возможно, и вовсе невозможным.
Сравнение: до и после LLM в безопасности ядра
| Параметр | До LLM | После LLM |
|---|---|---|
| Качество отчётов | Высокое, но редкое | Массовое, растущая точность |
| CVE в день | ~3–4 | ~13 и более |
| Нагрузка на мейнтейнеров | Умеренная | Критически высокая |
| Скорость обнаружения багов | Дни/недели | Часы |
| Coordinated disclosure | Рабочая модель | Фактически нежизнеспособна |
| AI-патчи в staging | Не регулировались | Запрещены (кроме security) |
Итог
Выступление Грега Кроа-Хартмана — это не просто взгляд изнутри на проблемы одного проекта. Это сигнал всей индустрии: LLM радикально меняют правила игры в безопасности программного обеспечения. Скорость обнаружения уязвимостей растёт экспоненциально, старые процессы координации рушатся, а ответом на уровне языков программирования становится Rust с его гарантиями безопасности памяти на уровне компилятора.