Linux 7.0: один Bash-скрипт, одни выходные, 23 года багов в ядре. ai.. ai. linux 7.0.. ai. linux 7.0. Блог компании BotHub.. ai. linux 7.0. Блог компании BotHub. Будущее здесь.. ai. linux 7.0. Блог компании BotHub. Будущее здесь. ИИ.. ai. linux 7.0. Блог компании BotHub. Будущее здесь. ИИ. искусственный интеллект.. ai. linux 7.0. Блог компании BotHub. Будущее здесь. ИИ. искусственный интеллект. Машинное обучение.. ai. linux 7.0. Блог компании BotHub. Будущее здесь. ИИ. искусственный интеллект. Машинное обучение. машинное+обучение.. ai. linux 7.0. Блог компании BotHub. Будущее здесь. ИИ. искусственный интеллект. Машинное обучение. машинное+обучение. научно-популярное.. ai. linux 7.0. Блог компании BotHub. Будущее здесь. ИИ. искусственный интеллект. Машинное обучение. машинное+обучение. научно-популярное. нейросети.
Linux 7.0: один Bash-скрипт, одни выходные, 23 года багов в ядре - 1

Релиз Linux 7.0 состоялся 12 апреля. Rust теперь официально в деле. ИИ стал полноправным «соавтором» ядра. Линус Торвальдс называет это «новой нормальностью».

Двадцать три года. И один вечер.

Bash-скрипт крутится в цикле на ноутбуке Николаса Карлини. Ничего хитрого он не делает. Просто открывает файл с исходниками ядра, скармливает его модели Claude Opus 4.6, просит её представить, что она участвует в CTF-соревновании (Capture the Flag), и спрашивает, что тут можно сломать. Затем открывает следующий файл. И следующий.

Карлини даже не следит за процессом. Он запускал подобное и раньше. Месяцами запускал. И всегда в ответ получал только белый шум.

А потом приходит результат… И заставляет его перестать печатать.

Модель нашла дыру в коде, который Linux использует для сетевого обмена файлами. Тот самый код крутится на файловом сервере в вашей компании, в хранилище вашей больницы, на общих дисках в школе вашего ребенка и на изрядной доле бэкендов в AWS, Google Cloud и Azure.

Благодаря этому багу стажер в свой первый рабочий день, просто подключившись к гостевому Wi-Fi в офисе, может запустить коротенький скрипт и захватить файловый сервер. «Захватить» — в смысле: прочитать табличку с зарплатами HR-отдела, удалить зарплатный архив, скопировать бэкапы почты гендиректора и поставить вечный бэкдор, который переживет три следующие перезагрузки. Никакого пароля админа. Никаких украденных учеток. Никакой цепочки из других уязвимостей. Эта дыра была в каждом файловом сервере на базе Linux, выпущенном с марта 2003 года по апрель 2026-го.

Карлини лезет в историю коммитов. Дыру внесли в ядро в марте 2003 года. То есть еще до того, как появился сам git (он вышел в апреле 2005-го). Этот баг есть в каждой системе хранения данных на базе Linux, проданной за последние два десятилетия.

Какое-то время он просто смотрит в экран. Позже он скажет аудитории на ИИ-конференции по безопасности [un]prompted: «Я в жизни не находил ничего подобного. Сделать это очень, очень, очень сложно».

Я работаю с Linux-системами с 2004 года. Телеком, цифровая медицина, deep-tech. Я запускал xfs_repair в полночь на проде чаще, чем хотелось бы вспоминать. И я видел, как падающий NFS-сервер лишал целую команду полного рабочего дня.

Скрипт Карлини не какой-то гениальный. Он просто дешёвый.
Неделя вычислений и один человек. Простая экономика.

И три недели спустя Линус Торвальдс тегнул релиз Linux 7.0, оставив в email-рассылке строчку, которая звучала как пожатие плечами: «Подозреваю, ИИ-инструменты еще какое-то время будут находить для нас такие корнер-кейсы, так что, возможно, это наша “новая нормальность” — по крайней мере, на какое-то время».

Линус Торвальдс выпустил Linux 7.0 в воскресенье, 12 апреля 2026 года. Это история о том, что пришло вместе с этим релизом, и о тех, кто это туда добавил.

И это релиз, с которым та самая «новая нормальность» окончательно наступила.


Февральское утро, когда слоп закончился

Грег Кроа-Хартман ведет стабильную ветку ядра Linux. Он — человек номер два после Линуса. А еще он отвечает за инбокс безопасности ядра. И годами, открывая почту, он видел там в основном мусор. «ИИ-помои» (AI slop), как он это называет. Сгенерированные отчеты, где нет реального бага, перепутаны файлы, строки — вообще всё. У него для этого даже заведена отдельная папка.

