🚩 Дисклеймер: Материал носит исключительно ознакомительный и аналитический характер для специалистов по информационной безопасности. Данные взяты из открытых отчетов исследователей. Автор категорически осуждает киберпреступность.
Помните недавний пост про слив базы Додо? Так вот, история получила продолжение. Наливайте чай иди открывайте крафтовое - у нас тут нарисовался неплохой пятничный чтиво-тред 😮
Всё началось с банального анализа APK из Google Play. Внутри которого разрабы забыли карту внутренней кухни на почти сотню сетевых адресов бэкенда (причем некоторые отдавали ответы вообще без авторизации) 😥
Главной же точкой входа стала облачная аналитическая платформа Databricks. Один из её открытых адресов из-за кривых прав доступа позволял читать внутренние файлы системы обычным GET-запросом без всяких токенов. Оттуда и вытащили конфиг с зашитым PAT-токеном, подняли свой кластер и получили полный удаленный контроль над сервером 😱
Интересный нюанс... Databricks на уровне платформы отслеживает вывод команд и заменяет найденные токены на
[REDACTED]. Однако эта защита не сработала как задумывалось. Атакующие просто завернули вывод секрета в base64 и Databricks пропустил 😶С root-правами на кластере хакеры постучались в защищенное хранилище ключей через стандартный Secrets API. Хранилище отдало десятки паролей в открытом виде.... ключи от всех облачных хранилищ Azure, админку к системе бизнес-аналитики, ключи каталога метаданных и сервисные учетки Azure с правами на всю облачную подписку ⚰️
Дальше начался сущий ад безопасника...
🟢В метаданных одной из систем данные для входа лежали… открытым текстом прямо в строке подключения.
🟢В декомпилированном внутреннем CLI-инструменте нашли шлюз к основным рабочим базам MySQL. Пробросили сетевой порт через систему управления контейнерами и вошли под дефолтной учеткой.
🟢В админке финансового контура лежали исходные ключи двухфакторок, с помощью которых сгенерили себе вечные веб-сессии в обход любой двойной защиты 😱
Хакеры даже не стали мучить базы тяжелыми SQL-запросами (чтобы не спалиться по логам и нагрузке ЦП). Имея на руках ключи от хранилищ, они пошли напрямую к файлам данных. Суммарно за выходные в трубу улетело ~3.7 ТБ данных, а это 15 лет заказов, адреса с геокоординатами, телефоны, пароли в древнем MD5 и данных тысяч сотрудников.
В воскресенье безопасники Додо проводили плановое ТО. Они сменили часть токенов, но забыли про одно из внутренних авторизационных приложений. Через него доступ был обновлен. В итоге через 6 часов взломщики просто перевыпустили токен и продолжили качать. При этом защитный экран WAF за все дни отреагировал лишь однажды, заблокировав один IP-адрес из-за внутренних ошибок сервера, но пропустив аномальный трафик скачивания терабайтов информации 🤯
Главный вывод сей басни:
У конторы формально было всё по ГОСТу и лучшим практикам... и WAF, и MFA, и хранилища клучей, и аудит. Но безопасность цепочки всегда равна прочности самого слабого звена. Достаточно было оставить одну тестовую дыру наружу и забыть пароль в конфиге - и весь эшелонированный периметр превратился в решето.
В ваших конторах секреты из хранилищ тоже передаются плейнтекстом в query-параметрах, или вы пока шифруетесь? И главный вопрос - дадут додокоины за моральный ущерб.
Типичный 🥸 Сисадмин