Skip to main content

Область обнаружения секретного сканирования

Секретное сканирование использует сопоставление и валидацию шаблонов для обнаружения секретов. Обнаружение зависит от пар паттернов, типов токенов и настроек защиты от пуша.

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

Secret scanning доступен для следующих типов репозитория:

  • Публичные репозитории: Secret scanning запускается автоматически бесплатно.
  • Частные и внутренние репозитории, принадлежащие организации: доступны с включённым GitHub Secret Protection на GitHub Team или GitHub Enterprise Cloud.
  • Пользовательские репозитории: доступны на GitHub Enterprise Cloud с Enterprise Managed Users. Доступно на GitHub Enterprise Server, когда у предприятия включён GitHub Secret Protection .

Обнаружение пар шаблонов

Secret scanning обнаружит пары шаблонов, такие как ключи доступа AWS и секреты, только если идентификатор и секрет находятся в одном файле, и оба они отправлены в репозиторий. Сопоставление пар помогает уменьшить ложные срабатывания, так как оба элемента пары (идентификатор и секрет) должны использоваться вместе для доступа к ресурсу поставщика.

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

Сведения о устаревших токенах GitHub

Для GitHub токенов мы проверяем валидность секрета, чтобы определить, активен ли он или нет. Это значит, что для устаревших токенов secret scanning не будет обнаружено GitHub Enterprise Serverpersonal access token на GitHub Enterprise Cloud. Аналогично, a GitHub Enterprise Cloudpersonal access token не будет найден на GitHub Enterprise Server.

Ограничения защиты push-уведомлений

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

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

  • Защита от отправки блокирует утечку секретов в подмножестве наиболее определяемых пользователем шаблонов. Участники могут доверять защите безопасности, если такие секреты блокируются, так как это шаблоны с наименьшим числом ложных срабатываний.
  • Версия секрета может быть старой. Старые версии некоторых маркеров могут не поддерживаться защитой push-уведомлений, так как эти маркеры могут создавать более высокое количество ложных срабатываний, чем их последняя версия. Защита от отправки может также не применяться к устаревшим маркерам. Для маркеров, таких как ключи служба хранилища Azure, GitHub поддерживает только недавно созданные маркеры, а не маркеры, соответствующие устаревшим шаблонам.
  • Отправка может быть слишком большой, например, если вы пытаетесь отправить тысячи больших файлов. Проверка защиты от отправки может истекать и не блокировать пользователя, если отправка слишком велика. GitHub Я всё равно сканирую и создам оповещения, если потребуется, после пуша.
  • Если отправка приводит к обнаружению более пяти новых секретов, мы покажем вам только первые пять (мы всегда будем показывать вам не более пяти секретов одновременно).
  • Если отправка содержит более 1000 существующих секретов (то есть секретов, для которых уже созданы оповещения), защита от отправки не блокирует отправку.
  • Если пуш в публичном репозитории больше 50 МБ, защита от пуша пропустит его и не сканирует.
  • Если вы видите запрос обхода без сведений о фиксации или пути к файлу, это означает, что защита от отправки истекла. Отправка была слишком большой или история слишком сложна, чтобы найти фиксацию, которая представила секрет.