Но однажды февральским утром папка перестала пополняться.

Пошли реальные баг-репорты. С конкретными номерами строк. С репродьюсерами, которые действительно воспроизводят ошибку. С первопричинами, которые подтверждаются. В марте он сказал The Register: «Месяцы назад мы получали то, что называли ИИ-помоями. А потом, месяц назад, что-то произошло, и мир перевернулся. Теперь у нас реальные отчеты». И добавил: «Мы не знаем почему. Никто, похоже, не понимает».

То ли все передовые модели разом научились читать Си в один и тот же месяц, то ли критическая масса ресерчеров в одну и ту же неделю решила натравить свои ИИ на легаси-код. А может, и то, и другое.

Грег делает то, что должен делать мейнтейнер: пишет документацию. Перед выходом Linux 7.0-rc7 он пушит апдейт в security-bugs.rst — файл, который объясняет безопасникам, как сабмитить уязвимости. Теперь этот апдейт написан для языковых моделей. Там объясняется, какой мейнтейнер отвечает за какую подсистему, как выглядит правильно оформленный отчет и какие поля должен включать автоматизированный пайплайн. Инбокс безопасности ядра теперь работает в режиме двойного назначения: люди и ИИ-агенты едут по одной полосе.

А тем временем вторая команда мониторит коммиты, а не готовые CVE. Роман Гущин из Google запускает проект Sashiko (названный в честь японской техники вышивки и написанный на Rust — чуть позже вы поймете иронию). Sashiko читает каждый патч, отправленный в LKML (список рассылки разработчиков ядра). На бенчмарке из 1000 реальных патчей он ловит 53% багов, которые в итоге всплыли позже. И каждый из этих багов был пропущен живыми ревьюерами.

Когда Гущина спросили об этой цифре, он ответил: «Кто-то скажет, что 53% — это не так уж впечатляет. Но 100% этих проблем пропустили люди-ревьюеры».

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

Вот как ощущается «новая нормальность» изнутри.


Кстати, об инструментах. Если вам нужен доступ ко всем ключевым моделям — Claude, GPT, Gemini — загляните на BotHub.

Linux 7.0: один Bash-скрипт, одни выходные, 23 года багов в ядре - 2

Для доступа не требуется VPN, можно использовать российскую карту.

По ссылке вы можете получить 300 000 бесплатных токенов  для первых задач и приступить к работе с нейросетями прямо сейчас!


Rust победил. Обе стороны сдались.

В день релиза Мигель Охеда закинул свой последний пулл-реквест Rust-for-Linux для версии 7.0 с одной строчкой в описании:
«Эксперимент окончен, то есть Rust здесь всерьез и надолго».

Четыре года назад за такую фразу на него бы наорали. Rust впервые попал в Linux 6.1 в конце 2022 года как эксперимент — и был влит туда вопреки протестам мейнтейнеров, считавших его причудой, политическим проектом или чем похуже. Спустя шесть релизов плашку «эксперимент» снимают. Rust — полноправный язык в ядре. Отдельные подсистемы всё ещё сами решают, принимать ли им код на Rust, и подавляющая часть ядра остаётся на Си, но сам спор закончен.

Драйвер Nova (опенсорсная замена nouveau от NVIDIA для архитектуры Turing) выходит в версии 7.0 с кодом на Rust. Инфраструктура Rust DRM, которую Данило Круммрих строил последние два года, теперь в мейнлайне.

Но людей, которые потратили четыре года, чтобы это произошло, в комнате уже нет.

Уэдсон Алмейда Фильо, возглавлявший внедрение Rust от Microsoft, после четырех лет споров с мейнтейнерами Си (которые не хотели видеть его код даже близко к своим подсистемам), написал заявление об уходе, сославшись на «нетехническую чушь», и хлопнул дверью. Его со-руководитель Алекс Гейнор ушел на той же неделе, когда Rust получил официальный статус. Круг почета прошел без них.

С другой стороны — Кристоф Хеллвиг. Он 20 лет был мейнтейнером подсистемы DMA (Direct Memory Access) — куска ядра настолько фундаментального, что большинство инженеров даже не знают, кто им владеет, потому что им никогда не приходилось туда лезть. Годом ранее Хеллвиг в публичной переписке назвал смешивание Rust с Си «раком». Когда мейнтейнеры согласились позволить драйверам на Rust вызывать Сишные API DMA через тонкую абстракцию, Хеллвиг ушел в отставку. Его место занял Марек Шипровски.

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

