GitHub теперь предотвращает непреднамеренное разглашение конфиденциальных данных, таких как API-ключи и токены доступа, во всех открытых репозиториях кода. Этот механизм обнаруживает утечки данных, сканируя секреты перед выполнением операций “git push” и совместим с 69 типами токенов (API-ключи, приватные ключи, секретные ключи, токены аутентификации, токены доступа, учетные данные и так далее).
“Если вы пытаетесь отправить секрет, будет отображена предупредительная подсказка с информацией о типе секрета, его местоположении и рекомендациями по предотвращению разглашения”, – заявили представители GitHub.
Хотя принудительную защиту можно обойти, указав причину (например, тестирование, ложное срабатывание или приемлемый риск), администраторы репозитория и организации, а также менеджеры по безопасности будут уведомлены о таких событиях по электронной почте.
Ранее функция была доступна только для частных репозиториев организаций, которые использовали лицензию GitHub Advanced Security, но теперь она доступна всем и активируется бесплатно.
Организации с GitHub Advanced Security могут включить защиту от принудительного сканирования секретных данных на уровне репозитория и на уровне организации через API или пользовательский интерфейс.
Чтобы включить эту опцию, пользователи могут перейти в “Настройки” > “”Code security and analysis” > “Включить “Secret scanning” и “Push protection”.
Согласно GitHub, с момента запуска бета-версии защиты, разработчики успешно предотвратили примерно 17 тысяч случаев утечки конфиденциальной информации, экономя более 95 тысяч рабочих часов.
В апреле 2022 года GitHub представил новую возможность “Push Protection”, которая автоматически блокировала коммиты с ключами API и токенами доступа в общедоступных репозиториях. Эта возможность включала сканирование секретов в рабочий процесс разработчиков и работала с 69 типами токенов.
В марте 2023 года GitHub объявил о расширении своей функции сканирования секретов “Secret Scanning” для обнаружения утечек секретов во всей истории публикаций в общедоступных репозиториях. Эта функция сканировала более 200 форматов токенов и помогала разработчикам обнаружить случайную утечку конфиденциальных данных.