Skip to main content

О риске уязвимости в вашем коде и зависимостях

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

Кто может использовать эту функцию?

Требуется GitHub Team или GitHub Enterprise

Риски неустранённых уязвимостей

Ваша организация сталкивается с уязвимостями как в коде, который вы пишете и поддерживаете, так и в open source или сторонних зависимостях, которые использует ваш код. Оценка вашей уязвимости крайне важна, если вы хотите предотвратить:

  • Незапланированные простои и операционные нарушения. Использование уязвимостей может привести к сбоям в работе приложений, ухудшению качества сервиса или каскадным сбоям в критически важных системах, что нарушает вашу бизнес-деятельность.

  • Увеличение затрат на исправление. Чем дольше уязвимый код остаётся без решения, тем сложнее и дорого его исправить, особенно если код глубоко интегрирован или если происходят инциденты. Раннее обнаружение и исправление снижают риск дорогостоящего реагирования на инциденты, аварийного исправления и репутационного ущерба.

  • Широко распространенная распространение риска. Уязвимые модули и зависимости часто повторно используются в различных приложениях и сервисах, из-за чего одна уязвимость может распространяться по всей организации, увеличивая риски и последствия эксплуатации.

  • Компрометация цепочки поставок. Злоумышленники могут использовать уязвимости в open source или сторонних зависимостях для внедрения вредоносного кода, повышения привилегий или получения несанкционированного доступа к вашим системам. Скомпрометированные зависимости могут служить косвенными точками входа для вредоносных субъектов, что приводит к широкому охвату инцидентов безопасности.

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

Регулярная оценка уязвимости помогает выявлять риски на раннем этапе и расставлять приоритеты в устранении.

Способы мониторинга ваших репозиториев на наличие уязвимого кода

  • Code scanning автоматически отслеживает код вашего проекта на наличие уязвимостей. Когда в pull request-запросе обнаружена проблема с безопасностью, он создаёт оповещение с предложением автофикса для устранения уязвимости. Это снижает барьер для разрешения и помогает обеспечить безопасность вашего проекта. См . раздел AUTOTITLE.

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

GitHub предоставляет полный набор метрик Dependabot для мониторинга, определения приоритетов и устранения этих рисков во всех репозиториях в вашей организации. См . раздел AUTOTITLE.

Снижение уязвимости организации

Снижение уязвимости организации требует постоянной прозрачности рисков, прогресса устранения и контроля политики во всех хранилищах. метрики Dependabot и code scanning обеспечивают такую видимость. Используйте следующие лучшие практики для мониторинга и снижения уязвимости вашей организации:

Мониторинг метрик уязвимостей для зависимостей

Используйте обзор метрик для Dependabot для получения видимости текущего состояния уязвимостей зависимостей вашей организации. См . раздел AUTOTITLE.

  • Оповещение о приоритетах: просмотрите количество открытых данных Dependabot alerts и используйте фильтры, такие как серьезность CVSS, вероятность эксплойтов EPSS, доступность исправлений и использование уязвимой зависимости в развернутых артефактах. См . фильтры представлений панели мониторинга Dependabot.
  • Разбивка на уровне репозитория: определите, какие репозитории имеют наибольшее количество критически важных или эксплойтируемых уязвимостей.
  • Отслеживание исправления. Отслеживайте количество и процент оповещений, фиксированных с течением времени, чтобы оценить эффективность управление уязвимостями программы.

Мониторинг появления новых code scanning оповещений

Используйте режим оповещений для code scanning, чтобы получить видимость активности по устранению в pull-запросах вашей организации. См . раздел AUTOTITLE.

  • Оповещения в pull requests: Проверьте, сколько оповещений было обнаружено и объединено в стандартную ветку без разрешения.
  • Самые распространённые правила: Определите правила, которые часто срабатывают там, где требуется образование разработчиков.
  • Разбивка на уровне репозитория: Определите, какие репозитории имеют наибольшее количество оповещений в pull request, но при этом объединённые с стандартной веткой.
  • Отслеживание исправления. Отслеживайте количество и процент оповещений, фиксированных с течением времени, чтобы оценить эффективность управление уязвимостями программы.

Приоритизируйте усилия по устранению

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

Сообщайте о рисках и прогрессе

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

Устанавливать и обеспечивать соблюдение политик

  • Установите конфигурацию безопасности для всей организации, которая позволяет Dependabot и code scanning на всех существующих и новых репозиториях. См . раздел AUTOTITLE.
  • Включите проверку зависимостей для комментирования pull requests во всех репозиториях.
  • Создайте общеорганизационный набор правил для защиты стандартной ветки и требуйте исправления критических code scanning перед объединением pull-запроса. См . раздел AUTOTITLE.
  • Обратитесь к администраторам репозитория, чтобы включить автоматические обновления системы безопасности по возможности. См . раздел AUTOTITLE.

Оценить влияние оповещений

  • Регулярно проверяйте, как оповещения Dependabot и code scanning помогают блокировать уязвимости безопасности при входе в вашу кодовую базу.
  • Используйте исторические данные для демонстрации значения упреждающего управления зависимостями.