ИБ-исследователи обнаружили, что на сотнях сайтов неправильно сконфигурирован Google Firebase, что приводит к утечке более 125 млн пользовательских записей, включая пароли открытым текстом и другие конфиденциальные данные.
Связанная с Firebase проблема была обнаружена случайно. Несколько месяцев назад исследователи, известные под псевдонимами Logykk, xyzeva и MrBruh, изучали Chattr — ИИ‑систему для найма сотрудников, которой пользуются многие сети быстрого питания в США (например, KFC, Wendy's, Taco Bell, Chick-fil-A, Subway и так далее).
Тогда из-за неправильной конфигурации Firebase им удалось создать нового пользователя с правами администратора, а затем получить права суперадминистратора в экземпляре Firebase, используемом Chattr.
В итоге они получили доступ к именам, номерам телефонов, адресам электронной почты, паролям для некоторых учетных записей, личным сообщениям и многому другому. Причем среди пострадавших, чьи данные утекали из Chattr, были как сотрудники и менеджеры франчайзинга, так и соискатели.
Также был обнаружен дополнительный «призрачный» режим, обеспечивающий доступ к платежной информации, полный контроль над учетными записями пользователей и возможности найма людей.
В итоге Chattr устранил обнаруженные проблемы еще 10 января 2024 года, на следующий день после того, как исследователи сообщили о них.
После этого эксперты решили проверить, нет ли в интернете других плохо настроенных баз Firebase, подверженных похожим проблемам, и результаты сканирования превзошли все ожидания.
Сканирование длилось больше месяца, и изначально для этого использовался Python-скрипт, написанный MrBruh и предназначенный для проверки сайтов и их JavaScript-бандлов на наличие переменных в конфигурации Firebase. Увы, из-за утечки памяти этот скрипт оказался непригодным для решения поставленных задач, и его заменили вариантом на Go, написанным Logykk. Этой версии потребовалось еще более двух недель, чтобы завершить скан.
Чтобы автоматизировать проверку прав на чтение в Firebase, команда использовала третий скрипт, написанный xyzeva, который проверял сайты на предмет доступа к коллекциям Firebase (NoSQL-базам Cloud Firestore).
В итоге, суммарно изучив 5,2 млн доменов, исследователи выявили более 900 сайтов, где Firebase настроен неправильно. Они рассказывают, что в некоторых случаях экземпляры Firebase вообще не имели правил безопасности и предоставляли доступ к БД для чтения и записи.
В общей сложности на этих сайтах было найдено 124 605 664 пользовательских записей, включая:
- 84 221 169 имен;
- 106 266 766 email-адресов;
- 33 559 863 телефона;
- 20 185 831 пароль;
- 27 487 924 платежных данных (банковские реквизиты, инвойсы и так далее).
Более того, проблема усугубляется тем, что в 98% случаев пароли были представлены открытым текстом, то есть утекли 19 867 627 паролей.
При этом, по словам xyzeva, хранить пароли открытым текстом нужно еще постараться, потому что в Firebase представлено решение end-to-end идентификации — Firebase Authentication, специально созданное для защиты процессов входа в систему, чтобы не раскрывать пароли пользователей в записях.
Общее количество записей, обнаруженных исследователями, равняется 223 172 248. То есть, помимо пользовательских данных были найдены и другие, которые в основном представляющие собой информацию, связанную с самими организациями и их тестами.
Изучив все собранные данные, исследователи попытались уведомить пострадавшие компании о проблеме и разослали 842 электронных письма за 13 дней.
Хотя получить ответы удалось только от 1% владельцев сайтов, четверть администраторов, получивших уведомления, все же исправила неправильные настройки в своих экземплярах Firebase. Еще два владельца сайтов даже предложили экспертам вознаграждение за найденную уязвимость. Эксперты приняли награды, но не сообщают их размеры, только отмечают, что те были невелики.
Также отмечается, что с некоторыми организациями удалось связаться лишь через службу поддержки, и ответы далеко не всегда были профессиональными.
К примеру, как показано на скриншоте ниже, в поддержке неназванной индонезийской игорной сети, которая управляет сразу девятью сайтами, над сообщением исследователей, содержавшим сведения об ошибке и методах ее устранения, откровенно посмеялись.
Интересно, что именно на эту компанию пришлось наибольшее количество раскрытых записей о банковских данных (8 000 0000) и паролей, хранящихся открытым тестом (10 000 000).
Среди других затронутых сайтов перечислены:
- Silid LMS (система управления обучением), раскрывающая данные 27 млн пользователей;
- Lead Carrot (генератор холодных звонков), раскрывающий данные 22 млн пользователей;
- MyChefTool (приложение для управления бизнесом и PoS для ресторанов), раскрывающее 14 млн имен и 13 млн email-адресов.