Фишинг согласия OAuth и отзыв разрешений вредоносных сторонних приложений¶
Представьте себе, что злоумышленник активно читает ваши личные электронные письма, загружает ваши облачные документы, создает правила автоматической переадресации входящих сообщений или публикует мошеннические ссылки из вашей учетной записи, даже ПОСЛЕ того, как вы только что изменили свой пароль на 24-значную случайную строку и включили аппаратную двухфакторную аутентификацию (2FA / Passkeys). Как злоумышленник все еще находится внутри вашей учетной записи Google Workspace, Microsoft 365, GitHub, Slack или Discord, не зная вашего нового пароля и не вызывая ни одного запроса 2FA? Потому что вы стали жертвой фишинга согласия OAuth 2.0 (также известного как незаконное предоставление согласия или фишинг кода устройства). Вместо того, чтобы обманом заставить вас ввести пароль на поддельной странице входа, злоумышленник отправил вам ссылку на подлинную страницу входа. accounts.google.com или login.microsoftonline.com экран авторизации с вопросом, есть ли приложение с именем "PDF Document Viewer," "eSign Security Check," "Zoom Meeting Recorder," или "Mail Backup Assistant" может иметь разрешение "Чтение, составление, отправку и безвозвратное удаление всей вашей электронной почты из Gmail" или "Полный доступ ко всем файлам, к которым у вас есть доступ".
В тот момент, когда вы нажали Allow или Accept в этом подлинном диалоговом окне Microsoft или Google поставщик удостоверений выдал серверу злоумышленника долговременный криптографический ключ OAuth Refresh Token (offline_access). Поскольку токены API OAuth 2.0 аутентифицируются непосредственно по серверным API REST/Graph (graph.microsoft.com или gmail.googleapis.com) совершенно независимо от вашего веб-сеанса, изменение пароля или добавление 2FA часто приводит к тому, что разрешения вредоносных сторонних приложений остаются на 100 процентов активными. Чтобы навсегда заблокировать злоумышленника, вам необходимо вручную отозвать разрешение стороннего приложения, уничтожить все выданные токены обновления и доступа OAuth, а также очистить все бэкдоры, созданные приложением, пока оно имело доступ к API.
Сделай это сейчас¶
- ** Сразу поймите, почему смена пароля НЕ остановила хакера: вы должны отозвать
Third-Party App / OAuth Consent Grantна портале безопасности вашей учетной записи.** При нажатииAllowна экране OAuth вы создаете постоянный контракт API между компьютерами (Service Principal / OAuth App Token). Прямо сейчас перейдите на страницу Сторонние приложения и службы вашего провайдера (myaccount.google.com/connectionsдля Google,myapps.microsoft.comилиaccount.live.com/consent/Manageдля Майкрософт,github.com/settings/applicationsдля GitHub) и нажмите Удалить доступ/отменить в каждом приложении, которое вы не на 100 процентов распознаете и которому не доверяете. - Если вы ввели 8- или 9-значный буквенно-цифровой код в
microsoft.com/devicelogin,google.com/device, илиgithub.com/login/deviceво время фишингового звонка или чата отзовите оба своихActive Device SessionsИOAuth App Grantsнемедленно. При фишинговой атаке потока кода устройства (RFC 8628), злоумышленник генерирует код сопряжения Smart-TV/CLI на своем компьютере и обманом заставляет вас ввести этот код на реальном компьютере.microsoft.com/deviceloginстраница. Ввод этого кода дает злоумышленнику основнойRefresh Token(PRT/Multi-Resource Refresh Token) замаскированный под собственный клиент Microsoft Office, Azure CLI или Apple Internet Accounts. - После отзыва вредоносного приложения OAuth немедленно проверьте свою электронную почту.
Forwarding Rules,Inbox FiltersиDelegated Mailbox Accessчерез интерфейс Graph/Gmail. Что первое делает вредоносное приложение OAuth при первом500 millisecondsпосле того, как вы нажметеAllow? Он используетMail.ReadWriteилиMailboxSettings.ReadWriteОбласть API для внедрения невидимого правила для почтового ящика на стороне сервера, которое автоматически пересылает злоумышленнику каждое входящее письмо от банка, криптовалюты или пароля для сброса пароля и направляет ответы прямо на ваш адрес.TrashилиRSS Feedsпапка (см. Взломан аккаунт электронной почты: правила переадресации и восстановление). - Проверьте, зарегистрировало ли вредоносное приложение OAuth второе резервное приложение OAuth, Personal Access Token (
PAT), ключ SSH или метод MFA, пока у него были административные области. В Microsoft Entra ID (Azure AD), GitHub и Google Workspace , каталог, предоставленный приложению, или области управления учетными записями (Application.ReadWrite.All,RoleManagement.ReadWrite.Directoryили GitHubadmin:public_key) может незаметно создать второй скрытый токен API или субъект-службу, чтобы злоумышленник сохранил доступ после удаления первого приложения. - Если это произошло на корпоративе или в школе
Microsoft 365илиGoogle Workspaceучетной записи, позвоните в службу поддержки ИТ-безопасности/SOC в течение 5 минут. Один щелчок сотрудникаAcceptпо фишинговой ссылке OAuth может предоставить злоумышленнику доступ для чтения ко всем SharePoint, OneDrive, чатам Teams и глобальному списку адресов всей компании, запуская внутреннюю компрометацию деловой электронной почты (BEC) Мошенническая атака на ваших коллег и клиентов. - Если злоумышленник использовал доступ OAuth для просмотра ваших облачных дисков (
Google Drive/OneDrive), налоговые декларации, экспорт паролей или финансовые отчеты, заморозьте ваши кредитные файлы и заблокируйте финансовые счета. Если конфиденциальные документы, удостоверяющие личность, или незашифрованные начальные фразы/пароли хранились на облачном диске, к которому имело доступ приложение OAuth, рассматривайте каждый файл на этом диске как загруженный злоумышленником (см. Реагирование на утечку данных и утечку паролей).
flowchart TD
A["Подозрение на фишинг согласия OAuth или постоянное вторжение в учетную запись после сброса пароля"] --> B["1. Откройте портал разрешений сторонних приложений (приложения Google Connections, Microsoft MyApps, GitHub)."]
B --> C["2. Сделайте скриншоты незнакомых приложений для доказательства, затем нажмите «Отменить / удалить доступ» для каждого подозрительного приложения OAuth."]
C --> D{"Ввели ли вы код на странице входа в систему устройства (например, microsoft.com/devicelogin)?"}
D -->|"Да: фишинг кода устройства (RFC 8628)"| E["Выполните «Выйти везде / отозвать все токены обновления», чтобы завершить собственные сеансы CLI / кода устройства."]
D -->|"Нет: стандартный грант Web OAuth."| E
E --> F["3. Аудит и удаление вторичных бэкдоров, созданных токеном API."]
F --> G["Проверьте правила для почтового ящика, автоматическую переадресацию и делегированный доступ (Gmail / Outlook)"]
F --> H["Проверьте токены личного доступа разработчика (PAT), ключи SSH и интеграцию Webhook"]
F --> I{"Это была корпоративная учетная запись Microsoft 365/Google Workspace?"}
I -->|"Да"| J["Немедленно уведомить администратора предприятия/SOC о необходимости отозвать грант ServicePrincipal в Entra ID/администраторе рабочей области."]
I -->|"Нет (Личный кабинет)"| K["Сменить пароль + Проверить устройства MFA + Проверить Cloud Drive Загрузить журналы активности"]
Как фишинг согласия OAuth 2.0 обходит пароли и 2FA (техническая анатомия)¶
Зачем нужны киберпреступные синдикаты, национальные шпионские группы (Midnight Blizzard, Star Blizzard), а похитители криптовалюты сильно перешли от традиционного фишинга с поддельным входом в сторону фишинга согласия OAuth и фишинга кода устройства?
1. Традиционный фишинг, фишинг согласия OAuth и фишинг кода устройства¶
| Вектор атаки | Что видит и нажимает жертва | Почему антивирус, пароли и проверки URL-адресов браузера не могут остановить это | Как злоумышленник сохраняет настойчивость |
|---|---|---|---|
| 1. Классические учетные данные/фишинг AiTM (описано в Фишинг MFA и обход AiTM) | Жертва кликает по поддельному домену (login-micros0ft-support.com) и введите имя пользователя, пароль и 6-значный код MFA. |
Остановлено на 100 % с помощью ключей доступа FIDO2/WebAuthn и аппаратных ключей безопасности (YubiKey), которые криптографически привязывают аутентификацию к реальному доменному имени. |
Украденный файл cookie сеанса браузера (ESTSAUTH / SID), который прекращает свое действие, как только пользователь нажимает «Выйти везде» или сбрасывает свой пароль. |
2. Предоставление согласия вредоносному приложению OAuth 2.0 (Illicit Consent Phishing) |
Жертва нажимает на ссылку, которая ведет на 100% подлинную accounts.google.com или login.microsoftonline.com домен. Поскольку пользователь уже вошел в систему (или входит в систему со своим настоящим паролем/YubiKey в реальном домене), появляется окно разрешений: * «Приложение [DocuSign Viewer] хочет получить доступ к вашей учетной записи -> [Разрешить].»* |
Полностью обходит пароли и 2FA. Поскольку URL-адрес в адресной строке является законным. google.com или microsoft.com, ваш браузер, менеджер паролей и YubiKey с радостью аутентифицируют вас, а затем вы добровольно нажимаете Allow передать токен API зарегистрированному OAuth злоумышленника client_id. |
Поставщик удостоверений отправляет authorization_code к злоумышленнику redirect_uri, который злоумышленник обменивает на Access Token (1 hour) плюс OAuth Refresh Token (offline_access), который остается действительным в течение месяцев или неопределенного срока и выдерживает смену пароля на многих платформах. |
3. ОАутентификация 2.0 Device Authorization Grant Фишинг (RFC 8628 Последовательность кода устройства) |
Злоумышленник отправляет электронное письмо, сообщение Teams или QR-код со словами: * «Чтобы просмотреть этот защищенный документ отдела кадров / присоединиться к этому собранию, откройте https://microsoft.com/devicelogin и введите код B7X-99K-2PL."* |
Опять же, microsoft.com/devicelogin , это настоящий официальный URL-адрес Microsoft (предназначенный для входа в Apple TV, Xbox и инструменты командной строки без клавиатуры). Брандмауэр не может заблокировать ни одного вредоносного домена. |
В тот момент, когда вы печатаете B7X-99K-2PL и нажмите Continue, Microsoft привязывает ваш аутентифицированный сеанс непосредственно к ожидающему терминалу злоумышленника (Token Endpoint polling), предоставляя злоумышленнику полную первичную Refresh Token как стороннее доверенное приложение (Microsoft Office или Azure CLI). |
2. Запрос злоумышленников на область разрешений OAuth с высокой степенью опасности¶
При проверке приложения в списке разрешений внимательно обратите внимание на запрошенные им области:
* График Microsoft (Entra ID / Microsoft 365 / Outlook.com):
* Mail.Read, Mail.ReadWrite, Mail.Send, MailboxSettings.ReadWrite (Позволяет читать все электронные письма, отправлять электронные письма от вашего имени и создавать скрытые правила переадресации входящих сообщений).
* Files.Read.All, Files.ReadWrite.All, Sites.ReadWrite.All (Позволяет загружать каждый файл в OneDrive и в каждую общую корпоративную папку SharePoint).
* offline_access (Позволяет серверу злоумышленника бесшумно создавать новые токены доступа 24 часа в сутки, 7 дней в неделю, даже когда ваш компьютер выключен).
* Directory.ReadWrite.All, AppRoleAssignment.ReadWrite.All, User.ReadWrite.All (Катастрофическое повышение привилегий предприятия).
* Google Workspace/личная почта Gmail (Google APIs):
* https://mail.google.com/ или gmail.modify / gmail.settings.basic / gmail.settings.sharing (Полный контроль над чтением, удалением и пересылкой Gmail).
* https://www.googleapis.com/auth/drive (Полный доступ на чтение/запись/загрузку каждого файла на вашем Google Диске).
* https://www.googleapis.com/auth/cloud-platform (Полный контроль над инфраструктурой Google Cloud и выставлением счетов).
* GitHub и экосистемы разработчиков (GitHub Apps / OAuth Apps):
* repo и workflow (Полный доступ на чтение/запись ко всем частным репозиториям исходного кода и разрешение на внедрение вредоносных конвейеров GitHub Actions CI/CD для кражи секретов).
* admin:org, admin:public_keyи admin:gpg_key (Разрешение добавлять постоянные ключи SSH для бэкдора или изменять членство в организации).
* Области действия OAuth в Slack и Discord:
* Слабый channels:history, groups:history, im:history, files:readи chat:write (Позволяет внешнему приложению читать все личные сообщения частной команды, очищать загруженные PDF-файлы и учетные данные, а также отправлять фишинговые ссылки, выдавая себя за доверенного коллегу).
* Раздор guilds.join и identify (Позволяет взломанному боту или порталу проверки неоднократно принудительно присоединять вашу учетную запись Discord к мошенническим серверам без вашего согласия).
Этап 1. Пошаговый отзыв OAuth и сторонних приложений для каждой основной платформы.¶
Следуйте точным инструкциям ниже для каждой учетной записи, в которой вы нажали подозрительную ссылку, использовали «Войти с помощью Google/Microsoft/Apple/GitHub/Discord» на ненадежном сайте или заметили несанкционированную активность.
1. Аккаунт Google (Personal Gmail & Google Workspace)¶
- Откройте браузер и перейдите прямо по адресу:
https://myaccount.google.com/connections(или перейдите вmyaccount.google.com-> нажмите Безопасность в левом меню -> прокрутите вниз до Ваши подключения к сторонним приложениям и сервисам -> нажмите Просмотреть все подключения). - Фильтровать по риску: Нажмите на значок фильтра вверху с надписью .
Access to your Google Account(который отфильтровывает безобидные входы только для входа в систему с использованием имени Google и выделяет приложения, у которых есть активные разрешения API для чтения вашей почты Gmail, Google Диска, календаря или контактов). - Щелкайте по каждому незнакомому, подозрительному или уже не используемому приложению (остерегайтесь обманчивых названий, имитирующих системные утилиты, например
"Google Docs Viewer,""PDF Converter,""Email Cleaner,""eFax,"или"Drive Backup"). - Прокрутите вниз до пункта Подробнее, чтобы увидеть точную дату и время предоставления доступа, а также его области (
Gmail,Google Drive) оно держится. - Нажмите
Delete all connections you have with [App Name]-> Нажмите Подтвердить. - Также отмените сеансы активных устройств (для фишинга кода устройства): Перейдите к
https://myaccount.google.com/device-activityи выйдите из любого незнакомого сеанса устройства Linux, Windows, Mac или Smart TV.
2. Microsoft Персональный (Outlook.com / Hotmail / Live / Xbox) против Корпоративного (Microsoft 365 / Entra ID)¶
Microsoft использует два разных портала в зависимости от того, является ли ваша учетная запись личной потребительской или рабочей/учебной учетной записью:
А. Личные учетные записи Microsoft (@outlook.com, @hotmail.com, @live.com)¶
- Перейти непосредственно к:
https://account.live.com/consent/Manage(или перейдите вaccount.microsoft.com/privacy-> Приложения и сервисы, которые могут получить доступ к вашим данным). - Проверьте каждое перечисленное приложение. Если вы видите какое-либо приложение, которое вы не узнаете (или кажущийся вполне законным клиент, например
eM Client,Thunderbird, илиMail Appкоторый вы никогда не устанавливали самостоятельно (распространенный трюк, используемый злоумышленниками для получения токенов IMAP/Graph OAuth), нажмитеEditпод этим приложением и нажмитеRemove these permissions. - Далее перейдите к
https://account.microsoft.com/security-> Управление способом входа -> прокрутите вниз и нажмитеSign me out(что приводит к глобальной аннулированию всех браузеров, приложений и сеансов Xbox/OneDrive в течение 24 часов).
Б. Корпоративный/Работа/Школа Microsoft 365 & Microsoft Entra ID (Azure AD)¶
- Как индивидуальный пользователь-сотрудник:
- Перейти к
https://myapps.microsoft.com-> Нажмите значок своего профиля или значок шестеренки -> Нажмите Профиль или нажмите три точки (...) на любой плитке незнакомого приложения -> Выберите Управление приложением -> Отозвать разрешения. - Также перейдите на
https://myaccount.microsoft.com-> Информация о безопасности -> убедитесь, что не было добавлено мошенническое приложение Authenticator, и нажмитеSign out everywhereна вкладке «Обзор». - Как администратор Microsoft 365/Entra ID (аварийная очистка токенов PowerShell и согласия):
Когда сотрудник становится жертвой фишинга согласия OAuth или фишинга кода устройства в корпоративном клиенте, простого удаления приложения с портала MyApps пользователя недостаточно; администратор должен отозвать
OAuth2PermissionGrantпо всему арендатору и аннулировать данные пользователяRefreshTokensValidFromDateTimeчерез Microsoft Graph PowerShell:
# Connect to Microsoft Graph with Directory & Delegated Permission Grant Administrator privileges:
Connect-MgGraph -Scopes "User.ReadWrite.All", "Directory.ReadWrite.All", "DelegatedPermissionGrant.ReadWrite.All", "Application.ReadWrite.All"
# 1. Inspect all OAuth2 Delegated Permission Grants for the compromised user:
$User = Get-MgUser -UserId "victim@yourdomain.com"
Get-MgUserOauth2PermissionGrant -UserId $User.Id | Format-List Id, ClientId, ConsentType, Scope, ResourceId
# 2. Immediately delete the malicious OAuth2PermissionGrant by its Grant Id:
Remove-MgOauth2PermissionGrant -OAuth2PermissionGrantId "<Grant-ID-From-Step-1>"
# 3. Remove the malicious Enterprise Application (ServicePrincipal) from the entire tenant so no other employee is affected:
Remove-MgServicePrincipal -ServicePrincipalId "<Malicious-ClientId-ObjectId>"
# 4. Revoke ALL active OAuth Refresh Tokens and Continuous Access Evaluation (CAE) sessions for the user immediately:
Revoke-MgUserSignInSession -UserId $User.Id
3. GitHub, Slack, Discord, Apple (Sign in with Apple) и X / Социальные аккаунты¶
Злоумышленники активно нацелены на учетные записи разработчиков, сообщества и социальные сети с помощью фишинга OAuth, чтобы подтолкнуть к фиксации вредоносного кода, истощить сообщества Discord или опубликовать ссылки для сбора криптовалюты:
| Платформа | Прямой URL-адрес для аудита и отзыва приложений/токенов OAuth | Критические скрытые бэкдоры, которые нужно проверять на той же странице |
|---|---|---|
| GitHub | https://github.com/settings/applications |
Проверьте ВСЕ ТРИ вкладки на этой странице: 1. Installed GitHub Apps, 2. Authorized GitHub Apps и 3. Authorized OAuth Apps. Тогда сразу проверьтеhttps://github.com/settings/tokens (Удалите все мелкозернистые или классические Personal Access Tokens) и https://github.com/settings/keys (Удалите все незнакомые ключи SSH). |
| Раздор | Откройте Настройки пользователя (значок шестеренки) -> Авторизованные приложения. | Найдите любого бота или приложение, обладающее опасным Join servers for you (guilds.join), Access your email address, или Read messages объем. Нажимайте красную кнопку Деавторизовать возле каждой незнакомой записи. |
| Слабость | Открыть https://my.slack.com/apps/manage (Каталог приложений рабочей области -> Управление) |
Ищите недавно установленные пользовательские Входящие веб-перехватчики, Slash-команды или сторонние приложения OAuth, содержащие channels:history, files:read, или chat:write области и нажмите Удалить приложение. |
Apple ID (Sign in with Apple) |
iPhone: Settings -> [Your Name] -> Sign-In & Security -> Sign in with AppleИнтернет: appleid.apple.com -> Sign-In and Security -> Sign in with Apple |
Выберите любое незнакомое приложение или веб-сайт и нажмите .Stop Using Apple ID. |
| X (Twitter)/Мета (Facebook/Instagram)/LinkedIn | Х: Settings and privacy -> Security and account access -> Apps and sessions -> Connected appsФейсбук: Settings -> Apps and websites |
Когда проверенная учетная запись X/Twitter или Instagram внезапно публикует фальшивую раздачу криптовалюты или мошенничество с раздачей подарков без смены пароля владельца, в 95 % случаев это мошенническое подключенное приложение OAuth с Read and Write разрешения. Немедленно нажмите Отменить разрешения приложения. |
Этап 2. Поиск вторичного хранилища, оставленного вредоносным приложением OAuth.¶
Danger
Отзыв приложения OAuth останавливает будущие вызовы API из этого приложения, но НЕ отменяет ловушки, которые приложение уже установило в вашей учетной записи, пока у него был доступ. Автоматические наборы фишинга OAuth (EvilProxy, Tycoon 2FA, пользовательские сценарии Graph) выполняют сценарий постэксплуатации в течение 2 секунд после получения токена OAuth. Вы должны проверить все пять этих постоянных мест сразу после отзыва приложения:
1. Правила для почтового ящика, автопереадресация и правила скрытой очистки (Gmail & Outlook / M365)¶
Если бы вредоносное приложение OAuth имело Mail.ReadWrite или MailboxSettings.ReadWrite разрешения:
* В Gmail: нажмите значок шестеренки (вверху справа) -> Посмотреть все настройки.
1. Нажмите **Forwarding and POP/IMAPВкладка ** -> Убедитесь, что Forwarding установлено значение Отключить переадресацию, и незнакомый адрес электронной почты не указан.
2. Нажмите Filters and Blocked Addresses вкладка -> Найдите любой фильтр, который соответствует from:(*) или ключевые слова, например bank, wire, invoice, coinbase, password, или security с акцией Delete it, Skip the Inbox (Archive it), или Forward it to -> Немедленно удалите эти фильтры.
3. Нажмите *Accounts and ImportВкладка ** -> В разделе *Прдоставить доступ к вашей учетной записи (Делегированный дотуп) и тправить почту как* удалите все незнакомые адреса.
* **В Micsoft Outlook Web (outlook.office.com или outlook.live.com): Нажмите **Значок шестеренки (вверху справ -> Почта.
1. Нажмитеklzzwxh:0093*-> Удалить все незнакомые правила (злоумышленники часто называют вредоносные правила . или ... или Security Sync и настроить их для перемещения входящих писем в RSS Subscriptions или Conversation History папку, пометив их как прочитанные).
2. Нажмите Forwarding (и Junk email**) Убедитесь, что флажок Включить пересылку** снят, и алите все домены злоумышленников, добавленные в список Надежные отправители и домены.
2. Аудит массовой загрузки облачных сервисов и бэкдоры «обмена ссылками» (Google Drive & OneDrive / SharePoint)¶
Как только приложение OAuth Files.ReadWrite.All или drive по объему он делает две вещи: во-первых, он загружает ваши конфиденциальные PDF-файлы, электронные таблицы и файлы паролей; во-вторых, он может незаметно изменить права доступа к вашим конфиденциальным папкам на "Anyone with the link can view/edit" поэтому злоумышленник сможет открыть эти папки в анонимном браузере даже после того, как вы отзовете приложение OAuth.
* На Google Диске: нажмите .(i) Значок «Просмотр сведений (активность)» в правом верхнем углу, чтобы просмотреть все файлы, просмотренные, измененные или опубликованные за последние 7 дней. Затем введите is:unorganized, sharedwith:public, или sharedwith:external в верхнюю панель поиска Google Диска, чтобы найти любые файлы и папки, которые злоумышленник сделал общедоступными.
* В Microsoft OneDrive: перейдите на вкладку Общий -> Доступен вами в меню слева и отмените все общедоступные ссылки (Anyone with the link) ты не создавал.
3. Скрипт Google Apps (script.google.com) и Microsoft Power Automate (make.powerautomate.com) Триггеры¶
Вот трюк с упорством, используемый против пользователей Google и Microsoft 365: находясь внутри вашей учетной записи, злоумышленник создает 10-строчный скрипт Google Apps (по адресу https://script.google.com/home/triggers) или Microsoft Power Automate Cloud Flow (по адресу https://make.powerautomate.com) настроен на работу по 5-минутному таймеру (Time-driven trigger или When a new email arrives). Поскольку этот сценарий запускается внутри вашей собственной облачной учетной записи, он продолжает фильтровать ваши электронные письма каждые 5 минут даже после того, как вы измените свой пароль и удалите внешние приложения.
* Открыть https://script.google.com/home/triggers (для Google) или https://make.powerautomate.com -> Мои потоки (для Microsoft 365) прямо сейчас и удалите все сценарии или автоматические потоки, которые вы не писали лично.
4. Аудит журналов облачного аудита на предмет кражи данных (Google Takeout, Entra Sign-In Logs, & Unified Audit Log)¶
Если вам нужно точно знать, какие электронные письма или файлы вредоносное приложение OAuth прочитало или скачало, пока его токен был активен:
* В личных аккаунтах Google: Открыть https://myactivity.google.com и https://myaccount.google.com/notifications для проверки последних событий безопасности и проверки того, был ли запрошен экспорт архива Google Архиватор.
* В Google Workspace (консоль администратора): перейдите по адресу .admin.google.com -> Reporting -> Audit and investigation -> OAuth log events и Drive log events отфильтровано по скомпрометированному пользователю и вредоносному Client ID чтобы получить полный список с метками времени для каждого идентификатора файла, к которому был осуществлен доступ.
* В Microsoft 365 (Purview / Entra ID): Открыто entra.microsoft.com -> Identity -> Monitoring & health -> Sign-in logs, нажмите Non-interactive user sign-ins и Service principal sign-ins вкладки (стандартные журналы интерактивного входа НЕ показывают фоновые обновления токена OAuth) и фильтрацию по вредоносным Application ID чтобы увидеть каждый IP-адрес и вызов ресурса, сделанный злоумышленником.
5. Ротация раскрытых секретов, найденных на вашем облачном диске или в электронной почте¶
Если вредоносное приложение OAuth имело доступ к вашим репозиториям Gmail, Outlook, Google Drive, OneDrive или GitHub хотя бы на 60 секунд, предположим, что злоумышленник запустил автоматический парсер регулярных выражений в вашем почтовом ящике и на диске в поисках:
1. ** Начальные фразы криптовалюты (12/24-word BIP-39 mnemonics) или Кошелек .json Хранилища ключей:** если фотография или документ, содержащий сид-фразу криптовалюты, находились на вашем облачном диске или в электронной почте, немедленно переместите все средства на совершенно новый сид-фразу аппаратного кошелька (см. Утечка криптовалютного кошелька и компрометация сид-фразы).
2. Экспортированный менеджер паролей .csv Файлы или налоговые декларации (Form 1040 / W-2): Поменяйте свои пароли и заморозьте свои кредитные бюро (Equifax, Experian, TransUnion) немедленно.
3. Ключи API разработчика (AWS_SECRET_ACCESS_KEY, Stripe, OpenAI, GitHub PATs, .env файлы): Отзовите и обновите все секреты облачной инфраструктуры, которые когда-либо появлялись в ваших электронных письмах, сообщениях Slack или облачных документах.
Контрольный список для предотвращения: навсегда остановить фишинг OAuth и кода устройства¶
- Никогда не предоставляйте внешнему приложению полную версию.
Read/Write EmailилиFull Cloud Driveразрешения только для просмотра одного PDF-файла, приглашения в календаре или утилиты: Для законной ссылки для просмотра документов никогда не требуется разрешение на * «Чтение, составление, отправку и окончательное удаление всей вашей электронной почты из Gmail». * Если на неожиданном экране согласия OAuth запрашивается широкий объем почтового ящика или диска, немедленно закройте вкладку. - Никогда не вводите
Device Login Code(microsoft.com/deviceloginилиgoogle.com/device), отправленное вам другим человеком по электронной почте, в текстовом сообщении или в чате: Коды устройств (RFC 8628) предназначены исключительно для аппаратных экранов, физически находящихся перед вами в одной комнате (например, Apple TV в вашей гостиной или ваш собственный SSH-терминал). Если кто-то другой генерирует код устройства и просит вас ввести его, вы регистрируете их компьютер в вашей учетной записи. - Для администраторов Microsoft 365/Google Workspace: отключите согласие конечного пользователя приложения OAuth и заблокируйте поток кода устройства через условный доступ:
- В Центре администрирования Microsoft Entra (
entra.microsoft.com) -> Идентификация -> Приложения -> Корпоративные приложения -> Согласие и разрешения -> Настройки согласия пользователя, переключитесь с Разрешить согласие пользователя для приложений наDo not allow user consent(и включите Рабочий процесс получения согласия администратора, чтобы сотрудники нажимали «Запросить одобрение» вместо предоставления доступа мошенническим приложениям). - В консоли администратора Google Workspace (
admin.google.com) -> Безопасность -> Управление доступом и данными -> Элементы управления API -> Управление доступом к сторонним приложениям, установка областей высокого риска (Gmail,Drive) доTrusted: Can only access Google data if explicitly allowlisted by an admin. - Создайте Политику условного доступа Entra ID, блокирующую
Device Code Flowметод передачи аутентификации для всех пользователей, не являющихся разработчиками.
Часто задаваемые вопросы¶
Почему изменение моего пароля и включение двухфакторной аутентификации (2FA) не удалило вредоносное приложение OAuth?¶
Пароли и двухфакторная аутентификация охраняют входную дверь только тогда, когда человек входит в систему через экран входа в систему. Когда вы нажимаете `Allow` в запросе на согласие OAuth 2.0 вы даете указание Google, Microsoft, GitHub или Discord выдать криптографический запрос. `Refresh Token` непосредственно на сервер этого стороннего приложения, чтобы приложение могло работать в фоновом режиме, пока вы находитесь в автономном режиме. По архитектурному проекту многие платформы позволяют авторизованным сторонним интеграциям (например, инструментам синхронизации календаря, службам резервного копирования или соединителям CRM) продолжать работать при регулярной смене паролей, если только вы явно не перейдете на страницу «Подключения сторонних приложений» и не нажмете **Отменить / Удалить доступ**.
Как могла появиться фишинговая ссылка OAuth accounts.google.com или login.microsoftonline.com с настоящим замком HTTPS, если это мошенничество?¶
При фишинговой атаке согласия OAuth преступник не создает поддельный веб-сайт; вместо этого они регистрируют бесплатное приложение для разработчиков в Google Cloud или Microsoft Azure (что занимает 2 минуты) и отправляют вам подлинную ссылку авторизации Google или Microsoft, содержащую имя их приложения. `client_id`. Поскольку вы посещаете настоящий сервер входа в систему Google или Microsoft, доменное имя и сертификат SSL являются на 100 процентов подлинными. Обман заключается в том, что **кто владеет названием стороннего приложения** запрашивает разрешение после входа в систему; щелчок `Allow` сообщает реальному серверу Google или Microsoft передать ваши данные зарегистрированному приложению разработчика преступника.
Что такое «Фишинг кода устройства» (microsoft.com/devicelogin), и чем это так опасно?¶
Грант на авторизацию устройства OAuth 2.0 (`RFC 8628`) был создан для того, чтобы вы могли входить на устройства, у которых нет веб-браузера или клавиатуры, например Smart TV или интерфейс командной строки (CLI): телевизор отображает 8-значный код и предлагает вам открыть `microsoft.com/devicelogin` на своем телефоне и введите этот код. При атаке фишинга кода устройства хакер запускает сценарий (`TokenTactics` или `RoadTools`) на своем компьютере для создания нового 8-значного кода, а затем отправляет вам электронные письма или сообщения в Teams/Slack с утверждением, что вы должны ввести этот код по адресу `microsoft.com/devicelogin` для просмотра защищенного документа или проверки вашей учетной записи. В ту секунду, когда вы вводите их код на реальном сайте Microsoft, Microsoft регистрирует компьютер хакера прямо в вашей учетной записи с уже удовлетворенными полными требованиями многофакторной аутентификации.
Опасен ли стандартный «Войти через Google» или «Войти через Apple», если во всплывающем окне запрашивается только мое имя и адрес электронной почты?¶
Стандартный OpenID Connect (`OIDC`) «Войти с помощью Google/Apple/Microsoft» предлагает **только** запросить ваш базовый профиль (`Name`, `Email address`и `Profile picture`) на самом деле намного безопаснее, чем вводить пароль на новом веб-сайте, поскольку сторонний веб-сайт никогда не увидит ваш пароль и не получит доступа к вашей электронной почте или файлам. Опасность возникает только тогда, когда всплывающее окно согласия запрашивает **дополнительные области конфиденциального API**, например * «Чтение, составление, отправка и окончательное удаление всей вашей электронной почты»* * «Просмотр, редактирование, создание и удаление всех ваших файлов на Google Диске»* или * «Присоединение к серверам для вас». * Всегда читайте маркированный список разрешений на экране согласия, прежде чем нажимать «Продолжить».
Связанные руководства¶
- Фишинг MFA и обход злоумышленника посередине (AiTM)
- Перехват файлов cookie сеанса, вредоносное ПО для кражи информации и отзыв пароля
- Взломан аккаунт электронной почты: правила переадресации и восстановление
- Компрометация корпоративной деловой электронной почты (BEC) и отзыв о мошенничестве с использованием электронных средств связи
- Вредоносные расширения браузера, угонщики буфера обмена и удаление рекламного ПО
- Глобальные номера экстренных служб
Источники проверены¶
- Агентство кибербезопасности и безопасности инфраструктуры (CISA) и Федеральное бюро расследований (ФБР) (США): совместные рекомендации по кибербезопасности в отношении незаконных разрешений на получение согласия OAuth, фишинга кода устройства (
RFC 8628) и кража токенов Cloud Identity. - Инженерная группа Интернета (IETF) (международная): RFC 6749 (Структура авторизации OAuth 2.0), RFC 7009 (отзыв токена OAuth 2.0) и RFC 8628 (Вопросы безопасности при предоставлении авторизации устройства OAuth 2.0).
- Microsoft Threat Intelligence и Microsoft Entra Security Engineering (международный): Пособие по реагированию на инциденты для вредоносных приложений OAuth (
OAuth2PermissionGrant) и фишинг кода устройства в Microsoft Entra ID. - Google Cloud и Google Workspace Security (международная): проверка области действия API OAuth 2.0, управление доступом к сторонним приложениям и архитектура отзыва токенов.
- Национальный центр кибербезопасности (NCSC) (Великобритания): Руководство по защите арендаторов облака от фишинга, связанного с согласием OAuth, и злоупотребления делегированными API.