ChainVeil kehrt zurück, um das Vite-Ökosystem ins Visier zu nehmen
Detection stack
- AIDR
- Alert
- ETL
- Query
Zusammenfassung
Ein neu identifiziertes bösartiges npm-Cluster, bekannt als ViteVenom, zielt auf das Vite Build-Tool-Ökosystem ab. Die Kampagne verwendet sorgfältig gestaltete, gescopedes Paketnamen, um legitime Tools zu imitieren und liefert einen 77 KB großen Remote-Access-Trojaner. Es stützt sich auch auf eine widerstandsfähige, vierstufige blockchainbasierte Steuerungsarchitektur, die Tron, Aptos und Binance Smart Chain umfasst.
Untersuchung
Forscher identifizierten sieben bösartige npm-Pakete, die dieselben XOR-Entschlüsselungsschlüssel und Tier-2-Blockchain-Wallet-Adressen verwendeten, die zuvor in der ChainVeil-Kampagne beobachtet wurden. Ihre Untersuchung deckte eine mehrstufige Ausführungskette auf, bei der die Payload-Standorte über Blockchain-Transaktionen aufgelöst werden, was den Betreibern hilft, traditionellen Domain-Abschaltungen zu entgehen. Die Malware verwendet auch array-indexiertes String-Shuffling, um die statische Analyse zu erschweren.
Minderung
Organisationen sollten Abhängigkeitsbäume auf verdächtige, gescopedes Pakete wie @vite-pro/*, @vitets/*, und @vite-ts/*überprüfen. Sofortige Minderungsschritte umfassen das Entfernen der identifizierten bösartigen Pakete, das Rotieren aller exponierten Anmeldeinformationen wie SSH-Schlüssel, npm-Token und API-Schlüssel sowie das Blockieren der verwandten Command-and-Control-IP-Adressen auf der Netzwerkebene. Entwickler sollten auch überprüfen, ob die Vite-Abhängigkeiten aus dem offiziellen @vitejs/* Namensraum stammen.
Reaktion
Falls diese Aktivität festgestellt wird, entfernen Sie die identifizierten bösartigen Pakete sofort und führen Sie eine gründliche Überprüfung der Lockfiles durch, einschließlich package-lock.json, pnpm-lock.yaml, und yarn.lock. Sicherheitsteams sollten alle verwaisten node -e Prozesse beenden, die als getrennte Kindprozesse ausgeführt werden. Eine vollständige Rotierung der Anmeldeinformationen sollte für jede Umgebung erfolgen, die von den betroffenen Systemen aus erreicht wurde, und Shell-Konfigurationsdateien wie .bashrc and .zshrc sollten auf injizierten Persistenzcode hin untersucht werden.
Angriffsablauf
Erkennungen
Möglicher Missbrauch des öffentlichen Ethereum-Knotens als C2-Kanal (via dns_query)
Anzeigen
IOCs (HashMd5) zur Erkennung: Fortsetzung der ChainVeil npm Malware, die auf das Vite-Ökosystem abzielt
Anzeigen
IOCs (SourceIP) zur Erkennung: Fortsetzung der ChainVeil npm Malware, die auf das Vite-Ökosystem abzielt
Anzeigen
IOCs (DestinationIP) zur Erkennung: Fortsetzung der ChainVeil npm Malware, die auf das Vite-Ökosystem abzielt
Anzeigen
Erkennung der IP-Blockierung für ViteVenom- und ChainVeil-Kampagnen [Firewall]
Anzeigen
Erkennung von ViteVenom Malware-Netzwerkaktivitäten [Windows-Netzwerkverbindung]
Anzeigen
Simulation der Ausführung
Voraussetzung: Die Telemetrie- & Basislinien-Überprüfung muss bestanden worden sein.
Grund: Dieser Abschnitt beschreibt die genaue Ausführung der Angriffstechnik (TTP), die dazu bestimmt ist, die Erkennungsregel auszulösen. Die Befehle und Erzählungen MÜSSEN die identifizierten TTPs direkt widerspiegeln und darauf abzielen, die genaue Telemetrie zu generieren, die von der Erkennungslogik erwartet wird. Abstrakte oder nicht verwandte Beispiele führen zu Fehldiagnosen.
-
Angriffserzählung & Befehle: Der Angreifer hat ein Stück Malware eingesetzt (das die ViteVenom-Kampagne simuliert), das versucht, eine Heartbeat-/C2-Verbindung zu seinem Steuerungsserver herzustellen. Die Malware versucht, eine Verbindung zur fest codierten IP
43.249.154.132herzustellen. Da diese IP bereits in der Unternehmensfirewall auf der schwarzen Liste steht, verwirft die Firewall das Paket und generiert ein ‚block‘-Ereignis. Diese Simulation verwendetcurl, um eine Verbindung zu einer der spezifischen IPs herzustellen, die in der Erkennungslogik identifiziert wurden, um den Alarm auszulösen. -
Regressionstest-Skript: [Provide the exact, self-contained, and executable code snippet for the simulation.]
#!/bin/bash # Simulation eines Angreifers, der versucht, eine Verbindung zu einer bekannten ChainVeil C2 IP herzustellen # Ziel-IP: 43.249.154.132 (aus der Erkennungslogik) TARGET_IP="43.249.154.132" echo "[*] Simuliere Verbindungsversuch zu $TARGET_IP..." # Wir verwenden curl, um einen Verbindungsversuch durchzuführen. # Die Firewall sollte dies abfangen und eine 'block'-Aktion protokollieren. curl -m 5 http://$TARGET_IP/ping > /dev/null 2>&1 if [ $? -ne 0 ]; then echo "[+] Verbindung fehlgeschlagen, wie erwartet (Firewall sollte es blockiert haben)." else echo "[!] Warnung: Verbindung erfolgreich. Firewall hat die IP nicht blockiert." fi -
Aufräumbefehle:
# Es wurden keine dauerhaften Änderungen am System vorgenommen. # Stellen Sie einfach sicher, dass alle temporären Testdateien entfernt werden, wenn sie erstellt wurden. rm -f /tmp/sim_test_result.txt