Компания GitHub выпустила пакетную систему защиты (Package Firewall) в качестве общедоступной предварительной версии для клиентов, использующих облачные сервисы предприятия. Эта система проверяет запросы и загрузки пакетов.

Компания GitHub представила публичную предварительную версию своего сервиса "Package Firewall" для корпоративных клиентов, использующих облачные решения. Этот сервис проверяет запросы и загрузки пакетов на соответствие централизованным политикам безопасности. На данный момент он поддерживает только пакеты npm.

Компания GitHub разработала систему защиты от вредоносного кода, который может быть выполнен во время установки пакетов. Особенно уязвимы в этом отношении инструменты разработки и системы непрерывной интеграции (CI/CD), которые устанавливают зависимости без участия человека. Согласно информации, предоставленной компанией GitHub, предварительная версия этой системы защиты доступна клиентам, использующим облачную платформу GitHub Enterprise Cloud с функцией хранения данных в определенном регионе.

Минимальный возраст и сообщения о безопасности в качестве фильтров.

На первом этапе администраторы устанавливают правила для своей организации. Это включает в себя настраиваемый период ожидания для новых версий пакетов: брандмауэр разрешает установку только после истечения этого периода. Кроме того, он может проверять пакеты на наличие вредоносного ПО и уязвимостей, используя информацию из базы данных GitHub Advisory Database, и блокировать их при обнаружении проблем. Еще один фильтр срабатывает, когда новая версия пакета впервые содержит скрипты установки, такие как preinstall или postinstall. Поскольку такие скрипты могут выполнять произвольный код, брандмауэр блокирует загрузку в случае активации этого фильтра.

Еще одна функция контроля обнаруживает так называемые "деградации аттестации". В этом случае межсетевой экран сравнивает информацию об источнике запрошенной версии пакета с информацией о более ранних версиях. Если пакет ранее имел сертификаты соответствия стандартам SLSA, которых нет в новой версии, загрузка блокируется. Отсутствие таких сертификатов может указывать на нарушение процесса публикации, как объясняется в документации GitHub по настройке межсетевого экрана для пакетов.

Трафик пакетов должен проходить через брандмауэр.

Брандмауэр расположен между клиентскими приложениями или внутренними реестрами и источниками пакетов, находящимися выше по потоку. Чтобы правила применялись, таким компонентам, как агенты кодирования и серверы CI/CD, необходимо отправлять свои запросы через этот сервис, а не обращаться напрямую к общедоступным реестрам. GitHub проверяет как запросы метаданных для получения списков пакетов, так и сами загрузки. В случае ошибочной блокировки пользователи могут подать запрос на исключение; по информации от GitHub, процесс аналогичен процедурам исключений для других функций расширенной безопасности.

Во время публичного предварительного ознакомления сервис предоставляется бесплатно. Для регулярной работы компания GitHub планирует внедрить систему тарификации, зависящую от объема использования, аналогичную той, что используется для GitHub Actions. В объявлении не указаны сроки начала полноценного функционирования сервиса или конкретные цены. В период предварительного тестирования GitHub намерен расширять инфраструктуру и добавлять новые функции в соответствии с потребностями пользователей.

В июне GitHub объявил об ужесточении правил для скриптов установки в npm. С версией npm 12 скрипты, входящие в зависимости, больше не будут запускаться автоматически, а только после явного разрешения пользователя.

Первоисточник — Heise

Автор оригинала — Moritz Förster

Нашли неточность?

Сообщите редакции. Существенные исправления мы отмечаем в материале