Safe Rust делает целые категории багов невозможными на структурном уровне. Переполнения буфера. Использование памяти после освобождения (use-after-free). Разыменование нулевого указателя. Тот самый 23-летний баг в NFSv4, который нашел скрипт Карлини — это то, чего в Safe Rust просто не может существовать по дизайну.

Linux 7.0: один Bash-скрипт, одни выходные, 23 года багов в ядре - 3

В ядре теперь есть язык, на котором тупо нельзя написать CVE из начала этой статьи. И люди, которые за это бились, ушли. И человек, который бился против, ушел.

А Linux 7.0 всё равно вышел.


ИИ-правила: тег Assisted-by

Вместе с релизом выкатили новый свод правил. Любой патч, написанный с помощью ИИ, теперь должен содержать тег Assisted-by:, где указаны модель и инструменты. ИИ-агенты не могут ставить подпись Signed-off-by, потому что Developer Certificate of Origin — это юридическое заявление, которое может сделать только человек. Ответственность за баги остается на белковом разработчике, нажавшем кнопку «Отправить».

Это правило появилось не потому, что комьюнити село и спокойно всё обсудило. Оно появилось потому, что Саша Левин, инженер из NVIDIA, закинул в ядро 6.15 патч, почти полностью сгенерированный языковой моделью (включая чейнджлог), и никому об этом не сказал. Код скомпилировался. Он прошел первоначальное ревью. А еще он содержал регрессию производительности, которая дожила до стабильной ветки и испортила кому-то целую неделю.

Скандал был таким громким, что Линус, у которого вообще нет терпения на долгие процедурные митинги, жестко обрубил дебаты. Призывы к полным запретам он назвал «бессмысленным позерством». ИИ — это инструмент. Ответственность — на человеке. Внедряем политику.

Red Hat (которая поставляет коммерческий Linux дольше, чем большинство разработчиков в этой истории вообще умеют кодить) подняла более сложный вопрос, на который пока нет ответа. Языковые модели, обученные на коде под лицензией GPL, делают структурно сложным подтверждение происхождения любого коммита. Чей копирайт в этой генерации?

В Linux 7.0 эта проблема не решена. И никуда она не денется.


Ваша суббота. Ваш банк. Ваш 2035 год.

В дата-центре RAID-контроллер запускает ночной цикл SCRUB — рутинную проверку целостности на каждом диске массива. Внутри метаданных файловой системы переворачивается один бит. Ноль стал единицей там, где ядру этого хотелось меньше всего.

Если у вас крутится XFS (дефолтная файловая система на RHEL, Rocky, AlmaLinux и Oracle Linux), исторически вы узнавали об этом одним из двух способов. Либо сервис начинал чудить. Либо на следующее утро вы читали вывод xfs_repair на отмонтированном диске. И то, и другое — гарантия паршивого понедельника.

В январе 2026 года Darrick J. Wong отправил 6-ю версию своего патчсета для самовосстановления XFS, и она вошла в релиз 7.0. До этого релиза, если файловый сервер в компании терял один байт метаданных на выходных, дежурный инженер получал алерт, ехал в офис, гасил сервер, запускал xfs_repair и поднимал всё обратно. В лучшем случае — 4 часа даунтайма. В худшем — ремонт не укладывался в окно обслуживания, и понедельничная планерка начиналась с извинений.

Linux 7.0 отменяет эти субботние поездки в офис. Фоновый демон xfs_healer обнаруживает битый сектор, чинит его на лету, пока сервер продолжает отдавать файлы, и просто пишет лог. Пользователи ничего не замечают. Пейджер молчит. Понедельник начинается вовремя.
Умножьте это на масштабы облаков (XFS — дефолт на образах RHEL в AWS, GCP и Azure). Большая часть энтерпрайз-парка планеты только что стала спать спокойнее.

Тем временем во Франкфурте: где-то в банке сервер SPARC M7 проводит сделку. Софт был написан в 1998 году. Контракт с Oracle гласит, что эту железяку трогать нельзя. 12 апреля этот сервер получил новый код ядра. Архитектура SPARC (привет из начала 90-х от Sun Microsystems) получила фикс бага fork/clone, поддержку нового системного вызова clone3 и чистку API.

Linux 7.0: один Bash-скрипт, одни выходные, 23 года багов в ядре - 4

