Nowa technika „CoPhish”: kradzież tokenów OAuth przez agentów Microsoft Copilot Studio

securitybeztabu.pl 16 godzin temu

Wprowadzenie do problemu / definicja luki

Badacze Datadog Security Labs opisali nową technikę phishingu — CoPhish — która wykorzystuje agentów Microsoft Copilot Studio jako „wrapper” do dostarczania fałszywych żądań zgody OAuth z legalnej domeny Microsoftu (copilotstudio.microsoft.com). Atak kończy się uzyskaniem tokenu dostępu użytkownika i może prowadzić do przejęcia skrzynki pocztowej, OneNote czy innych zasobów przez Microsoft Graph. Microsoft potwierdził, iż pracuje nad poprawkami w produktach, podkreślając jednocześnie element socjotechniczny ataku.

W skrócie

  • Wejście: ofiara trafia na udostępnioną stronę „demo” agenta Copilot Studio hostowaną w domenie Microsoftu i klika Login.
  • Przebieg: przycisk logowania przekierowuje do złośliwej aplikacji OAuth (wewnętrznej lub zewnętrznej), a po akceptacji uprawnień agent automatycznie ekfiltruje User.AccessToken np. przez żądanie HTTP do serwera atakującego (np. Burp Collaborator). Żądanie wychodzi z IP Microsoftu, więc ruch ofiary nie zdradza exfiltracji.
  • Zasięg uprawnień: choćby po niedawnych zmianach w Entra ID, konta z rolami administracyjnymi przez cały czas mogą nadać szerokie uprawnienia aplikacjom; zwykli użytkownicy wciąż mogą zgodzić się na pewne zakresy (np. OneNote).
  • Status: Microsoft zapowiada dodatkowe zabezpieczenia i „utwardzenie” doświadczeń związanych ze zgodą/zarządzaniem aplikacjami.

Kontekst / historia / powiązania

CoPhish to wariant dobrze znanego „consent phishing” (MITRE ATT&CK T1528 – Steal Application Access Token), w którym ofiara sama przyznaje dostęp złośliwej aplikacji. W 2025 r. Microsoft zaostrzał domyślne polityki zgody w Entra ID, ograniczając możliwość nadawania niektórych uprawnień przez użytkowników końcowych. Jednak wektor pozostaje aktualny, zwłaszcza wobec administratorów aplikacji i w scenariuszach wewnętrznych.

Analiza techniczna / szczegóły luki

  1. Host zaufany przez użytkowników
    Atakujący tworzy agenta Copilot Studio (we własnym tenantcie lub w skompromitowanym) i włącza „Demo website”, uzyskując URL w domenie Microsoftu. To znacząco zwiększa wiarygodność kampanii.
  2. Backdoor w systemowym „Sign-in topic”
    Wbudowany temat logowania można modyfikować. Po akcji „Authenticate” badacze dodali krok „HTTP Request”, który wysyła zawartość zmiennej User.AccessToken w nagłówku (np. Token) do kontrolowanego endpointu.
  3. Złośliwa aplikacja OAuth (multi-tenant)
    Atakujący rejestruje aplikację z odpowiednimi zakresami Graph i redirect URL https://token.botframework.com/.auth/web/redirect, po czym wpisuje client ID/secret do konfiguracji uwierzytelniania agenta. Kliknięcie „Login” kieruje ofiarę do workflow zgody.
  4. Tokeny i zakresy
    W scenariuszu użytkownika wewnętrznego badacze uzyskali token z Mail.ReadWrite, Mail.Send, Notes.ReadWrite. Dla Application Administrator możliwe są choćby zakresy aplikacyjne (Application.ReadWrite.All) i szerokie Files/Sites.*.All.
  5. Ślady w logach
    • Entra ID Audit: „Consent to application”.
    • Microsoft 365 Audit: operacja „Consent to application”.
    • Copilot Studio (Power Platform): BotCreate, BotComponentUpdate na *.topic.Signin.

