Nowa kampania phishingowa omija MFA w Microsoft 365, wykorzystując „device code” i kradzież tokenów OAuth

securitybeztabu.pl 7 godzin temu

Wprowadzenie do problemu / definicja luki

Pojawiła się kolejna fala ataków typu device code phishing, w której ofiary są nakłaniane do wpisania „kodu autoryzacji” na legalnej stronie Microsoftu, a w efekcie… same podpinają urządzenie lub sesję atakującego do swojego konta Microsoft 365. To istotne, bo w tym modelu ataku MFA może zostać poprawnie wykonane przez użytkownika, a mimo to napastnik uzyskuje dostęp – nie poprzez kradzież hasła, tylko poprzez pozyskanie tokenów OAuth (access/refresh) i utrzymanie trwałej sesji.

W skrócie

  • Kampania jest opisana przez CSO Online na bazie ustaleń KnowBe4 i celuje głównie w firmy oraz profesjonalistów w Ameryce Północnej.
  • Przynęty obejmują m.in. „płatność firmową”, „dokument o premiach”, „voicemail” i inne tematy pilne, które mają skłonić do szybkiej reakcji.
  • Użytkownik trafia na prawdziwy portal Microsoft do logowania urządzeń (np. microsoft.com/devicelogin) i wpisuje kod dostarczony przez atakującego.
  • Skutek: atakujący uzyskuje ważne tokeny OAuth i dostęp do zasobów M365 (Outlook, Teams, OneDrive), często w sposób bardziej „trwały” niż jednorazowe przechwycenie hasła.

Kontekst / historia / powiązania

Device code phishing nie jest nowy, ale w ostatnich kilkunastu miesiącach zyskał na popularności, bo:

  • odbywa się na legalnej domenie Microsoft, co utrudnia wykrycie użytkownikowi (i część kontroli URL),
  • omija klasyczne mechanizmy „wyłapywania” fałszywych stron logowania,
  • wspiera go rosnący ekosystem narzędzi i procedur (np. opisywanych publicznie łańcuchów ataku oraz automatyzacji).

Microsoft opisywał podobne działania w kontekście aktora śledzonego jako Storm-2372, gdzie mechanizm device code był wykorzystywany do przechwytywania tokenów i dalszych działań w Microsoft 365 (w tym nadużyć Graph API).

Analiza techniczna / szczegóły luki

Warto podkreślić: to nie „dziura” w MFA jako takiej, tylko nadużycie prawidłowego przepływu OAuth 2.0 Device Authorization Grant.

Typowy łańcuch ataku (krok po kroku)

  1. E-mail phishingowy z przynętą biznesową (płatność, dokument, wiadomość głosowa itp.).
  2. Wiadomość zawiera kod „Secure Authorization” oraz link prowadzący do procesu logowania.
  3. Ofiara ląduje na prawdziwej stronie Microsoft do wprowadzenia kodu urządzenia (KnowBe4 wskazuje wprost microsoft.com/devicelogin).
  4. Użytkownik uwierzytelnia się normalnie (często także z MFA), ale… wpisany kod nie dotyczy jego urządzenia – tylko sesji/urządzenia kontrolowanego przez atakującego.
  5. Atakujący „polluje” endpointy tokenów i przejmuje OAuth Access Token + Refresh Token, co daje dostęp do M365 bez potrzeby posiadania hasła użytkownika.
  6. Dostęp może utrzymywać się tak długo, jak ważne są tokeny (lub jak długo napastnik potrafi je odnawiać / utrwalać dostęp), co zwiększa ryzyko długiej, cichej kompromitacji.

Dlaczego to działa mimo MFA?

Bo MFA jest wykonywane „we adekwatnym miejscu” (u Microsoftu), a użytkownik w praktyce autoryzuje dostęp innej sesji. Z perspektywy systemu to wygląda jak legalne powiązanie urządzenia/aplikacji i wydanie tokenów.

Praktyczne konsekwencje / ryzyko

Skutki biznesowe są klasyczne dla przejęcia kont M365, ale często bardziej podstępne:

  • dostęp do poczty (Outlook): przejęcie korespondencji, reset haseł w innych usługach, BEC/CEO fraud,
  • dostęp do Teams: podszywanie się, ataki wewnątrz organizacji, wyłudzanie kolejnych autoryzacji,
  • dostęp do OneDrive/SharePoint: eksfiltracja dokumentów i danych wrażliwych,
  • możliwe wykorzystanie Microsoft Graph do przeszukiwania i pobierania danych (Microsoft wskazywał takie aktywności przy podobnych kampaniach).

