LINUX.ORG.RU
ФорумAdmin

Где хранить ключ от vault?

 , ,


0

1

Привет. Мне нужно на сервере организовать хранилище секретов в hashicorp vault и чтобы приложение при рестарте могло получать туда доступ.

Я думаю, было бы неплохо при первичном запуске приложения передавать ему ключ, чтобы ключ хранился в оперативной памяти в приложении отвечающем за перезапуск серверного по (например nodemon или pm2), таким образом извне к этому ключу будет проблематично подобраться, но при падении серверного приложения, nodemon или аналог запустит его снова и передаст ему ключ от хранилища.

Что думаете, хорошее решение и если да то как такое реализовать? А если нет, то как лучше сделать?

Сначала напиши, от чего защищаешься, потом посмотрим адекватность идеи модель угроз, и только потом всякие реализации.

t184256 ★★★★★
()
Ответ на: комментарий от t184256

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

page-up
() автор топика
Ответ на: комментарий от t184256

Также стоит сказать, что использование хранилища секретов прописано в ТЗ, так что этот момент не обсуждается

page-up
() автор топика
Ответ на: комментарий от t184256

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

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

page-up
() автор топика
Ответ на: комментарий от page-up

я планирую поместить ключ в оперативную память

взятый откуда?

так чтобы приложение ответственное за перезапуск бекэнда могло иметь к нему доступ и больше никто

и каким же это образом? Что такого может твоё приложение, чего не хакер с ним и консолью?

t184256 ★★★★★
()
Ответ на: комментарий от dada

Чем не хороший и что предлагаете? Если что, я говорю только про падение приложения (не сервера как аппарата)

page-up
() автор топика
Ответ на: комментарий от t184256

взятый откуда?

Введённый админом при старте системы

и каким же это образом? Что такого может твоё приложение, чего не хакер с ним и консолью?

насколько я знаю, получить доступ к данным в озу непросто (хоть и возможно)

page-up
() автор топика
Ответ на: комментарий от t184256

По вашей логике получается что vault вообще бесполезная штука. Понятно, что от убер-хакера не спасёт, но элементарную безопасность (не палить пароли открытым текстом в конфигах) обеспечивает. Так что я думаю, предложенный мною сценарий всё таки повышает безопасность. Как считаете?

И если да, то хотелось бы уже и о реализации поговорить

page-up
() автор топика
Ответ на: комментарий от page-up

А без рутового доступа он в теории и так ничего не должен мочь накрутить, если у тебя все правильно сделано. Обрати внимание на в теории и если. Обычно такое на всякий случай уже считают game over’ом.

(Если у него, конечно, доступ не к юзеру, от которого у тебя приложение крутится, ха-ха)

t184256 ★★★★★
()
Ответ на: комментарий от page-up

Понятия не имею, что это, но оно может быть для удобства контроля/деплоя.

t184256 ★★★★★
()
Ответ на: комментарий от t184256

(Если у него, конечно, доступ не к юзеру, от которого у тебя приложение крутится, ха-ха)

но ведь даже если так, то тоже можно обезопасить. По идее, хакер не может так просто вытянуть секреты из оперативной памяти приложения, а для защиты от подмены файлов приложения можно просто запретить юзеру доступ на запись

page-up
() автор топика
Ответ на: комментарий от page-up

у тебя все яйца в одном флаконе? в смысле и vault, и твой сервак, и демоны? клондайк. взломавший сервак получает все и сразу. это удобно.

теперь рассказывай как твой сервак взломать.

olelookoe ★★★
()
Ответ на: комментарий от page-up

— Я хочу, чтобы мою машину не угнали.

— Кто?

— Тот, кто за рулём у неё сидит.

— Поздняк уже.

— А как тогда?

Откуда я знаю. Может у тебя гараж в Германии, может платная парковка, может задний двор в ЮАР, где её и вертолётом свистнуть не застремаются с тобой внутри. Может мерс, может ока, может тесла.

t184256 ★★★★★
()
Ответ на: комментарий от t184256

Но так ведь уже безопаснее, хакер будет ломать тот сервер, на котором крутится приложение, а когда взломает то будет облом для него

page-up
() автор топика
Ответ на: комментарий от page-up

Не будет облом, мы это уже пол-треда проходили

t184256 ★★★★★
()
Ответ на: комментарий от page-up

да можно все что хочешь наворотить, просто смысл неясен.

локальный доступ к серваку у кого? ты им веришь? а почему?

удаленный доступ? вопросы те же.

приложение - это единая точка управления всеми и всем?

может тебе вообще нафиг не нужен никакой волт? может обычным юбикеем каким-нибудь вопрос решается?

olelookoe ★★★
()
Ответ на: комментарий от t184256

Вы лучше спросите, что именно вам нужно знать

page-up
() автор топика
Ответ на: комментарий от page-up

для начала нужно понять чему мы верим и чему точно нет.

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

мы верим железяке с ключами, железу компа, ОС, песочницам, но все приложения считаем недоверенными и даже скомпроментированными. это другой подход.

мы верим железу, ОС, песочницам и всем приложениям, кроме тут_список_приложений. это третий подход.

далее следует описание уязвимостей, угроз, рисков, векторов атаки на каждый компонент системы, а также описание контрмер.

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

olelookoe ★★★
()
Ответ на: комментарий от olelookoe

Но ведь каждый компонент системы может быть с определённой степенью вероятности скомпрометирован. Наша же задача - сузить вектор атак

page-up
() автор топика
Ответ на: комментарий от page-up

ну так сужай )

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

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

olelookoe ★★★
()
Ответ на: комментарий от page-up

Кстати да, абсолютно бесполезная.

Имеем один токен при наличии которого стягиваем все секреті в ветке.

Можешь посмотреть в сторону SOPS вместо волта или же с помощью SOPS шифровать доступ к волту (не пробовал).

PunkoIvan ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.