Praktyczne konsekwencje / ryzyko

  • Business Email Compromise-as-a-Service: token daje atakującemu możliwość czytania/wykonywania akcji w imieniu użytkownika (np. wysyłka spear-phishingu z wewnętrznego konta).
  • Uprawnienia administracyjne: jeżeli ofiarą jest Application Administrator, konsekwencje obejmują szerokie uprawnienia w Graph i potencjalne trwałe mechanizmy utrzymania dostępu.
  • Efekt „zaufanej domeny”: link w domenie Microsoftu zmniejsza czujność użytkowników i może obchodzić proste filtry reputacyjne.

Rekomendacje operacyjne / co zrobić teraz

  1. Zaostrz polityki zgody w Entra ID
    • Ustal niestandardową politykę ograniczającą, kto i na jakie zakresy może wyrażać zgodę; przypisz ją jako domyślną.
    • Minimalnie: „Allow user consent for apps from verified publishers, for selected permissions (Recommended)” albo surowiej — wyłącz zgodę użytkownika i włącz workflow żądań od użytkowników.
  2. Odbierz wszystkim możliwość rejestracji aplikacji
    Domyślnie każdy członek może tworzyć aplikacje. Zablokuj to ustawienie, aby utrudnić wewnętrzny „consent phishing”.
  3. Monitoring i detekcja
    • Alerty na „Consent to application” (Entra/M365 Audit).
    • Zdarzenia Power Platform: BotCreate, BotComponentUpdate z *.topic.Signin.
    • Korelacje z anomaliami w Graph (np. wysyłka z konta, nietypowe dostępy do OneNote/Files).
  4. Ogranicz powierzchnię ataku w Copilot Studio
    • Przeglądaj modyfikacje systemowego Sign-in topic.
    • Wyłącz i usuwaj nieużywane lub dziwnie nazwane boty/„demo websites”.
  5. Zasady dla kont uprzywilejowanych
    • MFA phishing-resistant, PIM/JIT dla ról Application/Cloud Application Admin.
    • Oddzielne konta admin-only (bez licencji do codziennej pracy), zasady CA blokujące „risky consent”. (Najlepsze praktyki zgodne z dokumentacją Microsoft).
  6. Edukacja użytkowników i zespół helpdesk
    • Szkolenia dot. zgody na aplikacje i rozpoznawania UX Copilot Studio vs. Microsoft 365 Copilot.
    • Procedura szybkiego cofania zgody i unieważniania tokenów (w tym odwołanie grantów w Entra).

Różnice / porównania z innymi przypadkami (jeśli dotyczy)

  • Typowy „consent phishing” wykorzystuje link do strony zgody z domen niezwiązanych z Microsoftem lub z generics. CoPhish „owija” go w zaufaną domenę Copilot Studio i automatyzuje exfiltrację tokenu po stronie agenta (serwer Microsoft), co zaciemnia ślady w sieci ofiary.
  • Zmiany w Entra utrudniają część kampanii — ale nie dotyczą ról administracyjnych i niektórych wewnętrznych zakresów, więc powierzchnia ataku pozostaje.

Podsumowanie / najważniejsze wnioski

CoPhish to nie „magiczna” luka w kryptografii OAuth, ale sprytne nadużycie funkcji Copilot Studio i procesu zgody. Siłą ataku jest legitymizacja (domena Microsoft) i automatyzacja wycieku tokenu. Krytyczne są polityki zgody, odebranie prawa rejestracji aplikacji, monitoring zdarzeń oraz higiena ról administracyjnych. Microsoft zapowiada dalsze utwardzenie mechanizmów — nie zwalnia to jednak z wdrożenia kontroli po stronie tenantów.

Źródła / bibliografia

  1. Datadog Security Labs — CoPhish: Using Microsoft Copilot Studio as a wrapper for OAuth phishing (analiza techniczna, IoC, detekcje). (securitylabs.datadoghq.com)
  2. BleepingComputer — New CoPhish attack steals OAuth tokens via Copilot Studio agents (komentarz Microsoft, kontekst). (BleepingComputer)
  3. Microsoft Learn — Manage app consent policies (Entra ID; konfiguracja polityk zgody). (Microsoft Learn)
  4. Microsoft Learn — Configure how users consent to applications (ustawienia zgody użytkownika; zalecenia). (Microsoft Learn)
  5. MITRE ATT&CK — T1528: Steal Application Access Token (mapowanie techniki). (MITRE ATT&CK)
Idź do oryginalnego materiału