docker-compose.yml — секреты docker-compose

Почему Docker-compose.yml представляет собой поверхность риска безопасности?

Если вы думаете, что ваш докер-compose.yml Это всего лишь связующее звено инфраструктуры, подумайте ещё раз. Эти файлы часто становятся непреднамеренным хранилищем секретов, жёстко заданных учётных данных, токенов API и переменных окружения, которые попадают в систему контроля версий. После синхронизации с GitHub или любым другим репозиторием эти секреты могут храниться вечно. commit историю.

Разработчики часто относятся докер-compose.yml как неконфиденциальный файл, упуская из виду, как он может служить вектор атакиНебольшая утечка здесь может означать доступ к закрытым сервисам, внутренним API или всей инфраструктуре. Именно за такими секретами Docker-Compose охотятся злоумышленники.

Распространенные способы утечки секретов docker-compose Docker-Compose.yml

Вот некоторые повседневные ошибки разработчиков:

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

Пароль в этом докер-compose.yml Теперь он является частью вашей истории Git. Хуже того, он может использоваться и в продакшене. Это одна из самых прямых форм использования секретов docker-compose. экспозиция.

2. Копирование-вставка из общих конфигураций или StackOverflow

Вредные практики быстро распространяются. Копирование небезопасных образцов и использование их «как есть» приводит к раскрытию секретов в любой среде, от разработки до производства.

3. Монтаж .env файлы напрямую, без их защиты

env_file: – .env

.env Файлы часто содержат ключи API или учетные данные, и разработчики забывают добавить их в .gitignoreЭто делает секреты видимыми, если репозиторий является публичным или общим. При обращении к ним они косвенно становятся секретами Docker Compose.

Реальное влияние секретов Docker-Compose на CI/CD

In CI/CD pipelines, скомпрометированные секреты от докер-compose.yml Можно:

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

Злоумышленники сканируют общественные GitHub репо искать докер-compose.yml Файлы, созданные с помощью дорков GitHub или автоматизированных инструментов. Обнаружив секреты, они могут выдавать себя за исполнителей непрерывной интеграции, злоупотреблять облачными кредитами или, что ещё хуже, внедрять программы-вымогатели в цепочки поставок. Эти секреты Docker Compose представляют собой серьёзную и часто... незамеченная уязвимость.

Безопасное обнаружение и управление секретами

Используйте инструменты сканирования:

  • TruffleHog, Гитликс или Ксигени может обнаружить секреты в вашем репозитории, включая старые commits.
  • Запустите сканирование в вашем CI pipeline для блокировки PR, содержащих секреты.

Замените прямые секреты переменными окружения:

услуги:

приложение:

изображение: myapp

Окружающая среда:

DB_PASSWORD: ${DB_PASSWORD}

Используйте менеджер секретов для инъекций БД_ПАРОЛЬ во время выполнения, не допуская его в свой докер-compose.yml. Такой подход помогает снизить риски, связанные с секретами Docker Compose.

Интеграция секретных менеджеров:

Такие инструменты, как Vault, AWS Secrets Manager или Doppler, надежно обрабатывают секреты и предоставляют политики ротации.

Лучшие практики для разработчиков DevSecOps по предотвращению раскрытия секретов Docker-Compose

  • Никогда не зашифровывайте секреты in докер-compose.yml.
  • Добавить .env в .gitignore, всегда.
  • Используйте секретные инструменты сканирования в вашем местном отделе разработки и CI/CD pipeline.
  • Просмотреть файлы для составления как часть вашего контрольного списка по связям с общественностью в сфере безопасности.
  • Автоматизировать секретную ротацию, особенно для токенов и учетных данных услуг.
  • Аудит примеров сторонних составов перед их копированием в вашу кодовую базу.
  • Относитесь ко всем конфиденциальным данным в этих файлах как к секретам Docker Compose и управляйте ими соответствующим образом.

Ваша Docker-Compose.yml Возможно, это ваша самая большая слепая зона безопасности

Ваша докер-compose.yml Это больше, чем просто конфигурация; это часть поверхности атаки вашего приложения. Относитесь к ней как к коду. Секреты, скрывающиеся в этих файлах, представляют реальную угрозу, особенно если они синхронизированы с системой контроля версий и интегрированы в CI/CD.

Такие инструменты, как Xygeni, помогают обнаруживать и управлять секретами Docker Compose в кодовых базах и pipelines, снижая риск атак на цепочки поставок. Интегрируйте его в свой рабочий процесс, чтобы обеспечить прозрачность и контроль над тем, что вы делаете. докер-compose.yml может быть разоблачительным.

sca-инструменты-программное обеспечение-композиция-анализ-инструменты
Расставьте приоритеты, устраните и защитите риски, связанные с программным обеспечением
Получите бесплатный аккаунт.
Нет необходимости кредитную карту.

Защитите свою разработку и доставку программного обеспечения

с пакетом продуктов Xygeni