Исследователи Trufflesecurity обнаружили проблему в функции Google OAuth «Войти с помощью Google». Баг позволяет злоумышленникам, регистрирующим домены уже прекративших свое существование стартапов, получать доступ к конфиденциальным данным аккаунтов их бывших сотрудников на различных SaaS-платформах.
Исходно исследователи уведомили Google об этой ошибке еще 30 сентября 2024 года, однако тогда специалисты Google отнесли проблему к категории «мошенничество и злоупотребления», не согласившись, что уязвимость связана с OAuth. Только после того как Дилан Эйри (Dylan Ayrey), глава и сооснователь Trufflesecurity, публично рассказал об этой проблеме на Shmoocon в декабре прошлого года, Google назначила исследователям вознаграждение в размере 1337 долларов США и повторно открыла тикет.
В настоящее время проблема по-прежнему остается неисправленной и пригодной для эксплуатации. Издание Bleeping Computer цитирует представителей Google, которые заявили, что пользователям просто нужно следовать передовым практикам безопасности и «надлежащим образом закрывать домены».
«Мы признательны Дилану Эйри за помощь в выявлении рисков, возникающих из-за того, что клиенты забывают удалять сторонние SaaS-сервисы при сворачивании своей работы», — сообщил журналистам представитель Google.
В своем отчете Эйри рассказывает, что «OAuth-логин Google не защищает от ситуации, когда кто-то покупает домен закрывшегося стартапа и использует его для повторного создания email-аккаунтов бывших сотрудников». Конечно, само по себе создание email'ов не дает новым владельцам доступ к предыдущим сообщениям на коммуникационных платформах, однако эти учетные записи можно использовать для повторного входа в такие сервисы, как Slack, Notion, Zoom, ChatGPT и так далее.
Исследователь продемонстрировал это, купив старый домен и получив доступ к SaaS-платформам, где в итоге нашел конфиденциальные данные HR-систем (налоговые документы, страховую информацию и номера социального страхования), а также смог войти в различные сервисы о чужого имени (включая, ChatGPT, Slack, Notion, Zoom).
Изучив базу Crunchbase в поисках уже закрывшихся стартапов с заброшенными доменами, Эйри обнаружил 116 481 подходящий для таких атак домен. То есть могут существовать миллионы учетных записей сотрудников обанкротившихся стартапов, домены которых теперь доступны для покупки.
Эксперт объясняет, что в Google OAuth есть claim «sub», призванный обеспечить уникальный и неизменяемый ID для каждого пользователя и служащий для идентификации пользователей, невзирая на возможную смену домена или адреса электронной почты. Однако обычно коэффициент несоответствия sub составляет лишь 0,04%, что вынуждает такие сервисы, как Slack и Notion, полностью игнорировать его и полагаться исключительно на claim'ы электронной почты и домена.
Соответственно, claim электронной почты привязан к email-адресу пользователя, а claim домена к владению конкретным доменом. В итоге оба могут быть унаследованы новыми владельцами домена, которые получают возможность выдать себя за бывших сотрудников некой компании на SaaS-платформах.
В качестве решения этой проблемы специалисты предлагают Google внедрить неизменяемые идентификаторы, а именно уникальный и постоянный ID пользователя и уникальный ID рабочей среды, привязанный к конкретной организации.
SaaS-провадйеры также могут принять дополнительные защитные меры, например, использовать перекрестные проверки для дат регистрации доменов, внедрить принудительное одобрение доступа к учетным записям на уровне администратора или использовать вторичные факторы для проверки личностей.