Storm-0940 Rozszerza Ataki ARTEX na Dostawców IT i Oprogramowania
Detection stack
- AIDR
- Alert
- ETL
- Query
Streszczenie
Grupa zagrożeń związana z Chinami, śledzona jako Storm-0940, używa ARTEX, autonomicznego agenta do testowania penetracji AI, do atakowania dostawców IT i oprogramowania. Ataki skupiają się na dostawcach tożsamości, takich jak Okta, Entra i Cognito, w celu identyfikacji słabości uwierzytelniania i uzyskania dostępu do danych klientów. Aktor wykazuje wysoko zautomatyzowane i adaptacyjne zachowanie, w tym rotację IP i częste zmiany user-agent w celu unikania wykrycia.
Śledztwo
Wiz Research zidentyfikował aktywność poprzez analizę dzienników dostępu HTTP, telemetrii dostawców tożsamości z AWS Cognito, Entra, Okta i artefaktów związanych z ARTEX. Śledztwo odkryło powtarzalny scenariusz obejmujący mapowanie aplikacji przez mapy źródłowe, sondowanie uwierzytelniania oraz nadużycie procedur odzyskiwania konta. Kampania została powiązana z niedawną aktywnością w łańcuchu dostaw i celowała w sektory oprogramowania na całym świecie.
Łagodzenie
Obrońcy powinni egzekwować silne ograniczenia szybkości na punktach końcowych uwierzytelniania i odzyskiwania konta. Wzmocnienie konfiguracji dostawców tożsamości, szczególnie przepływów OAuth i walidacji JWT, jest kluczowe do zmniejszenia ekspozycji. Organizacje powinny również monitorować nietypowe wzrosty w ilości zdarzeń odmowy dostępu i powtarzające się wzorce związane z automatyczną rejestracją.
Reakcja
Po wykryciu tej aktywności, zespoły bezpieczeństwa powinny natychmiast zbadać nagłe wzrosty nieudanych prób logowania i niezwykłą ilość zdarzeń odmowy dostępu. Koreluj telemetrię dostawców tożsamości z dziennikami serwerów internetowych w celu identyfikacji zachowań rekonesansowych. Zastosuj szybkie blokowanie IP w stosownych przypadkach i monitoruj kolejne próby wywodzące się z nowej infrastruktury lub różnych user-agentów.
Dodaj szczegóły odpowiedzi skoncentrowanej na detekcji Wyjaśnij sekwencję ataków kampanii
Przepływ Ataku
Wciąż aktualizujemy tę część.
Detekcje
Podejrzana aktywność trwałości poprzez wykonywanie poleceń powłoki od użytkowników i grup usług internetowych (za pomocą auditd)
Podejrzane wzorce User-Agent (za pośrednictwem internetu)
Możliwe wzorce włączenia plików (za pomocą internetu)
Możliwe wzorce wstrzyknięć poleceń systemu operacyjnego (za pośrednictwem serwera internetowego)
Możliwy wzorzec przechodzenia ścieżką w URL (za pośrednictwem serwera internetowego)
Możliwy prób odkrycia Known Hosts SSH [Linux] (za pomocą cmdline)
Skriptowany plik został utworzony w podejrzanych katalogach serwera internetowego [Linux] (za pomocą file_event)
IOC (SourceIP) do wykrycia: ARTEX w Dziczy: Storm-0940 Rozszerza Celowanie na Dostawców IT i Oprogramowania
IOC (DestinationIP) do wykrycia: ARTEX w Dziczy: Storm-0940 Rozszerza Celowanie na Dostawców IT i Oprogramowania
Wykrywanie nadużyć odzyskiwania konta w aplikacjach własnościowych [AWS Cloudtrail]
Atak na rozpylenie haseł w Okta korporacyjnej i Entra ID [Microsoft Windows Security Event Log]
Wykrywanie działań związanych z ARTEX celujących w dostawców IT i oprogramowania [Serwer internetowy]
Wykonanie Symulacji
-
Narracja ataku i polecenia: Przeciwnik przeprowadza rekonesans w celu mapowania powierzchni API celu. Zaczynają od próby pobrania dokumentacji OpenAPI (
/swagger/?format=openapi) w celu zidentyfikowania ukrytych punktów końcowych. Aby zweryfikować odporność trasowania serwera internetowego i przetestować potencjalne „ukryte” ścieżki lub błędy konfiguracji, atakujący natychmiast kontynuuje to poprzez żądanie do całkowicie losowego, nieistniejącego URI (/zzz-nonexistent-xyz123). Ta konkretna sekwencja została zaprojektowana do dopasowania się do charakterystycznego wzorca kampanii ARTEX. -
Skrypt testowy regresji:
#!/bin/bash # Skrypt symulacyjny ARTEX # Cel: lokalny serwer internetowy TARGET_URL="http://localhost" echo "[+] Rozpoczynanie symulacji rekonesansu ARTEX..." # Krok 1: Wyzwolenie selection1 (Uzyskiwanie dostępu do dokumentacji Swagger) echo "[+] Próba uzyskania dostępu do dokumentacji OpenAPI..." curl -s -o /dev/null -w "%{http_code}" "$TARGET_URL/swagger/?format=openapi" echo -e "n[+] Selection 1 triggered." # Krok 2: Wyzwolenie selection4 (Próba dostępu do nieistniejącego zasobu) # To jest wymagany warunek 'AND' przez regułę echo "[+] Próba dostępu do nieistniejącego zasobu..." curl -s -o /dev/null -w "%{http_code}" "$TARGET_URL/zzz-nonexistent-xyz123" echo -e "n[+] Selection 4 triggered." echo "[+] Symulacja zakończona. Sprawdź SIEM dla detekcji." -
Polecenia czyszczenia:
# Brak trwałych zmian dokonanych przez symulację. # Jeśli jakiekolwiek pliki zostały utworzone podczas testowania, usuń je: rm -f simulation_test_output.log