Уязвимости LeakyLooker в Google Looker Studio открывали доступ к чужим базам данных

Специалисты компании Tenable обнаружили девять серьёзных уязвимостей в Google Looker Studio, которые получили общее название LeakyLooker. Речь идёт о так называемых cross-tenant уязвимостях — то есть дефектах, позволяющих одному пользователю облачной платформы проникнуть в данные другого, совершенно постороннего арендатора той же инфраструктуры Google Cloud Platform.
Уязвимости LeakyLooker в Google Looker Studio открывали доступ к чужим базам данных
Изображение носит иллюстративный характер

Суть проблемы сводилась к грубому нарушению базового принципа разграничения прав. Пользователь с ролью «Viewer» (зритель), который по замыслу архитектуры должен лишь просматривать отчёты, получал возможность управлять данными и запускать произвольные SQL-запросы. Это нарушение фундаментального обещания безопасности: тот, кто смотрит — не должен иметь возможности что-либо менять. LeakyLooker это обещание полностью разрушал.

Под угрозой оказался практически весь спектр коннекторов Looker Studio. Google Sheets, BigQuery, Spanner, PostgreSQL, MySQL, Cloud Storage и источники данных, подключённые через JDBC — все эти сервисы потенциально могли быть затронуты. Масштаб впечатляет, учитывая, что Looker Studio активно используется для бизнес-аналитики в тысячах компаний по всему миру.

Исследователь, упоминаемый под именем Matan, и его команда из Tenable описали три конкретных сценария атак. Первый — сканирование публичных отчётов Looker Studio, использующих, например, BigQuery. Атакующий находит такой отчёт (или получает доступ к закрытому), а затем перехватывает контроль над базой данных и выполняет произвольные SQL-запросы в рамках всего GCP-проекта владельца отчёта. Фактически чужой проект становится открытой книгой.

Второй вектор атаки эксплуатировал логическую ошибку в функции копирования отчётов. Жертва создаёт публичный отчёт или делится им с конкретным получателем — скажем, подключённый к PostgreSQL или любому JDBC-источнику. Злоумышленник копирует этот отчёт через встроенную функцию, но при клонировании в копию незаметно «утекают» учётные данные оригинального владельца. После чего атакующий может удалять и модифицировать таблицы в чужой базе данных, пользуясь украденными кредами.

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

При успешной эксплуатации любого из этих путей злоумышленники могли получить доступ к целым датасетам и проектам в Google Cloud. Похищение, модификация, удаление конфиденциальных данных — всё это становилось возможным сразу в нескольких сервисах GCP одновременно. И всё через инструмент визуализации, который большинство пользователей воспринимает как безобидную «рисовалку графиков».

По данным Tenable, доказательств того, что уязвимости LeakyLooker были использованы в реальных атаках, нет. Это несколько успокаивает, но не снимает вопросов. Девять уязвимостей в одном продукте, каждая из которых ломает межтенантную изоляцию — это системная проблема в архитектуре, а не случайный баг.

Обнаруженные дефекты заставляют по-новому взглянуть на безопасность облачных аналитических инструментов. Когда отчёт в Looker Studio может стать оружием для кражи баз данных, привычное представление о том, что аналитика — это «только чтение», перестаёт работать. Любой публичный отчёт, любая ссылка, отправленная коллеге, потенциально могла стать точкой входа для атаки на всю облачную инфраструктуру организации.


Новое на сайте

20066[b]Фотосинтез в глазах мышей: возможно ли это без превращения в растение?[/b] 20065[b]СПКЯ стало СПМЯ: почему переименование болезни, затрагивающей миллионы женщин, заняло... 20064[b]Почему великая пирамида Гизы пережила все землетрясения за 4500 лет[/b] 20063[b]Генетика Homo erectus: что зубная эмаль рассказала о наших предках[/b] 20062[b]Кости в бухте эребус: что кости моряков Франклина рассказывают спустя полтора века[/b] 20061[b]Крупнейший плавучий ветрогенератор в мире: Китай испытывает установку у берегов... 20060[b]Карие глаза младенца стали индиго после лечения от COVID-19[/b] 20058[b]Почему серебряная чаша с Афиной пролежала в немецком лесу две тысячи лет?[/b] 20057[b]Дыра в атмосфере солнца: вспышка достигла пика и может зажечь полярное сияние[/b] 20056[b]Динго возрастом 950 лет: кто и зачем кормил могилу животного сотни лет?[/b] 20055[b]Томоэ гозэн: женщина-самурай, которая существовала на самом деле[/b] 20054[b]Что видели астронавты «Аполлона-12» над лунным горизонтом?[/b] 20053[b]Восковой блокнот на латыни и шёлковая туалетная бумага: кто посещал средневековый... 20052[b]Хантавирус на борту: 41 человек под наблюдением после рейса MV Hondius[/b]
Ссылка