Skip to main content

Секретные риски утечек

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

Секреты и учетные данные

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

Секреты в хранилищах кода могут быть обнаружены автоматическими инструментами сканирования и неавторизованными пользователями. Публичные репозитории особенно уязвимы, но утечки учетных данных из частных репозиториев также могут распространяться через форки, логи CI/CD или сторонние интеграции.

Влияние раскрытых секретов на безопасность

Раскрытие секретов может привести к нескольким типам инцидентов с безопасностью:

          **Несанкционированный доступ и использование**
  • Утекшие учетные данные облачного провайдера могут использоваться для предоставления инфраструктуры или сервисов на вашем аккаунте

  • Учетные данные базы данных позволяют получить доступ к чувствительным данным клиентов или организаций

  • Токены сервисных аккаунтов предоставляют точки входа в производственные системы

            **Операционные и вопросы соответствия требованиям**
    
  • Инфраструктуру можно изменить или удалить с помощью утекших учетных данных

  • Утечки данных из раскрытых секретов могут привести к регуляторным санкциям в соответствии с GDPR, CCPA и другими рамками

  • Организации сталкиваются с расходами на реагирование на инциденты, ротацию учетных данных и устранение систем

            **Организационные риски**
    
  • Публичное раскрытие утечок секретов влияет на доверие клиентов и репутацию организации

  • Обнаруженные токены реестра пакетов можно использовать для публикации вредоносных версий вашего программного обеспечения

  • Могут быть использованы проприетарные API или учетные данные сервиса

Финансовое влияние раскрытых секретов

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

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

  • Операции по майнингу криптовалюты на скомпрометированных аккаунтах могут привести к значительным расходам за инфраструктуру

  • Реагирование на экстренные инциденты требует ресурсов для судебного расследования, аудитов безопасности и ротации учетных данных между системами

            **Затраты на утечку данных**
    
  • Регуляторные штрафы за нарушения защиты данных могут достигать миллионов долларов согласно GDPR, CCPA и отраслевым нормативам

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

  • Услуги по мониторингу кредитной истории и защите личности для затронутых клиентов

            **Влияние на работу**
    
  • Сбои в работе сервиса из-за скомпрометированной инфраструктуры приводят к потере доходов и производительности

  • Инженерное время, потраченное на реагирование на инциденты с безопасностью, отвлекает ресурсы от разработки продукта

  • Рост затрат на инструменты безопасности и мониторинг после инцидентов

            **Долгосрочное влияние на бизнес**
    
  • Отток клиентов после публичного раскрытия инцидентов с безопасностью

  • Повышение страховых взносов для покрытия киберответственности

  • Потеря бизнес-возможностей из-за неудачных проверок безопасности или аудитов соответствия

Распространённые сценарии секретных утечек

Секреты обычно попадают в хранилища через несколько распространённых шаблонов:

          **Рабочие процессы разработки**
  • Учетные данные были закодированы в ходе локального тестирования и случайно зафиксированы

  • Секреты в конфигурационных файлах, таких как .env файлы или шаблоны инфраструктуры как код

  • Примеры учетных данных с реальными токенами в документации, вики или файлах README

            **Управление репозиториями**
    
  • Наследственные репозитории с забытыми, но всё ещё активными учетными данными

  • Секреты, которые делятся в выпусках GitHub, комментариях к pull request, обсуждениях или сути

  • Аккредитации, представленные внешними участниками или подрядчиками

            **Проблемы с контролем версий**
    
  • Секреты сохраняются в истории Git даже после удаления из текущего кода

  • Учетные данные распространяются в разветвленные репозитории, системы резервного копирования и логи

  • Публичные хранилища с раскрытыми секретами индексируются поисковыми системами и специализированными сервисами сканирования

Секретная безопасность с GitHub

          GitHub предоставляет инструменты, помогающие вам предотвратить, выявить и устранить секретные утечки:

1. Предотвратить утечку новых секретов

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

Поощряйте своих участников включать защиту от push для своих личных аккаунтов (функция называется «push protection for users»), чтобы защитить все свои push-запросы на репозитории, форки и любые репозитории, в которые они вносят вклад.GitHub Это позволяет отдельным разработчикам предотвратить утечку секретов без ожидания политики на уровне организации.

2. Обнаружить существующие секреты

Используйте secret scanning непрерывный мониторинг хранилищ на предмет секретов и получение уведомлений при обнаружении учетных данных. Это позволяет быстро отозвать и изменить скомпрометированные учетные данные.

Дальнейшие действия

Чтобы защитить вашу организацию от секретных утечек:

  1. Включите защиту от пуша, чтобы предотвратить появление новых секретов.
  2. Включите secret scanning кликом, чтобы начать обнаруживать секретные утечки.
  3. Создайте безопасные практики управления учетными данными для ваших команд разработчиков.