Хардкод секретов в коде
Что такое Хардкод секретов в коде?
Хардкод секретов в кодеВстраивание учётных данных, API-ключей, токенов или криптографического материала прямо в исходный код, конфигурационные файлы или контейнерные образы, откуда их легко обнаружить и использовать злоумышленникам.
Хардкод секретов — одна из самых частых и разрушительных ошибок современной разработки. Они попадают в историю Git, слои контейнеров, мобильные приложения, журналы CI и публичные репозитории, где боты находят их за считаные минуты. Реальные кейсы: AWS-ключи в GitHub, Slack-токены в клиентских бандлах, пароли БД, запечённые в Docker-образы. Меры защиты сочетают предотвращение (обучение, pre-commit-хуки, плагины IDE, шаблоны .gitignore), обнаружение (секрет-сканирование репозиториев и CI — GitHub Secret Scanning, Gitleaks, TruffleHog) и централизованное управление секретами (HashiCorp Vault, AWS Secrets Manager, Azure Key Vault, GCP Secret Manager, External Secrets в Kubernetes). При обнаружении секрет необходимо немедленно ротировать, а не просто удалять из истории.
● Примеры
- 01
AWS-ключ доступа, закоммиченный в публичный репозиторий GitHub и использованный злоумышленниками за считаные минуты.
- 02
Секрет клиента OAuth, встроенный в бинарь мобильного приложения.
● Частые вопросы
Что такое Хардкод секретов в коде?
Встраивание учётных данных, API-ключей, токенов или криптографического материала прямо в исходный код, конфигурационные файлы или контейнерные образы, откуда их легко обнаружить и использовать злоумышленникам. Относится к категории Безопасность приложений в кибербезопасности.
Что означает Хардкод секретов в коде?
Встраивание учётных данных, API-ключей, токенов или криптографического материала прямо в исходный код, конфигурационные файлы или контейнерные образы, откуда их легко обнаружить и использовать злоумышленникам.
Как работает Хардкод секретов в коде?
Хардкод секретов — одна из самых частых и разрушительных ошибок современной разработки. Они попадают в историю Git, слои контейнеров, мобильные приложения, журналы CI и публичные репозитории, где боты находят их за считаные минуты. Реальные кейсы: AWS-ключи в GitHub, Slack-токены в клиентских бандлах, пароли БД, запечённые в Docker-образы. Меры защиты сочетают предотвращение (обучение, pre-commit-хуки, плагины IDE, шаблоны .gitignore), обнаружение (секрет-сканирование репозиториев и CI — GitHub Secret Scanning, Gitleaks, TruffleHog) и централизованное управление секретами (HashiCorp Vault, AWS Secrets Manager, Azure Key Vault, GCP Secret Manager, External Secrets в Kubernetes). При обнаружении секрет необходимо немедленно ротировать, а не просто удалять из истории.
Как защититься от Хардкод секретов в коде?
Защита от Хардкод секретов в коде обычно сочетает технические меры и операционные практики, как описано в определении выше.
Какие есть другие названия Хардкод секретов в коде?
Распространённые альтернативные названия: Хардкод учётных данных, Утечка секретов в коде.
● Связанные термины
- identity-access№ 233
Хранилище учётных данных
Централизованный и аудируемый сервис, который безопасно хранит, ротирует и посредничает доступ к секретам — паролям, ключам API, сертификатам и SSH-ключам.
- appsec№ 982
Безопасное программирование
Практика написания исходного кода, минимизирующая дефекты безопасности за счёт оборонительных паттернов, языковых правил и общепризнанных руководств.
- appsec№ 166
Безопасность CI/CD
Совокупность контролей, защищающих конвейеры непрерывной интеграции и поставки от компрометации, инъекций кода, утечки секретов и несанкционированных деплоев.
- appsec№ 1069
Безопасность цепочки поставок ПО
Дисциплина защиты каждого звена производства ПО — исходного кода, зависимостей, сборки, подписи, дистрибуции и деплоя — от вмешательства, вредоносного кода и потери целостности.
- appsec№ 444
Безопасность GitOps
Практики безопасности для GitOps-процессов, в которых декларативное желаемое состояние инфраструктуры и приложений хранится в Git и приводится в соответствие с продакшеном автоматическим контроллером.
- compliance№ 781
OWASP Top 10
Информационный документ OWASP, перечисляющий наиболее критические риски безопасности веб-приложений и обновляемый по реальным данным о уязвимостях.
● См. также
- № 277Утечка данных (непреднамеренная)
- № 051API-ключ