TWINLOOT wykorzystuje SharePoint i Microsoft Teams do kradzieży poświadczeń oraz ruchu bocznego - Security Bez Tabu

TWINLOOT wykorzystuje SharePoint i Microsoft Teams do kradzieży poświadczeń oraz ruchu bocznego

Cybersecurity news

Wprowadzenie do problemu / definicja

TWINLOOT to nowo ujawniony framework złośliwego oprogramowania napisany w Pythonie, zaprojektowany do prowadzenia ukrytej komunikacji z infrastrukturą operatora z wykorzystaniem zaufanych usług Microsoft 365. Najgroźniejszą cechą tego narzędzia jest łączenie kilku technik unikania detekcji: użycia SharePoint Online jako kanału typu dead drop, transportu ruchu przez lokalną przeglądarkę Microsoft Edge uruchamianą w trybie headless oraz interaktywnego dostępu z użyciem mechanizmów powiązanych z Microsoft Teams.

Z punktu widzenia organizacji oznacza to zagrożenie, które celowo wtapia się w legalny ruch biznesowy. W efekcie klasyczne metody wykrywania oparte wyłącznie na analizie reputacji domen, whitelistingu usług chmurowych lub prostym monitorowaniu połączeń wychodzących mogą okazać się niewystarczające.

W skrócie

TWINLOOT został opisany jako modularny implant Pythona, przygotowany do działania wewnątrz ekosystemu Microsoft i wyposażony w mechanizmy utrudniające analizę. Kampania miała rozpoczynać się od socjotechniki prowadzonej przez Microsoft Teams, gdzie napastnik podszywał się pod wsparcie IT i nakłaniał ofiarę do uruchomienia polecenia PowerShell.

  • Atak startuje od wiadomości lub rozmowy w Teams i uruchomienia polecenia PowerShell przez ofiarę.
  • Malware pobiera środowisko Pythona oraz komponent bootstrapujący.
  • Komunikacja C2 odbywa się przez SharePoint Online i Microsoft Graph API.
  • Dodatkowy tunel SOCKS5 umożliwia ruch boczny oraz interaktywną penetrację sieci.
  • Zagrożenie potrafi wyświetlać fałszywy ekran blokady Windows w celu przechwycenia hasła.

Kontekst / historia

W ostatnim czasie rośnie znaczenie technik polegających na ukrywaniu komunikacji C2 w legalnych platformach chmurowych i współpracy. Powód jest prosty: ruch do usług takich jak Microsoft 365 jest powszechnie dozwolony, często traktowany jako krytyczny biznesowo i nierzadko podlega mniej restrykcyjnej inspekcji niż połączenia do mniej znanych lokalizacji.

TWINLOOT wpisuje się w szerszy trend nadużywania infrastruktury konferencyjnej, relayów TURN oraz kanałów komunikacyjnych powiązanych z narzędziami do współpracy online. Na tle wcześniejszych koncepcji wyróżnia go jednak integracja kilku elementów w jednym zestawie operacyjnym: dead-drop C2 w SharePoint, tunelowanie oparte na mechanizmach związanych z Teams oraz wykorzystanie lokalnej przeglądarki ofiary do generowania ruchu, który wygląda jak typowa aktywność użytkownika.

Analiza techniczna

Łańcuch infekcji rozpoczyna się od inżynierii społecznej. Użytkownik otrzymuje instrukcję uruchomienia polecenia PowerShell, które pobiera archiwum zawierające runtime Pythona oraz główny moduł malware. Po uruchomieniu TWINLOOT zestawia dwa równoległe kanały operacyjne.

Pierwszy kanał odpowiada za pobieranie poleceń i eksfiltrację danych. W tym modelu implant komunikuje się z SharePoint Online przez Microsoft Graph API, uwierzytelniając się do kontrolowanego przez napastnika tenantu. Zastosowanie architektury dead drop oznacza, że polecenia i odpowiedzi nie trafiają do typowego serwera C2, lecz do zaufanej usługi chmurowej. Dodatkowo transfer ma być realizowany przez bezgłową instancję Edge na hoście ofiary, co utrudnia odróżnienie aktywności złośliwej od legalnego ruchu przeglądarki.

Drugi kanał zapewnia tunel reverse SOCKS5. Może on działać przez bezpośrednie połączenie TLS lub WebSocket, ale również z wykorzystaniem relayów TURN i kanałów WebRTC DataChannel powiązanych z infrastrukturą Teams. W praktyce operator uzyskuje możliwość przekierowywania ruchu przez zainfekowaną stację do zasobów wewnętrznych. Dzięki temu może skanować i osiągać dostęp do usług takich jak SMB, RDP, WinRM czy MSSQL, a ruch w sieci ofiary wygląda tak, jakby był inicjowany lokalnie przez skompromitowany host.

Szczególnie groźny jest moduł kradzieży poświadczeń. Po wydaniu odpowiedniej komendy malware wyświetla fałszywy ekran blokady Windows, dopasowany wizualnie do środowiska użytkownika. Wprowadzone hasło jest następnie szyfrowane i przesyłane kanałem SharePoint. Co ważne, mechanizm może celowo informować o błędnym haśle nawet po wpisaniu danych, aby skłonić ofiarę do ponownej próby i zwiększyć szansę na przechwycenie poprawnych poświadczeń.

