SmartLoader klont die Oura Ring MCP, um einen Supply-Chain-Angriff zu inszenieren
Detection stack
- AIDR
- Alert
- ETL
- Query
Zusammenfassung
SmartLoader nutzte gefälschte GitHub-Konten und einen geklonten Oura Ring MCP-Server, um MCP-Registrierungen zu kontaminieren. Der trojanisierte Server lieferte dann den StealC-Infostealer, der entwickelt wurde, um Entwickler-Credentials, Crypto-Wallet-Daten und Gesundheitsinformationen zu stehlen. Die Aktivität zeigt, wie KI-gestützte Gesundheitsintegrationen zu einem Einstiegspunkt in der Lieferkette werden können.
Untersuchung
Forscher kartierten mindestens fünf gefälschte GitHub-Profile, die das echte Oura MCP-Repository geforkt und Lookalikes veröffentlicht hatten. Ein bösartiger Fork wurde unter einem neuen Konto gepusht und bei MCP-Registrierungen eingereicht. Dynamische Analysen fanden auf LuaJIT-basierte Payloads im AppData-Ordner des Benutzers und Persistenz durch geplante Aufgaben, die als Realtek-Audiotreiber getarnt waren.
Abschwächung
Auditieren Sie MCP-Server-Bestände, erzwingen Sie Herkunftsüberprüfungen vor der Installation und alarmieren Sie bei geplanten Aufgaben, die ausführbare Dateien aus AppData starten. Wenden Sie Ausgangskontrollen an und blockieren Sie den Datenverkehr zu bekannten Kryptowährungs- und C2-Endpunkten. Validieren Sie GitHub-Beitragshistorie und Repository-Abstammung während der Genehmigung.
Antwort
Bei Erkennung isolieren Sie den Arbeitsplatz, beenden Sie die bösartigen Aufgaben, entfernen Sie nicht autorisierte ausführbare Dateien aus AppData und drehen Sie exponierte Anmeldeinformationen und API-Schlüssel. Überprüfen Sie den kompromittierten MCP-Server forensisch und verschärfen Sie die Überprüfung von Abhängigkeiten, um eine erneute Infektion zu verhindern.
„graph TB %% Class Definitions classDef action fill:#99ccff classDef malware fill:#ffcc99 classDef process fill:#ff9999 classDef file fill:#cccccc classDef technique fill:#c0c0c0 %% Node definitions action_supply_chain[„<b>Action</b> – <b>T1195.001 Lieferkettenkompromittierung</b><br /><b>Beschreibung</b>: Angreifer kompromittiert eine Softwarelieferkette, um bösartigen Code zu verbreiten.“] class action_supply_chain action malware_trojanized_server[„<b>Malware</b> – <b>Name</b>: Trojanisierter Oura MCP-Server<br /><b>Zweck</b>: Geliefert über kompromittiertes Paket.“] class malware_trojanized_server malware action_developer_install[„<b>Aktion</b> – <b>Paket installieren</b><br /><b>Beschreibung</b>: Entwickler installiert das kompromittierte MCP-Paket.“] class action_developer_install action file_resource_txt[„<b>Datei</b> – <b>Name</b>: resource.txt<br /><b>Techniken</b>: T1027 Verschleierte Dateien, T1059 Befehls- und Skriptinterpreter“] class file_resource_txt file malware_luajit_script[„<b>Malware</b> – <b>LuaJIT Script</b><br /><b>Techniken</b>: T1027, T1059“] class malware_luajit_script malware process_odmw[„<b>Prozess</b> – <b>Name</b>: ODMw.exe (LuaJIT-Interpreter)“] class process_odmw process process_odmy[„<b>Prozess</b> – <b>Name</b>: ODMy.exe (LuaJIT-Interpreter)“] class process_odmy process tech_T1053[„<b>Technik</b> – T1053 Geplante Aufgabe/Job<br /><b>Beschreibung</b>: Erstellt geplante Aufgaben zur Persistenz.“] class tech_T1053 technique process_task_odmw[„<b>Prozess</b> – <b>Geplante Aufgabe</b>: RealtekAudioManager_ODMw“] class process_task_odmw process process_task_odmy[„<b>Prozess</b> – <b>Geplante Aufgabe</b>: AudioManager_ODMy“] class process_task_odmy process malware_socket3[„<b>Malware</b> – <b>Name</b>: socket3.lua (C2-Payload)“] class malware_socket3 malware tech_T1102[„<b>Technik</b> – T1102 Webdienst<br /><b>Beschreibung</b>: Verwendet HTTP-basierten Webdienst für Kommando- und Kontrolle.“] class tech_T1102 technique tech_T1041[„<b>Technik</b> – T1041 Exfiltration über C2-Kanal<br /><b>Beschreibung</b>: Sendet gestohlene Daten über den C2-Kanal.“] class tech_T1041 technique malware_stealc[„<b>Malware</b> – <b>Name</b>: StealC Infostealer“] class malware_stealc malware tech_T1555_003[„<b>Technik</b> – T1555.003 Credentials In Files: Browser-Passwörter/Cookies<br /><b>Beschreibung</b>: Stehlt gespeicherte Browser-Credentials.“] class tech_T1555_003 technique tech_T1552_001[„<b>Technik</b> – T1552.001 Credentials In Files: Passwortspeicher<br /><b>Beschreibung</b>: Stehlt Discord-Tokens, Kryptowährungs-Wallets, SSH-Schlüssel und API-Anmeldeinformationen.“] class tech_T1552_001 technique %% Verbindungen, die den Angriffsablauf zeigen action_supply_chain u002du002d>|liefert| malware_trojanized_server malware_trojanized_server u002du002d>|installiert durch| action_developer_install action_developer_install u002du002d>|erstellt| file_resource_txt file_resource_txt u002du002d>|enthält| malware_luajit_script malware_luajit_script u002du002d>|lässt fallen| process_odmw malware_luajit_script u002du002d>|lässt fallen| process_odmy process_odmw u002du002d>|verwendet| tech_T1053 process_odmy u002du002d>|verwendet| tech_T1053 tech_T1053 u002du002d>|erstellt| process_task_odmw tech_T1053 u002du002d>|erstellt| process_task_odmy process_task_odmw u002du002d>|führt aus| process_odmw process_task_odmy u002du002d>|führt aus| process_odmy process_odmw u002du002d>|startet| malware_socket3 process_odmy u002du002d>|startet| malware_socket3 malware_socket3 u002du002d>|kommuniziert über| tech_T1102 malware_socket3 u002du002d>|exfiltriert über| tech_T1041 malware_socket3 u002du002d>|verteilt| malware_stealc malware_stealc u002du002d>|stiehlt| tech_T1555_003 malware_stealc u002du002d>|stiehlt| tech_T1552_001 „
Angriffsablauf
Erkennungen
Verdächtige geplante Aufgabe (über Audit)
Ansehen
IOCs (DestinationIP) zur Erkennung: SmartLoader klont Oura Ring MCP, um Lieferkettenangriff zu starten
Ansehen
IOCs (SourceIP) zur Erkennung: SmartLoader klont Oura Ring MCP, um Lieferkettenangriff zu starten
Ansehen
Verdächtige LuaJIT-Interpreter-Ausführung in AppData [Windows Prozess-Erstellung]
Ansehen
Erkennung des gefälschten GitHub-Ökosystems von SmartLoader [Webserver]
Ansehen
Simulationsausführung
Voraussetzung: Der Telemetrie- & Basislinientest vor dem Flug muss bestanden sein.
Begründung: Dieser Abschnitt erläutert die genaue Ausführung der Angreifertechnik (TTP), die darauf abzielt, die Erkennungsregel auszulösen. Die Befehle und die Erzählung spiegeln direkt die identifizierten TTPs wider und sollen die genaue Telemetrie erzeugen, die von der Erkennungslogik erwartet wird.
-
Angriffserzählung & Befehle:
Ein Angreifer, der ein gefälschtes GitHub-Repository hostet (z.B.https://github.com/SiddhiBagul/MCP-oura) kopiert die legitime SmartLoader-Payload, re-branded sie und macht sie öffentlich zugänglich. Ein kompromittierter interner Host führt später ein Skript aus, das das bösartige Repository übercurlherunterlädt. Diese Aktion erzeugt eine HTTP-GET-Anfrage, die vom Proxy aufgezeichnet wird und mit einer der Indikator-URLs in der Regel übereinstimmt. -
Regressionstest-Skript:
#!/usr/bin/env bash # SmartLoader-Fake-GitHub-Download-Simulation – löst die Sigma-Regel aus MALICIOUS_URLS=( "https://github.com/SiddhiBagul/MCP-oura" "https://github.com/YuzeHao2023/MCP-oura" "https://github.com/punkpeye/MCP-oura" "https://github.com/dvlan26/MCP-oura" "https://github.com/halamji/MCP-oura" "https://github.com/yzhao112/MCP-oura" ) for url in "${MALICIOUS_URLS[@]}"; do echo "[+] Hole bösartiges Repository: $url" # Die -L-Flagge folgt Weiterleitungen; -s unterdrückt Fortschritt; -o verwirft Ausgabe. curl -s -L -o /dev/null "$url" done echo "[+] Simulation abgeschlossen." -
Aufräumbefehle:
# Keine Dateien wurden beibehalten, aber löschen Sie die Shell-Historie der URLs history -d $(history | grep -n "github.com" | cut -d: -f1) echo "[+] Bereinigung abgeschlossen – URLs aus der Historie entfernt."