Rekomendacje operacyjne / co zrobić teraz

Poniżej podejście „warstwowe” (ludzie + konfiguracja + detekcja):

1) Ogranicz lub wyłącz device code flow tam, gdzie to możliwe

Jeśli w Twojej organizacji nie jest wymagany przepływ „Device Authorization Grant”, rozważ jego blokadę / ograniczenie przez polityki tożsamości i dostępu (np. Conditional Access w Entra ID) oraz dopuszczanie tylko znanych scenariuszy/klientów. To jeden z najskuteczniejszych sposobów „ucięcia” tego typu nadużyć. (W praktyce: najpierw inwentaryzacja zależności, potem stopniowe ograniczanie).

2) Wymuś silniejsze warunki dostępu

  • wymagaj zgodnego (compliant) urządzenia i/lub zarządzania (MDM) dla dostępu do M365,
  • ograniczaj logowania według lokalizacji/ryzyka,
  • minimalizuj możliwość dodawania nowych urządzeń/sesji bez dodatkowych warunków.

3) Utnij „łatwe” nadużycia tokenów

  • ogranicz uprawnienia i zgody aplikacji (app consent), monitoruj nietypowe autoryzacje aplikacji,
  • przeglądaj sesje i odświeżane tokeny; po incydencie: unieważnij sesje / wymuś ponowne logowanie (revocation), rotuj poświadczenia tam, gdzie to konieczne.

4) Detekcja i monitoring

  • monitoruj zdarzenia logowania i nietypowe użycie devicelogin/device code sign-in,
  • alertuj na nagłe, nietypowe wzorce dostępu do Outlook/Teams/OneDrive krótko po autoryzacji device code,
  • koreluj z anomaliami w Graph API (szczególnie masowe wyszukiwanie/pobieranie).

5) Procedury i szkolenia „pod ten konkretny trik”

Użytkownik widzi prawdziwą stronę Microsoft – więc szkolenia powinny mówić wprost:

  • nigdy nie wpisuj „kodu autoryzacji” z maila na stronie logowania, jeżeli sam nie inicjowałeś procesu parowania urządzenia,
  • każda prośba „wpisz kod, żeby odebrać dokument/voicemail/płatność” = sygnał alarmowy,
  • zgłaszaj takie maile jako incydent (playbook SOC/IT).

Różnice / porównania z innymi przypadkami

  • Klasyczny credential phishing: kradnie hasło (czasem też kod MFA), zwykle przez fałszywą stronę.
  • AiTM (Adversary-in-the-Middle): przechwytuje sesję „w locie” i może kraść cookies/tokeny przez pośredniczący serwer.
  • Device code phishing: ofiara loguje się na prawdziwej stronie, ale finalnie autoryzuje nie tę sesję, co trzeba; atak bazuje na legalnym mechanizmie urządzeń i tokenów OAuth, co bywa trudniejsze do zauważenia „na oko”.

Podsumowanie / najważniejsze wnioski

Ta kampania przypomina, iż „MFA włączone” nie oznacza automatycznie „bezpiecznie”. Device code phishing przesuwa ciężar ataku z kradzieży haseł na kradzież i nadużycie tokenów OAuth, często przy udziale samego użytkownika, który wykonuje poprawne logowanie na legalnej stronie. najważniejsze działania obronne to: ograniczenie device code flow tam, gdzie nie jest potrzebny, wzmocnienie warunków dostępu (urządzenia zgodne/zarządzane), monitoring anomalii tokenów i autoryzacji oraz szkolenia skoncentrowane na tym konkretnym scenariuszu.

Źródła / bibliografia

  1. CSO Online – opis kampanii i przynęt, kontekst KnowBe4. (CSO Online)
  2. KnowBe4 Threat Labs – szczegóły techniczne, microsoft.com/devicelogin, kradzież tokenów access/refresh. (KnowBe4 Blog)
  3. Proofpoint – szerszy trend, łańcuch ataku z URL/QR i device code, automatyzacja. (Proofpoint)
  4. Microsoft Security Blog (Storm-2372) – mechanika device code phishing i wpływ na tokeny oraz działania po kompromitacji. (Microsoft)
  5. Microsoft Security Blog (Teams) – uwagi o persystencji i atrakcyjności tego wektora przez ważność tokenów. (Microsoft)
Idź do oryginalnego materiału