TWINLOOT wdraża też mechanizmy trwałości. W analizowanych wariantach wskazywano między innymi hijacking skryptletów COM TypeLib, manipulację TaskCache w stylu GhostTask oraz funkcje samouaktualniania. Dodatkowo interesującym elementem jest wykorzystanie offline’owego hive rejestru i pliku NTUSER.MAN jako źródła konfiguracji profilu użytkownika, co może utrudniać wykrycie zmian przez tradycyjne narzędzia monitorujące rejestr.

Całość uzupełniają funkcje rozpoznania środowiska, zbierania informacji o systemie, wykonywania zrzutów ekranu oraz alternatywne metody pobierania konfiguracji. To wskazuje, że TWINLOOT nie jest jedynie prostym loaderem, ale rozwijanym frameworkiem post-exploitation.

Konsekwencje / ryzyko

Największe ryzyko wynika z połączenia wiarygodnej socjotechniki, użycia zaufanej infrastruktury Microsoft oraz możliwości ruchu bocznego z użyciem prawdziwych poświadczeń użytkownika. W praktyce napastnik może przejść od pojedynczej stacji roboczej do głębszej penetracji sieci bez konieczności wykorzystywania klasycznych exploitów na dalszych etapach incydentu.

Dla zespołów bezpieczeństwa poważnym problemem jest to, że ruch do Graph API, SharePoint Online czy infrastruktury relayowej Teams może zostać uznany za zwyczajny. Jeśli organizacja polega głównie na zaufaniu do domen Microsoft i uproszczonej analizie egressu, zagrożenie może funkcjonować przez dłuższy czas bez wzbudzania alarmów.

  • kradzież haseł użytkowników i administratorów,
  • przejęcie dostępu do zasobów wewnętrznych,
  • ruch boczny do kolejnych systemów,
  • eskalacja skali incydentu w środowisku Microsoft 365,
  • przygotowanie gruntu pod exfiltrację danych lub wdrożenie ransomware.

Rekomendacje

Organizacje powinny zacząć od ograniczenia ryzyka związanego z socjotechniką prowadzoną przez komunikatory. Każda procedura wymagająca uruchomienia PowerShell, skryptów lub poleceń administracyjnych przez użytkownika końcowego powinna być formalnie zabroniona bez dodatkowej, niezależnej weryfikacji. Niezbędne są także szkolenia obejmujące vishing, podszywanie się pod helpdesk oraz oszustwa prowadzone przez platformy współpracy.

Na poziomie endpointów warto monitorować nietypowe uruchomienia powershell.exe, pythonw.exe oraz Edge w trybie headless lub z oznakami automatyzacji. Szczególną uwagę należy zwracać na sytuacje, w których procesy przeglądarki pojawiają się w niestandardowych kontekstach i jednocześnie występuje komunikacja do Graph API lub artefakty wskazujące na wykorzystanie funkcji deweloperskich przeglądarki.

W warstwie tożsamości i chmury należy analizować dostęp do SharePoint Online oraz Graph API pod kątem nietypowych tenantów, nieregularnych wzorców odpytywania, anomalii czasowych i podejrzanych transferów plików. Ważna jest również korelacja aktywności Teams z zachowaniami endpointu, zwłaszcza gdy kontakt z rzekomym wsparciem IT poprzedza wykonanie poleceń administracyjnych.

W sieci wewnętrznej warto identyfikować stacje robocze inicjujące połączenia do usług administracyjnych na innych hostach, jeśli nie wynika to z ich roli biznesowej. Segmentacja sieci, ograniczanie ruchu lateralnego oraz zasada najmniejszych uprawnień znacząco zmniejszają skuteczność tuneli SOCKS5 używanych po kompromitacji.

  • egzekwowanie MFA odpornego na phishing tam, gdzie jest to możliwe,
  • blokowanie nieautoryzowanych interpreterów i runtime’ów,
  • monitorowanie zmian trwałości w rejestrze i harmonogramie zadań,
  • analiza artefaktów związanych z NTUSER.MAN i nietypowym ładowaniem hive’ów,
  • polowanie na fałszywe ekrany blokady i nietypowe komponenty interfejsu użytkownika.

Podsumowanie

TWINLOOT pokazuje, jak nowoczesne narzędzia post-exploitation ewoluują w kierunku pełnego nadużywania legalnych usług chmurowych i komunikacyjnych. Zamiast klasycznego serwera C2 malware wykorzystuje SharePoint Online, Microsoft Graph oraz mechanizmy powiązane z Teams, a część ruchu ukrywa za pomocą lokalnej przeglądarki ofiary.

Dla obrońców najważniejszy wniosek jest praktyczny: zaufanie do popularnych usług SaaS nie może oznaczać braku kontroli behawioralnej. Skuteczne wykrywanie takich operacji wymaga korelacji telemetrycznej pomiędzy tożsamością, endpointem, aktywnością chmurową i działaniami użytkownika.

Źródła

  1. TWINLOOT Abuses SharePoint and Teams to Steal Credentials and Move Across Networks
  2. Ghost Calls: Abusing Web Conferencing for Covert Command & Control (Part 1 of 2)
  3. Ghost Calls: Abusing Web Conferencing for Covert Command & Control (Part 2 of 2)
  4. Microsoft Teams call flows
  5. [MS-TURN]: Overview