CloudSecurityBackend

Как открытый ключ Firebase может за ночь опустошить ваш банковский счет

·MAGMA

Почему открытый ключ Firebase опасен?

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

Firebase утверждает, что этот ключ безопасен для публикации, так как доступ контролируется правилами безопасности сервисов вроде Firestore или Realtime Database. Однако есть один важный нюанс: данный ключ является одновременно ключом Google Cloud Platform (GCP).

По умолчанию ключи GCP не имеют ограничений на вызовы других API-сервисов внутри одного проекта. Это значит, что если кто-то получит доступ к вашему открытому ключу, он сможет использовать его для вызова любых платных API-сервисов, включая недавно запущенный Gemini от Google.

Как это произошло у другого разработчика?

Один разработчик поделился историей о том, как всего за 13 часов получил счёт на сумму более €54 тысяч. Причина была проста: злоумышленник использовал открытый ключ Firebase для отправки запросов к новому API Gemini, который был активирован в проекте.

Когда вы включаете новый API-сервис в своём проекте Firebase/GCP, все существующие ключи получают автоматический доступ к этому сервису. При этом нет никаких уведомлений или подтверждений, предупреждающих вас об этом риске.

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

Что делать, чтобы избежать подобных ситуаций?

Чтобы защитить себя от таких инцидентов:

  • Ограничьте использование ключей только необходимыми сервисами через панель управления GCP.
  • Регулярно проверяйте список активных API-сервисов и отключайте те, которые больше не нужны.
  • Используйте разные проекты для тестирования новых функций и сервисов.
  • Включите мониторинг расходов и установите лимиты на оплату услуг.
Вернуться к блогу
Опасности открытого ключа Firebase — MAGMA