Большой интерес Google к безопасности Linux

Источник · Перевод автора

Google теперь платит разработчикам больше денег за работу по защите своих ядер Linux в этом году. Этот жест вполне может стать началом попытки компании усилить контроль над открытым исходным кодом.

Действия Google последовали за растущими угрозами для Linux, которые развернулись в прошлом году по мере того, как хакеры обращаются к новым стратегиям, таким как написание штаммов вредоносных программ на языке программирования Go.

Скорость распространения вредоносных программ ошеломляет. Количество инцидентов с зараженным кодом за последний год выросло на 500%. По данным Google, это на 2000 процентов больше, чем в 2017 году.

Этот всплеск не вызывает сомнений, потому что Go позволяет хакерам быть универсальными и нацеливаться на Windows, Mac и Linux из одной и той же кодовой базы. Кроме того, только в 2020 году количество семейств вредоносных программ, связанных с Linux, увеличилось на 40 процентов.

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

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

«Я знаю, что они были посвящены безопасности ядра Linux на уровне разработчиков. И вы знаете, что это, очевидно, может быть сложной задачей, потому что получение обзора и одобрения кода для включения в ядро, кажется, всегда вызывает борьбу, – сказал Эдвардс LinuxInsider.

Все о безопасности ядра

«У авторов кода есть два режима работы», – пояснил Эдвардс. Один из них – это режим целостности, в котором вы все еще можете собирать определенные точки данных из ядра, которые могут быть полезны для видимости.

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

Видимость кода является важнейшим условием для анализа кода с открытым исходным кодом. Эдвардс серьезно обеспокоен тем, как Google планирует осуществить вмешательство.

«Я опасаюсь, что когда Google проведет такую черту. Если его программные кодеры удалят видимость, они на самом деле еще больше навредят безопасности», – предупредил Эдвардс.

«Это особенно важно, если это делается под предлогом или предположением, что любые превентивные меры, которые они принимают, означают, что им больше не нужна видимость», – рассуждал он.

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

«Но если у вас есть четкая видимость или наблюдаемость, это означает, что атакующий должен учитывать, как каждый артефакт или побочный эффект движения может раскрыть свое присутствие», – пояснил он.

Таким образом, видимость должна позволять наблюдать те же меры по смягчению последствий аварии, которые предназначены для предотвращения аварии. В то же время программисты должны помнить о предвзятости, которая возникает при создании смягчения, предупредил он.

«У вас обязательно будут предубеждения, когда вы создадите наблюдаемость. Но эти предубеждения все еще поддаются наблюдению за вещами, о которых вы даже не подозревали. Это можно использовать в целях безопасности», – сказал Эдвардс.

Связь Google с открытым исходным кодом

Google и Linux Foundation недавно объявили, что Google профинансирует двух штатных разработчиков безопасности Linux, чтобы полностью сосредоточиться на защите ядра.

Такой вид поддержки неудивителен для конгломерата Google. По словам официальных лиц Linux, Google объединила усилия, чтобы финансировать разработчиков систем безопасности Linux для проектов с открытым исходным кодом. Например, в начале февраля Google пожертвовал 350 000 долларов Python Software Foundation на поддержку проектов, направленных на повышение безопасности цепочки поставок.

Эта организация также является одним из основателей Open Source Security Foundation. OSSF – это проект Linux Foundation, посвященный повышению безопасности программного обеспечения с открытым исходным кодом.

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

«Наша команда отвечает за то, чтобы Google упростил безопасное использование программного обеспечения с открытым исходным кодом, которое мы используем в качестве своих зависимостей для работы практически всех наших инфраструктур», – сказал он. «Кроме того, чтобы инженеры Google могли с легкостью создавать и распространять программное обеспечение с открытым исходным кодом для таких устройств, как Chrome, Android и облако, по всей системе Google».

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

Что случилось

Официальный сервер PHP Git был взломан опытным злоумышленником, пытавшимся внедрить вредоносное ПО в кодовую базу проекта PHP. Две попытки злонамеренного коммита были предприняты хакером с использованием имен и учетных данных репозитория.

Разработчик и сопровождающий языка программирования PHP Никита Попов сказал, что в репозиторий php-src были добавлены две вредоносные фиксации как на его имя, так и на имя создателя PHP Расмуса Лердорфа. Официальные лица заявили, что пока не знают, как именно это произошло.

Но, по словам Никиты Попова, старшего инженера-программиста JetBrains и члена PHP Group, это скорее компрометация сервера git.php.net, чем компрометация отдельной учетной записи git. В результате официальные лица сервера git.php.net решили, что поддержка собственной инфраструктуры git представляет собой ненужную угрозу безопасности, и прекратили работу сервера git.php.net.

Вместо этого репозитории на GitHub, которые раньше были только зеркалами, станут каноническими. Это означает, что изменения следует отправлять непосредственно на GitHub, а не на git.php.net.

«Бэкдор в исходном коде PHP не является чем-то новым. Но применяемые меры по смягчению последствий подчеркивают, как открытое и открытое сообщество может обнаруживать и предотвращать хаос. Не остановить его, но, возможно, уменьшить его влияние », – сказал Лоренк LinuxInsider.

Пример PHP хорош, учитывая, что PHP работает на 80% Интернета, добавил он, отметив, что Google построен на Linux, а безопасность начинается с ядра.

«Любые улучшения, которые мы здесь делаем, приносят прямую пользу нашим пользователям», – сказал он.

Возможность критических последствий

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

«Реальность такова, что этот инцидент мог иметь далеко идущие последствия, но команда PHP проделала огромную работу по обнаружению этого на раннем этапе и предотвращению попадания скомпрометированного кода на конечных пользователей», – сказал Лоренц.

Он надеется, что этот инцидент напомнит всем, что безопасность наших систем управления версиями и сборки так же важна, как и наша производственная среда. Цифры не врут.

Нет простого исправления

Google и другие крупные технологические компании могут создавать или разрушать сообщества разработчиков ПО с точки зрения их поддержки, иногда финансовой. Цель – сделать среду Linux более безопасной.

«Поддержка разработчиков, которые уже работают над повышением безопасности открытого исходного кода, – отличный первый шаг», – согласился Лоренц. «Но нам нужно перейти в наступление и начать создавать технологии, которые могут предотвратить целый класс проблем».

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

Самая большая проблема, с которой сталкиваются Big Tech при достижении этих целей в области безопасности, – это не проиграть войну безопасности с программным обеспечением с открытым исходным кодом.

Это по праву привлекло внимание отрасли. Но решения требуют консенсуса в отношении проблем и сотрудничества в их исполнении.

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

Внимание теперь там, где оно принадлежит

По оценкам компании Sonatype по автоматизации DevOps, по крайней мере 80 процентов кода в современных системах является открытым исходным кодом. Но с точки зрения безопасности он еще ни разу не приблизился к такому уровню внимания или ресурсов, – отмечает Лоренц. Самая большая проблема, с которой мы сталкиваемся как отрасль, – это уделять приоритетное внимание безопасности программного обеспечения с открытым исходным кодом.

«Безопасность программного обеспечения с открытым исходным кодом по праву привлекла внимание отрасли, но решения требуют консенсуса в отношении проблем и сотрудничества в их реализации», – призвал он.