DEC Alpha, который в основном живёт в научных лабах, получил фикс повреждения памяти в user-space. Motorola 68000 тоже получила свои патчи. А вот поддержку Intel i486 удалили. Процессор 486-й серии вышел в 1989-м. Код для 32-битных x86 всё еще используется, но отказ от совместимости с i486 позволяет ему работать быстрее на всём остальном. SPARC сохранили, потому что кому-то не наплевать, и он готов за него отвечать. От 486-го избавились по той же причине: всем наплевать.

Новейшие серверные чипы AMD (EPYC 9005) теперь работают с зашифрованными виртуалками еще эффективнее благодаря обновленному пути KVM в 7.0. Зашифрованные виртуальные машины (SEV-SNP) — это та самая фича, за которую банки и больницы доплачивают облачным провайдерам, чтобы сам провайдер не мог прочитать их данные. Для AWS или Azure это разница между прибыльным тарифом «конфиденциальных вычислений» и просто красивым слайдом в презентации.

Постквантовая безопасность: Алгоритм ML-DSA добавлен в ядро на трех уровнях безопасности. Зачем? Каждый раз, когда машина на Linux загружает драйвер, она проверяет криптографическую подпись. Сегодняшние подписи могут быть подделаны квантовым компьютером. Таких компьютеров еще нет. Проблема в том, что враждебные спецслужбы уже сегодня записывают зашифрованные логи, закладываясь на десять лет терпения. Когда в 2035 году появится нужный компьютер, они подделают обновление ядра (которое будет выглядеть легитимно), отправят его на целевой ноутбук и превратят его в прослушку.

ML-DSA закрывает эту дверь в 2026-м, пока её еще легко закрыть. А подписание модулей ключом SHA-1 (которое рухнуло бы за минуты перед машиной будущего) в этом же релизе выпилили окончательно.


Кнопка Copilot была майкрософтовской. Эти три — общие.

Три новых скан-кода появились в подсистеме ввода input. Их добавил Google в пулл-реквесте для 7.0, и он же написал спецификацию для USB-IF (HUTRR119).

Linux 7.0: один Bash-скрипт, одни выходные, 23 года багов в ядре - 5
  • KEY_ACTION_ON_SELECTION (0x254) — запускает ИИ-действие над выделенным контентом (объяснить, сократить, найти).

  • KEY_CONTEXTUAL_INSERT (0x255) — открывает оверлей для генерации текста прямо в активное поле.

  • KEY_CONTEXTUAL_QUERY (0x256) — предлагает подсказки, связанные с выбранным элементом.

В отличие от кнопки Copilot от Microsoft (которую в 2024 году намертво привязали к ассистенту конкретного вендора), эти три клавиши — это first-class значения HID-протокола, и они агностичны к агентам. Вендор ноутбука может замапить их на Claude, Gemini, локальную инстанцию llama.cpp или на ваш собственный bash-скрипт. Ваш следующий ThinkPad, Dell XPS или Framework выйдет уже с ними.


Следующий 23-летний баг

Один релиз. Четыре сдвига парадигмы.
ИИ ревьюит патчи в рассылке с эффективностью 53%. ИИ находит баги ядра, которые прятались 23 года. ИИ получает официальное признание как соавтор под новым тегом. А в ядре вырастает поддержка трех физических кнопок для общения с ИИ-агентами.

Инфраструктура, построенная для ИИ, и инфраструктура, ставшая безопаснее благодаря ИИ — и всё это на одной неделе.

Если один человек с одним bash-скриптом нашел уязвимости ядра за долгие выходные… сколько нашла внутренняя команда Google? Сколько нашла команда вашего вендора железа? Сколько уже нашли правительственные хакеры, заархивировали и никому об этом не сказали?

Линус назвал это «новой нормальностью». OpenSSL. GCC. Python. Postgres. Chromium. И тот самый 10-летний микросервис в вашем репозитории, который никто не трогал с тех пор, как его автор уволился. Все они сидят где-то с буфером на 112 байт и попыткой записи на 1056 байт, которые никто не догадался проверить.

Они просто ждут bash-скрипт, который еще не написан.

Если у вас крутится NFS — вы уже должны были накатить патч от CVE-2026–31402. Если у вас RHEL с XFS — тестируйте самовосстанавливающегося демона на стейджинге.

Но главное: если у вас в проде крутится хоть что-то, написанное до 2010 года, на этой неделе спросите своего лида по безопасности, какой у вас план на тот день, когда кто-то натравит на этот код условного Claude.

Ответ «у нас есть код-ревью» больше не принимается.
Код-ревью пропускало этот баг двадцать три года.

Когда ваша кодовая база получит свою CVE от тупого bash-скрипта, что будет написано в вашем постмортеме?

Автор: cognitronn

Источник