Skip to main content
Мы публикуем частые обновления нашей документации, и перевод этой страницы может все еще выполняться. Актуальные сведения см. в документации на английском языке.

Сведения о базе данных рекомендаций GitHub

GitHub Advisory Database содержит список известных уязвимостей системы безопасности и вредоносных программ, разделенный на две категории: проверенные в GitHub и непроверенные рекомендации.

О GitHub Advisory Database

Мы добавляем советы в GitHub Advisory Database из следующих источников.

Если вы знаете другую базу данных, из которую следует импортировать рекомендации, сообщите нам об этом, открыв проблему в https://github.com/github/advisory-database.

Рекомендации по безопасности публикуются в виде JSON-файлов в формате уязвимости с открытым кодом (OSV). Дополнительные сведения о формате OSV см. в разделе Формат уязвимостей с открытым кодом.

Сведения о типах рекомендаций по безопасности

Примечание. Советы для вредоносных программ в настоящее время находятся в бета-версии и могут быть изменены.

Каждая из рекомендаций в GitHub Advisory Database предназначена для уязвимости в проектах с открытым кодом или вредоносных программ с открытым кодом.

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

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

Рекомендации, проверенные в GitHub

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

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

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

Если вы включите Dependabot alerts для своих репозиториев, вы будете автоматически получать уведомления, когда новые рекомендации, проверенные в GitHub, сообщат об уязвимости или вредоносной программе для пакета, который вы используете. Дополнительные сведения см. в разделе Сведения об оповещениях Dependabot.

Непроверенные рекомендации

Непроверенные рекомендации — это уязвимости в системе безопасности, которые мы автоматически публикуем в GitHub Advisory Database непосредственно из веб-канала Национальной базы данных уязвимостей.

Dependabot не создает Dependabot alerts для непроверенных рекомендаций, так как этот тип рекомендаций не проверяется на допустимость или полноту.

Сведения об информации в рекомендациях по безопасности

В этом разделе вы можете найти более подробные сведения о рекомендациях по безопасности в GitHub Advisory Database, например:

  • Идентификаторы рекомендаций и формат, используемый этими идентификаторами.
  • Уровни CVSS, используемые для назначения уровней серьезности.

Сведения об идентификаторах GHSA

Каждый совет по безопасности, независимо от его типа, имеет уникальный идентификатор, называемый идентификатором GHSA. Квалификатор GHSA-ID назначается при создании новых рекомендаций в GitHub.com или добавлении в GitHub Advisory Database из любого из поддерживаемых источников.

Синтаксис идентификаторов GHSA имеет следующий формат: GHSA-xxxx-xxxx-xxxx где:

  • x — это буква или число из следующего набора: 23456789cfghjmpqrvwx.
  • За пределами GHSA части имени:
    • Числа и буквы назначаются случайным образом.
    • Все буквы строчные.

Идентификатор GHSA можно проверить с помощью регулярного выражения.

Shell
/GHSA(-[23456789cfghjmpqrvwx]{4}){3}/

Сведения об уровнях CVSS

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

Уровень серьезности — это один из четырех возможных уровней, определенных в Общей системе оценки уязвимостей (CVSS), раздел 5.

  • Низкий
  • Средний или умеренный
  • Высокий
  • Критически важно

GitHub Advisory Database использует уровни CVSS, описанные выше. Если GitHub получает CVE, GitHub Advisory Database использует CVSS версии 3.1. Если CVE импортирован, GitHub Advisory Database поддерживает обе версии CVSS 3.0 и 3.1.

Вы также можете присоединить GitHub Security Lab для просмотра тем, связанных с безопасностью, и внести свой вклад в средства безопасности и проекты.

Дополнительные материалы