Ядро безопасности сейчас уникальный метод Linux для защиты кода

Сейчас ядро безопасности - уникальный метод защиты кода в Linux

secure-code-gettyimages-1125274914

Грег Кроа-Хартман, старший специалист Linux Foundation, в этом году выступил с обширной презентацией о текущем состоянии и будущих вызовах безопасности ядра Linux. В своем выступлении на Открытом источнике совещании (OSS) в Японии 2023, Кроу-Хартман, являющийся одним из основных разработчиков стабильного ядра Linux и важным членом команды по безопасности ядра Linux, рассказал о развивающейся обстановке в области безопасности программного обеспечения с открытым исходным кодом, регуляторных вызовах и ответе Linux на эти проблемы.

Практически каждый день мы сталкиваемся с проблемами безопасности программного обеспечения. А сейчас правительства стремятся управлять тем, как компании и организации должны справляться с проблемами безопасности. Одна проблема: правительства плохо понимают, как использовать программное обеспечение, не говоря уже о том, как создавать его разработчикам с открытым исходным кодом.

Также: Linux может быть самым надежным вариантом для повышения безопасности вашего настольного компьютера

Например, предложенный Европейским союзом Закон о кибернетической сопротивляемости (CRA) полон хороших намерений, но не подходит для разработчиков программного обеспечения с открытым исходным кодом. Как отметил Кроу-Хартман, самая последняя версия намного лучше, но это означает, что, поскольку “весь мир продает свои устройства и продукты в ЕС, это определит их требования безопасности”.

Готовы ли мы справиться с новой волной регулирования? Нет, нет и еще раз нет.

Что касается сообщества Linux, Кроу-Хартман заявил, что команда по безопасности ядра Linux в основном реагирует, в отличие от других групп безопасности, принимающих проактивную позицию. С момента своего официального создания в 2005 году команда работала неформально, без корпоративных привязок и контрактов. Это позволяет быть нейтральными и гибкими в решении проблем безопасности. Такой подход сформировал доверие среди компаний и эффективно управлял и подлагивал проблемы безопасности.

“Есть и другие группы, команды безопасности ядра и другие проекты”, добавил он, “которые проявляют проактивность. Но мы этим не занимаемся. Мы просто реагируем на проблемы”.

Проблем хватает. Например, Кроу-Хартман выделил непрерывные проблемы безопасности аппаратного обеспечения, особенно в связи с уязвимостями, такими как Spectre и Meltdown. Действительно, как он подчеркнул, прошло уже более трех лет с момента появления этих серьезных ошибок ЦП, и, несмотря на попытки их исправить аппаратно, “недавно была объявлена о новой проблеме. Так что это никогда не заканчивается”.

Это обращает на себя внимание на сложности, связанные с эмбарго на аппаратное обеспечение и более длительными циклами разработки аппаратного обеспечения по сравнению с программным обеспечением. Идеально, Кроу-Хартман хочет, чтобы компании-производители аппаратного обеспечения “были быстрыми”, что совпадает с мнением правительств и регулирующих органов.

Кроу-Хартман также отметил, что “многие люди сейчас не понимают, что, хотя модель коммерческого распространения Linux не мертва, она больше не является основной. 80% серверов и систем в мире работают на основе свободных и проектов с открытым исходным кодом, основанных на Debian, Fedora или openSUSE” — а не на Red Hat Enterprise Linux (RHEL) или SUSE Linux Enterprise Server (SLES).

Также: Хотите простое, стабильное и безопасное распределение Linux? Тогда вам подойдет SpiralLinux

Та реальность, которую описывает Кора-Хартман, создает сложности в области безопасности, потому что, как он объясняет: “Сообщества, работающие с этими проектами с открытым исходным кодом, не могут подписывать договор о неразглашении (NDA), поскольку их члены сообщества живут в других странах или работают в различных компаниях”.

Вместо этого команда разработчиков ядра Linux представляет собой “ад-ок неформальную группу” без контракта. Крах-Хартман продолжает: “И это было лучшее, что могло случиться, чтобы мы могли сделать это в пределах компании и нейтрального к правительству способа. Это спасло нас от многих проблем”.

Как это работает: люди отправляют сообщения о безопасности членам группы. Даже электронного списка нет. Есть только небольшая группа, которая не представляет никаких компаний. Крах-Хартман добавляет: “Все держится в секрете, и с 2005 года у нас никогда не было утечек информации”.

Что они делают, продолжает Крах-Хартман, “это классифицируют отчеты, выясняют, что не так, и привлекают соответствующих разработчиков (если их еще нет в списке) для создания исправления как можно скорее. Это исправление затем включается в стабильную ветку Linux. Вот и все”.

Когда они говорят “как можно скорее”, они имеют в виду это. “После того, как у нас есть исправление, мы храним его максимум семь дней. Это”, – продолжает Крах-Хартман, – “после того, как у нас есть исправление. Когда мы получаем отчет, мы начинаем работать над ним как можно скорее. Некоторые исправления у нас занимали более года. Были некоторые проблемы с сетью. Я думаю, что мы тратили на исправление более 18 месяцев, прежде чем сделали это правильно. Но после того, как мы исправили, исправление вносится”.

Также: Ubuntu Linux 23.10 вводит важную новую функцию безопасности

Группа также не делает объявлений о исправлениях безопасности. “Мы не объявляем ничего. Мы не говорим ничего особенного. Мы просто включаем это, чтобы оно выглядело как обычное исправление ошибки”.

Да, это вызывает гнев у людей. Но, объясняет Крах-Хартман, “для членов команды безопасности ошибка – это ошибка. Нет ничего особенного в исправлениях безопасности. И если мы объявляем исправления безопасности особыми, это означает, что другие исправления не являются особыми”.

Это ошибка, потому что, как сказал Крах-Хартман, “любая ошибка может стать проблемой безопасности на уровне ядра”. Маленькое исправление ошибки, которую он сделал много лет назад для TTY, малых подсистем в Linux сегодня оказалось серьезной проблемой безопасности. Оно позволяло любому получить привилегии root на системах RHEL. Вы никогда не знаете, где и когда возникнет проблема безопасности.

Крах-Хартман также замечает, что хотя “ядру Linux примерно 30 миллионов строк кода, в вашем сервере вы используете только около двух миллионов строк, в вашем телефоне – 4 миллиона строк, а в вашем телевизоре – полтора миллиона строк. Но мы не знаем, что вы используете. Linux везде, ваших автомобилях, спутниках и даже в доильных машинах для коров. Мы не знаем вашего случая использования. Мы не знаем, как вы используете Linux. Мы не знаем, какая модель безопасности у вас”. Поэтому все и все должно считаться важным.

Также: 7 вещей, которые даже новые пользователи Linux могут сделать для лучшей безопасности ОС

Итак, что вы можете сделать, чтобы защитить себя? Крах-Хартман подчеркивает, что вы всегда должны использовать последнее долгосрочное стабильное (LTS) ядро.

К сожалению, очень немногие дистрибутивы Linux делают это. Он критикует компании, которые не регулярно обновляют свои ядра. Устаревшие системы, по его мнению, не надежны.

Это не только его мнение. После многих исследований Крах-Хартман ссылается на команду по безопасности Google Android, которая обнаружила, что стабильные ядра Linux исправляют все известные недавние проблемы безопасности еще до сообщения о них. У них есть документальное подтверждение, что использование стабильных ядер всегда работает и гарантирует безопасность системы. Как сказал инженер Google Linux kernel Кис Кук: “Итак, что же должен делать поставщик? Ответ прост: непрерывно обновляться до последней версии ядра, будь то основная или стабильная”.