TGViewer
DevSecOps Talks DevSecOps Talks @devsecops_weekly · 8.06K subscribers
Post #346 953
Всех с пятницей!!!

При управлении секретами есть одна весомая проблема – Secret Zero, т.е. как доставить «первичный секрет», который будет использоваться для доступа к другим секретам внутри хранилища?

Допустим, наш первичный секрет – Token. Иронично, но сам по себе он уже секрет. Наверное, надо сделать секрет, который будет контролировать доступ к нашему Token, получается рекурсия…

Одним из выходов становятся «центры доверия» - например, GitLab и JWT, Kubernetes и ServiceAccount, LDAP и учетные данные. Принцип простой – есть «третья сторона», которой мы доверяем и у которой можем спросить – «Может ли эта сущность запрашивать секреты? Можно ли ее пропустить в хранилище?». А ответ оставляем на рассмотрение третьей стороны.

Но что делать, если такой третьей стороны нет? И вот тут на помощь приходит AppRole (у HashiCorp Vault).

В видео от HashiCorp можно ознакомиться с общими рассуждениями на тему Secret Zero и с тем, как можно использовать AppRole для решения проблемы.

Недавно мы уже писали о похожем подходе для извлечения секретов в CI-pipeline. Однако, в видео Hashi есть ряд существенных отличий:
🍭 Первое заключается в том, что RoleID находится у Runner, а не задается в pipeline.
🍭 Второе – в процессе получения SecretID. В упоминаемом посте Token использовался для получения SecretID сразу, но есть и альтернативный способ!

Вместо SecretID можно вернуть еще один Token (да сколько можно!), назовем его Wrap Token, который предоставляет доступ только в Cubbyhole – некоторую область внутри Vault. Это называется Response Wrapping. Можно настроить количество использований или время жизни Wrap Token, что еще больше минимизирует риск компрометации.

Соответственно, чтобы извлечь SecretID надо реализовать обратную процедуру – Unwrapping.
Unwrapping осуществляется с использованием Wrap Token,
который у нас уже есть, в результате мы получаем SecretID.

Готово! У нас есть RoleID и SecretID, ничего не мешает нам извлечь Secret из Vault ☺️
HashiCorp Secret Zero: Mitigating the Risk of Secret Introduction with Vault One of the big challenges when it comes to secrets management is how you automate the generation of the initial credentials for access to Vault and pass them to the client in question. In this session, we'll walk you through the use of AppRole authentication…
More from @devsecops_weekly
  1. Oct 12, 2026AI SDLC Transformation Playbook Всем привет! Из приложения можно скачать playbook (~ 17 ст…
  2. Oct 9, 2026Inference в Kubernetes Всем привет! Запуск LLM в Kubernetes. Отличается он чем-то от запус…
  3. Oct 8, 2026Wardline: Control Plane for AI Agents Всем привет! Не важно, как это называется – AI Gatew…
  4. Oct 7, 2026Vulnerable Bank Application! Всем привет! Да, всё так! Ещё одно «заведомо уязвимое приложе…
  5. Oct 6, 2026Генерация подозрительных событий Всем привет! По ссылке можно найти репозиторий с утилитой…
  6. Oct 5, 2026Удаление чувствительных данных из журналов событий Всем привет! Утечки конфиденциальных да…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →