Ни на один стикер не влезут пароли от десятка root-учеток в разных сервисах, JWT-токены, API-ключи и другие секреты, с которыми работает IT-команда. С задачей куда лучше справится корпоративное хранилище паролей.

Нужно ли его резервировать, как правильно защищать, где и какие секреты хранить — в экспертном разборе практических кейсов.

В теории при внедрении корпоративных хранилищ секретов необходимо:

  • не просто регулярно снимать копии данных, а держать постоянно актуальный холодный резерв (standby);

  • собирать в хранилище все-все секреты;

  • разделить мастер-ключ от хранилища на трех и более человек, чтобы никто по отдельности не мог получить доступ к секретам.

А как получается на практике? Мы собрали митап и попросили практикующих экспертов разобрать три кейса с точек зрения вендора, интегратора и заказчика. Опытом поделились:

  • Павел Пархомец, заместитель руководителя отдела ИБ, RWB (Wildberries&Russ).

  • Константин Рыжов, архитектор продуктового направления, «АТ Консалтинг».

  • Дмитрий Бабкин, руководитель группы SRE в продукте BI.ZONE PAM, BI.ZONE.

  • Артём Назаретян, руководитель BI.ZONE PAM и модератор митапа, BI.ZONE.

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

Кейс 1. Про надежность

Компания хочет установить PAM-систему со встроенным хранилищем паролей. Преимуществ много, например админам не придется запоминать пароли, а автоматическая ротация сделает утечки бесполезными для атак. Однако есть и очевидный недостаток: когда все пароли собираются в одном месте, появляется точка отказа. Упадет хранилище — никто никуда не попадет. Как компании обеспечить отказоустойчивость? 

Разный бизнес — разные требования

Схемы отказоустойчивости отличаются друг от друга, поэтому конкретное решение упирается в показатели восстановления: допустимое время простоя системы (RTO), допустимый объем потерянных данных (RPO), а еще стоимость обеспечения непрерывности. Например, для поликлиник, где не будет слишком критичным, если система записи на прием не будет работать в течение суток, избыточная автоматизация с дополнительными виртуальными серверами может стать лишней статьей расхода. В таком случае достаточно вовремя делать бэкапы хранилища, с помощью которых системный администратор вручную восстановит сервер с секретами.

Бизнес должен решить, в какой момент мероприятие по отказоустойчивости становится дороже, чем простой.

Константин Рыжов, архитектор продуктового направления, «АТ Консалтинг»

В более чувствительных сценариях ситуация меняется. Если в федеральной сети автозаправок клиенты не смогут провести финансовую операцию, быстро скопится очередь и будет упущена прибыль. Дмитрий Бабкин заметил, что когда счет идет на секунды, есть только один вариант — геораспределенные кластеры с балансировкой active-active, которые будут друг друга подменять. На крайний случай применяется standin-инсталляция (холодный резерв) — резервная нода, которая запускается вручную, если основные кластеры вышли из строя.

Холодный резерв — ресурсозатратное решение

Если рассматривать хранилище секретов как компонент PAM-системы, надо иметь в виду, что в холодном резерве должны быть резервные копии всех компонентов, а не только базы секретов. Разница с основной инсталляцией не должна превышать пару минут, а лучше — секунд.

Standin-инсталляция должна стоять не как активное плечо. Как правило, она размещается отдельно от всех ЦОДов — в третьем, четвертом, пятом резервном ЦОДе. Также нужно сразу подготовить инфраструктуру под включение standin.

Дмитрий Бабкин, руководитель группы SRE в продукте BI.ZONE PAM, BI.ZONE

Если говорить о самостоятельных хранилищах, важно учитывать, что у большинства из них есть процедуры запечатывания (sealing) и распечатывания (unsealing). Первую проводят при внедрении хранилища, чтобы защитить доступ к нему. Вторая необходима, если нужно поднять упавшее хранилище. Константин Рыжов напомнил, что на распечатывание требуется время: переход на холодный резерв не всегда бывает таким простым, как переключение балансировки. Когда секреты измеряются миллионами, а пространство имен — тысячами, это действительно заметно.

Такие нагруженные инфраструктуры требуют максимальной автоматизации: распаковку организуют без участия человека. Для этого предусматривают схему с двумя хранилищами, которые взаимно распечатывают друг друга.

Кейс 2. Про безопасность

Государственная организация внедряет хранилище паролей. Работа организации связана с суперкритичными данными, поэтому важно, чтобы до паролей никто не добрался. Какие меры защиты хранилища может обеспечить организация?

Алгоритм Шамира, HSM и харденинг

Многие организации по-прежнему прибегают к классическому методу: мастер-ключ кладут в конверт и убирают в физический сейф. Как признал модератор дискуссии Артём Назаретян, в 80% случаев он сталкивался с ситуацией, когда мастер-ключ физически пишется, запечатывается и где-то хранится.

Такая практика допустима при условии, что ключ или токен разделен по алгоритму Шамира на троих и больше человек. Однако система может сбиться: будете ли вы уверены, что каждый администратор владеет только одной частью ключа, когда штат поменяется несколько раз?

Если бы я защищал государственную систему, то, скорее всего, думал бы про HSM: поставил отдельный сервер с неизвлекаемыми ключами, который будет распечатывать хранилище и работать как центр сертификации для PAM.

Павел Пархомец, заместитель руководителя отдела ИБ, RWB (Wildberries&Russ)

