phishing AiTM (adversary-in-the-middle)
| Po angielsku | adversary-in-the-middle phishing (AiTM) |
|---|---|
| Którą formą pisać | po angielsku Polski odpowiednik istnieje, ale w praktyce nikt tak nie pisze. Zostaw angielski, polski trzymaj jako synonim. |
| Inne formy | phishing z serwerem pośredniczącym · phishing przez odwrotne proxy · phishing omijający uwierzytelnianie wieloskładnikowe |
| Kategoria | Ataki i socjotechnika |
Phishing AiTM (adversary-in-the-middle) to odmiana phishingu, w której fałszywa strona nie udaje serwisu, tylko pośredniczy w komunikacji z prawdziwym serwisem i po drodze przechwytuje dane logowania oraz ciasteczko sesji [1]. Microsoft opisuje to jako serwer pośredniczący, który utrzymuje dwie osobne sesje TLS: jedną z ofiarą, drugą z właściwą witryną [1]. Ponieważ napastnik dostaje ciasteczko wydane już po zalogowaniu, uwierzytelnianie wieloskładnikowe nie zatrzymuje ataku [1]. MITRE ATT&CK klasyfikuje takie działania jako technikę Adversary-in-the-Middle, obejmującą przechwytywanie poświadczeń, tokenów dostępu i ciasteczek sesji [2].
Jak działa
Klasyczna strona phishingowa jest statyczną kopią formularza logowania. Phishing AiTM działa jak reverse proxy: każde żądanie ofiary przekazuje do prawdziwego serwisu, a jego odpowiedź odsyła ofierze. CERT Polska ujął to w 2019 roku tak, że fałszywy serwer nie przesyła podrobionej wersji strony, tylko pośredniczy w komunikacji z prawdziwą usługą [3]. Ofiara widzi prawdziwe treści, prawdziwe komunikaty o błędach i prawdziwe pytanie o drugi składnik.
W ostatnim kroku serwer pośredniczący zapisuje ciasteczko u siebie. Od tej chwili napastnik może wczytać je do własnej przeglądarki i korzystać z konta. MITRE zauważa, że użycie skradzionego ciasteczka omija uwierzytelnianie wieloskładnikowe, bo sesja jest już uwierzytelniona [5]. Dalsza część ataku to więc przejęcie sesji, a nie łamanie hasła.
Atak nie wymaga ręcznej pracy. CERT Polska wskazał narzędzia Modlishka i Evilginx, które automatyzują pośredniczenie [3], a MITRE opisuje evilginx2 jako przekaźnik przechwytujący nazwy użytkowników, hasła, tokeny uwierzytelniające i ciasteczka sesji [2].
Odmiany
Phishing AiTM różni się od pokrewnych ataków tym, co przechwytuje i gdzie stoi napastnik.
| Atak | Pozycja napastnika | Co zdobywa |
|---|---|---|
| Klasyczny phishing | własna kopia formularza | hasło, czasem kod jednorazowy |
| Phishing AiTM | pośrednik w HTTPS przed prawdziwą stroną [1] | hasło i ciasteczko sesji po MFA [1] |
| man-in-the-middle (MITM) w sieci | ta sama sieć, np. podstawiona Wi-Fi [2] | ruch nieszyfrowany, dane z sieci lokalnej [2] |
Ofiara trafia na serwer pośredniczący przez link w wiadomości. Adres zwykle przypomina prawdziwą domenę, dlatego phishing AiTM często łączy się z typosquattingiem albo atakiem homograficznym.
W WordPressie
Panel WordPressa też opiera sesję na ciasteczku. Funkcja wp_set_auth_cookie() przy zaznaczonym „Zapamiętaj mnie” tworzy ciasteczko trwałe, domyślnie ważne 14 dni, a bez tego pola ciasteczko sesji przeglądarki [6]. Przy każdym logowaniu rdzeń tworzy też token sesyjny przez menedżera sesji WP_Session_Tokens [6]. Ciasteczko przechwycone przez serwer pośredniczący daje więc napastnikowi dostęp do panelu do czasu wygaśnięcia albo unieważnienia sesji.
Popularna wtyczka Two Factor oferuje jako drugi składnik aplikację z kodami TOTP, kody wysyłane e-mailem i kody zapasowe [7]. Wszystkie wymagają przepisania kodu, a NIST stwierdza, że uwierzytelniacze z ręcznym wpisywaniem wyniku, w tym kody jednorazowe, nie mogą być uznane za odporne na phishing, bo nic nie wiąże wpisanego kodu z konkretną sesją [4]. Takie uwierzytelnianie wieloskładnikowe utrudnia zgadywanie hasła, ale nie powstrzyma serwera pośredniczącego.
Jeśli administrator podejrzewa, że wpisał dane na fałszywej stronie, może w swoim profilu użyć przycisku „Log Out Everywhere Else”, który wylogowuje inne urządzenia [8], a potem zmienić hasło.
Zagrożenia i skutki
Microsoft opisał kampanię phishingu AiTM, która od września 2021 roku próbowała zaatakować ponad 10 000 organizacji [1]. Po przejęciu skrzynek pocztowych napastnicy w ciągu minut szukali korespondencji finansowej, zakładali reguły ukrywające wiadomości i podszywali się pod uczestników istniejących wątków, by wyłudzać płatności [1]. To schemat BEC.
W przypadku strony WordPress skutkiem przejętej sesji administratora może być nieautoryzowane konto administratora, instalacja złośliwej wtyczki albo podmiana treści. Samo logowanie ofiary było przy tym poprawne, z hasłem i drugim składnikiem, więc nie wyróżnia się w dziennikach jako próba włamania.
Jak się bronić
Uwierzytelnianie odporne na phishing. NIST definiuje odporność na phishing jako zdolność protokołu do niedopuszczenia, by sekret lub wynik uwierzytelniacza trafił do podstawionego weryfikatora, bez polegania na czujności użytkownika [4]. Osiąga się ją przez powiązanie wyniku z nazwą weryfikatora, jak w FIDO2 / WebAuthn, albo z kanałem, jak w TLS z certyfikatem klienta [4]. Microsoft zaleca w tym celu FIDO2 i uwierzytelnianie certyfikatem [1], a CERT Polska już w 2019 roku wskazywał klucze U2F [3]. Na co dzień taką ochronę daje passkey.
Kontrola sesji. Microsoft zaleca polityki dostępu warunkowego oceniane przy każdym użyciu ciasteczka [1]. MITRE wymienia regularne usuwanie trwałych ciasteczek [5].
Filtrowanie poczty. Rozwiązania skanujące przychodzące wiadomości zatrzymują część linków do serwerów pośredniczących [1].
Ochrona po stronie serwisu. CERT Polska zaproponował też środki dla właścicieli usług. Pierwszy to potwierdzanie logowania linkiem wysłanym e-mailem i sprawdzanym razem z ciasteczkiem sesji. Drugi to skrypt na stronie, który wykrywa, że działa pod obcą nazwą hosta, i powiadamia prawdziwy serwer. Trzeci to podstrony pułapki, pozwalające rozpoznać i zablokować adresy IP serwerów pośredniczących [3]. Żaden z tych środków nie zastępuje uwierzytelniania odpornego na phishing, ale każdy utrudnia automatyczne pośredniczenie.
Historia i przykłady
Przypisy
8- [1] From cookie theft to BEC: Attackers use AiTM phishing sites as entry point to further financial fraud · Microsoft Threat Intelligence
- [2] Adversary-in-the-Middle, Technique T1557 — Enterprise · MITRE ATT&CK
- [3] Przeciwdziałanie phishingowi z wykorzystaniem techniki man-in-the-middle · CERT Polska
- [4] NIST SP 800-63B-4: Digital Identity Guidelines — Authentication and Authenticator Management · NIST
- [5] Use Alternate Authentication Material: Web Session Cookie, Technique T1550.004 · MITRE ATT&CK
- [6] wp_set_auth_cookie() — Code Reference · WordPress.org
- [7] Two Factor — wtyczka w katalogu WordPress.org · WordPress.org
- [8] Users Your Profile screen · WordPress.org