Технологии06.08.2026, 20:002 мин чтенияNEWS

GitHub расширил предупреждения о вредоносном ПО на восемь экосистем

Dependabot теперь использует данные OpenSSF для обнаружения вредоносных пакетов в PyPI, Maven, RubyGems и других реестрах.

GitHub расширяет предупреждения о вредоносном ПО на восемь экосистем
КРАТКО

Что нужно знать

  • GitHub расширил предупреждения о вредоносном ПО на восемь экосистем: npm, PyPI, Maven, RubyGems, NuGet, Go, crates.io и PHP Composer.
  • Данные о вредоносных пакетах теперь импортируются из репозитория OpenSSF malicious-packages в GitHub Advisory Database.
  • Импортер проверяет и нормализует данные, отфильтровывая собственные предупреждения GitHub для предотвращения дублирования.
  • GitHub внедрил три уровня защиты: ограничение пакетов, отслеживание происхождения и возможность отката.
ИсточникGitHub Blog ↗

GitHub объявил о расширении функциональности Dependabot по обнаружению вредоносного ПО: теперь предупреждения о вредоносных пакетах покрывают восемь основных экосистем, включая PyPI, Maven, RubyGems, NuGet, Go, crates.io и PHP Composer. Ранее эта возможность была доступна только для npm.

Как сообщается в блоге GitHub, инженерная команда, отвечающая за Dependabot, интегрировала данные из репозитория OpenSSF malicious-packages в GitHub Advisory Database. Это позволило автоматически импортировать информацию о вредоносных пакетах и генерировать предупреждения для пользователей.

Как это работает

Репозиторий OpenSSF malicious-packages, запущенный в 2023 году, содержит более 15 000 отчетов в формате OSV. Он пополняется ежедневно за счет сообщества и автоматизированных систем обнаружения. GitHub создал единый импортер, который читает записи OSV, проверяет их на соответствие схеме и нормализует данные для своей базы данных.

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

Особенности интеграции

При импорте данных GitHub учитывает несколько нюансов:

  • Различия в названиях экосистем (например, PyPI в OpenSSF и pip в GitHub).
  • Представление версий: OSV использует дискретные значения, а GitHub — диапазоны.
  • Возможность отзыва отчетов: в репозитории OpenSSF есть папка osv/withdrawn для ошибочных предупреждений.
  • Дедупликацию: GitHub сам является источником данных для OpenSSF, поэтому импортер отфильтровывает записи, созданные самим GitHub, чтобы избежать зацикливания.

При проверке на реальных данных более половины новых npm-отчетов, поступающих в репозиторий OpenSSF, оказались собственными предупреждениями GitHub и были пропущены.

Меры безопасности

GitHub внедрил три уровня защиты для обработки потенциально некорректных данных:

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

Что это значит

Расширение предупреждений о вредоносном ПО на восемь экосистем — значительный шаг в повышении безопасности цепочки поставок. Разработчики, использующие Dependabot, теперь получат более полную защиту от вредоносных пакетов, включая те, которые не были обнаружены ранее. Однако важно помнить, что предупреждения основаны на данных OpenSSF, которые могут содержать ошибки, поэтому GitHub предусмотрел механизмы для быстрого реагирования на инциденты.

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

ВОПРОСЫ И ОТВЕТЫ

Коротко о главном

Какие экосистемы теперь поддерживаются Dependabot для предупреждений о вредоносном ПО?

Dependabot теперь поддерживает восемь экосистем: npm, PyPI, Maven, RubyGems, NuGet, Go, crates.io и PHP Composer.

Откуда GitHub получает данные о вредоносных пакетах?

GitHub импортирует данные из репозитория OpenSSF malicious-packages, который содержит более 15 000 отчетов в формате OSV.

Как GitHub предотвращает импорт собственных данных?

Импортер отфильтровывает записи, помеченные как ghsa-malware, которые были созданы самим GitHub, чтобы избежать зацикливания.

Что произойдет, если импорт превысит лимит?

Если импорт превышает настраиваемый лимит, он полностью останавливается, ничего не публикуется, и команда получает уведомление.

Как подготовлен материал

Черновик был создан с помощью AI по указанному первоисточнику и опубликован в формате ITBlogs. Факты следует сверять с оригинальной публикацией.

С
АВТОР

Сергей

Администратор проекта

DISCUSSION

Комментарии · 0

Войдите, чтобы участвовать в обсуждении.