Автоматизированный подход предполагает аппаратную основу безопасности и строгую физическую изоляцию сервера. Но для небольших компаний это избыточно. Достаточно использовать токены для хранения сертификатов. Если же пропускная способность сервера не подходит для автоматизации, то нужно усиливать защиту на уровне процессов:

Можно идти в сторону нескольких хранилищ с автораспаковкой и харденить серверы — отселять их и обвешивать мониторингами, кто куда ходит. Любое хождение — это алерт. 

Павел Пархомец, заместитель руководителя отдела ИБ, RWB (Wildberries&Russ)

Ролевые модели и шифрование

Не менее важно ограничить логический доступ к хранилищу в зависимости от роли. Дмитрий Бабкин подчеркнул, что после первой инициализации надо нарезать политики под каждую группу пользователей и администраторов и отозвать все рутовые токены. Идеального решения, как хранить ключи от хранилища, пока нет, поэтому на практике встречаются разные схемы — как в PAM, так и в инсталляции vault transit.

Константин Рыжов считает, что при инициализации хранилища все ключи нужно распространять исключительно в зашифрованном виде. Так, PGP надо подключать сразу, чтобы админ видел только зашифрованные ключи и не мог воспользоваться ими без сертификата получателя. Такой подход минимизирует риски, вызванные человеческим фактором, когда один из администраторов записывает ключи в блокнот и сохраняет у себя.

Администрирование и zero-touch production

Практический вопрос эксплуатации PAM — как безопасно использовать персональные ключи при автоматизации. К примеру, чтобы запустить Ansible playbook на хосте, администратору нужно «прокинуть» ключ за PAM. По словам Павла Пархомца, переносить личные ключи категорически небезопасно. Лучше предусмотреть бастион и вынести Ansible-нагрузки на Jenkins.

Лучше вообще ключи никуда не таскать. Это супер-анти-паттерн.

Павел Пархомец, заместитель руководителя отдела ИБ, RWB (Wildberries&Russ)

Эксперты согласились, что в идеальном будущем компании будут придерживаться концепции zero-touch production — рынок постепенно движется в эту сторону. Тогда идти через PAM на прод придется только в случае крайней необходимости.

Кейс 3. Про универсальность

IT-компания ежегодно покупает лицензию на парольный менеджер (vault), чтобы хранить секреты для межсервисного взаимодействия в рамках CI-/CD-процесса. 

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


Разделение сфер: PAM для людей, vault для сервисов

На первый взгляд, объединение всех паролей в одной системе обещает экономию ресурсов и простоту администрирования. Но эксперты считают, что это стратегическая ошибка. 

PAM необходим в ситуациях, когда взаимодействие с системой непредсказуемо. Павел Пархомец заметил, что когда кто-то ходит через PAM, это очень недетерминированная история: записанные сессии потом надо анализировать и расследовать. Если же взаимодействие автоматизировано и его результат всегда понятен, возможности PAM избыточны: когда в репозитории есть инструкции, а в GitLab — система апрувов, то и без того ясно, что произойдет в сессии. Исключение может быть только в случае, если техническая учетная запись используется вне CI/CD. Тогда это должно сразу вызывать тревогу и попадать в мониторинг SOC.

PAM — это взаимодействие «пользователь — сервис». Если мы говорим про автоматизацию, «сервис — сервис», то это задача vault.

Дмитрий Бабкин, руководитель группы SRE в продукте BI.ZONE PAM, BI.ZONE


Не просто «хранилка паролей»

По мнению Константина Рыжова, сводить системы класса secrets management к роли простого сейфа неверно. Хранение паролей — это примерно 10% от того, что они умеют. Основная мощь заключается в автоматизации. Менеджер позволяет делать секреты короткоживущими, генерировать динамические учетные записи под конкретную операцию.

Ключевое преимущество такого подхода — защита даже от потенциальной компрометации:

Запускается CI/CD, работает 2 минуты — вот и пароль, который живет 2 минуты. Дальше, пожалуйста, брутфорсьте — все равно этот пароль уже не имеет никакой ценности.

Константин Рыжов, архитектор продуктового направления, «АТ Консалтинг»

Выводы

  • Отказоустойчивость

Для подбора оптимальной схемы нужно оценить допустимые время простоя (RTO) и объем потерянных данных (RPO), а еще стоимость обеспечения непрерывности. Некритичен простой на сутки? Хватит резервной копии, которую восстановят руками. Минуты простоя ведут к серьезным потерям? Нужна отказоустойчивая инсталляция с георезервированием, кластер active-active и холодный резерв.

  • Защита мастер-ключа

Есть два подхода:

1. Классический: разделить ключ по алгоритму Шамира на трех и больше людей и хранить каждую часть в конверте под замком.

2. Технологичный: использовать аппаратные модули безопасности (HSM). При меньшей критичности можно применять аппаратные токены, при большей — завести хранилище для хранилища.

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

  • Учетные записи для людей и машин

Передавать под управление единой системы и пользовательские, и сервисные учетки — не лучший вариант. Люди не действуют по одним и тем же сценариям, поэтому для задач безопасности важно записывать все действия и искать в них аномалии. На этом специализируются PAM-системы.

Машинное взаимодействие, напротив, детерминировано: в записи действий нет смысла, зато важна максимальная автоматизация. Под эту задачу заточены решения класса application-to-application password manager. 

P. S. Если хотите узнать больше про контроль доступа и identity security, то приходите на митапы Access Zone. Это неформальные встречи от команды BI.ZONE PAM, где находят ответы на наболевшие вопросы и вдохновляются чужим опытом.

Подписывайтесь на новости митапа, чтобы не пропустить следующую встречу.

Комментарии (0)