Buer, nový loader se objevuje na podzemním trhu

Přehled

Výzkumníci společnosti Proofpoint již několik let sledují používání prvostupňových downloaderů, které aktéři hrozeb používají k instalaci dalších forem malwaru během svých škodlivých e-mailových kampaní a po nich. Zejména v posledních dvou letech jsou tyto downloadery stále robustnější a poskytují pokročilé možnosti profilování a cílení.

Důležitější je, že downloadery a další malware, jako jsou botnety a bankovní trojské koně, vytlačily ransomware jako primární payload, což dává aktérům hrozeb flexibilitu při nasazování řady malwaru v sekundárních infekcích. Například jeden z nejrozšířenějších, Smoke Loader, byl hojně využíván ke shazování payloadů, jako jsou bankovní trojské koně Ursnif a The Trick, a také používal své vlastní moduly mimo jiné ke krádeži pověření a dalších informací a dat.

Od konce srpna 2019 sledují výzkumníci společnosti Proofpoint vývoj a prodej nového modulárního loaderu s názvem Buer jeho autory. Buer má funkce, které jsou vysoce konkurenceschopné se Smoke Loaderem, je aktivně prodáván na významných nelegálních tržištích a je určen pro použití aktéry, kteří hledají hotové, hotové řešení.

Kampaně

28. srpna 2019

Dne 28. srpna výzkumníci společnosti Proofpoint zaznamenali škodlivé e-mailové zprávy, které se tváří jako odpověď na dřívější legitimní e-mailové konverzace. Obsahovaly přílohy Microsoft Word, které používaly makra Microsoft Office ke stažení dalšího stupně payloadu.

Obrázek 1: Příklad přílohy Microsoft Word použité v kampani z 28. srpna 2019

Pozorovali jsme, že další stupeň payloadu se stahuje z adres URL včetně:

hxxp://jf8df87sdfd.yesteryearrestorationsnet/gate.php

hxxp://93345fdd.libertycolegioscom/gate.php

Stažený payload byl pojmenován verinstere222.xls nebo verinstere33.exe (konvence pojmenování, kterou aktér v tomto období používal). Místo varianty Ursnif Dreambot, která je s tímto aktérem často spojována, se jednalo o nedokumentovaný zavaděč, který dosud nebyl ve volné přírodě pozorován.

V následujících týdnech v průběhu září a října výzkumníci společnosti Proofpoint a další členové infobezpečnostní komunity zaznamenali několik kampaní od stejného aktéra, při kterých byla shozena buď varianta Ursnif Dreambot, nebo tento nový zavaděč.

10. října 2019

Dne 10. října výzkumníci společnosti Proofpoint zaznamenali v Austrálii malvertisingovou kampaň přesměrovanou na Fallout Exploit Kit (EK) shazující nový loader.

Obrázek 2: Stopa síťového provozu HTTP se souborem Fallout EK zneužívajícím zranitelné prohlížeče

Nahrávač pak upustil několik druhostupňových malwarových payloadů včetně KPOT stealer, Amadey a Smoke Loader.

21. října 2019

Od začátku července výzkumníci společnosti Proofpoint zaznamenali přibližně 100 kampaní zahrnujících Ostap téměř výhradně nahrávající několik instancí The Trick. 21 však výzkumníci společnosti Proofpoint zaznamenali škodlivé e-mailové zprávy s předměty jako „Penalty Notice # PKJWVBP“ obsahující přílohy Microsoft Word. Dokumenty obsahovaly makra, která v případě aktivace spustí program Ostap. Pozorovali jsme, že Ostap stahuje tento zavaděč ze

hxxps://185.130.104187/nana/kum.php?pi=18b&

který následně načetl The Trick „ono22“ ze svého C&C: garrisontxus

Obrázek 3: Síťový provoz pozorovaný po povolení makra ve škodlivých dokumentech.

Obr. 4: Příklad přílohy aplikace Microsoft Word použité v kampani z 21. října

Analýza funkcí na trhu &

Protože jsme tento nový zavaděč začali pozorovat při použití ve více různých kampaních, očekávali jsme, že je prodáván na podzemním trhu více aktérům. Navíc jsme na undergroundovém fóru objevili inzerát z 16. srpna popisující zavaděč s názvem „Buer“, který se shodoval s funkcemi malwaru pozorovaného ve výše uvedených kampaních.

Funkce přidané a inzerované v následujících týdnech přesně odpovídají vývoji zavaděče nalezeného v těchto kampaních.

Získali jsme text z příspěvku na nástěnce, jehož autor v ruštině požadoval platbu 400 USD za malware a nabízel své služby při nastavení softwaru pro potenciální zákazníky, aby jej mohli zprovoznit. Autor také uvádí, že aktualizace a opravy chyb jsou zdarma, ale za „přestavbu na nové adresy“ se platí příplatek 25 dolarů.

Následující text, který společnost Proofpoint rovněž získala z podzemního tržiště a o němž se předpokládá, že jej napsal autor malwaru, je shrnutím funkcí zavaděče, jak jsou popsány v ruském originále:

Obrázek 5. Zavaděč, který je v originále popsán v ruštině. Text z příspěvku na undergroundovém fóru popisující funkčnost bota Buer Loader

Podobně je v reklamě uvedena i funkčnost ovládacího panelu. Autor uvádí, že modulární bot je napsán výhradně v jazyce C a používá ovládací panel napsaný v jazyce .NET Core, přičemž zdůrazňuje vyšší výkon klienta i serveru díky volbě programovacího jazyka.

  • Podle popisu má bot celkové užitečné zatížení 55 až 60 kilobajtů, funguje jako nativní spustitelný soubor systému Windows a knihovna dynamických odkazů, běží výhradně v rezidentní paměti a je kompatibilní s 32bitovými a 64bitovými operačními systémy Microsoft Windows.
  • Bot komunikuje přes připojení HTTPS a lze jej vzdáleně aktualizovat z ovládacího panelu po dešifrování i obnově.
  • Autor také uvádí, že zavaděč běží jako zástupný proces důvěryhodné aplikace a funguje s využitím oprávnění na úrovni uživatele.
  • Nejvýznamnější je, že software nepoběží v SNS (bývalých sovětských státech, jako je Rusko).

Inzerát popisuje následující vlastnosti serveru a ovládacího panelu:

  • Ovládací panel je inzerován také jako napsaný v jazyce .NET Core, přičemž se upozorňuje na snadnou instalaci na serverové systémy Ubuntu / Debian Linux.
  • Server poskytuje širokou škálu statistik, včetně počítadel online, živých, mrtvých a celkových botů, aktualizaci seznamu botů v reálném čase, počítadlo stahování souborů a možnost filtrovat systémy podle typu operačního systému, přístupových práv nainstalovaných botů a počtu logických jader CPU.
  • Stažené soubory z infikovaných systémů jsou na serveru uloženy v zašifrované podobě a přístup k nim je povolen pomocí tokenu.
  • Nejdůležitější je, že stejně jako samotní boti, autor poznamenává, že server nezpracovává požadavky API zaslané ze zemí, které jsou členy SNS.

Příspěvek na fóru obsahoval také technické poznámky k vydání zavaděče a ovládacího panelu Buer (verze 1.1.2). V úvodu autor poznamenal, že spuštění zavaděče se nyní skládá ze tří kroků — pokud jsou první dva kroky v infikovaném systému neúspěšné a injekce do náhradního procesu selže (například kvůli nekompatibilitě se samotnou šifrou), spustí se zavaděč místo toho pod vlastním procesem.

V poznámkách k vydání je u zavaděče uvedeno následující:

  • Zavaděč používá architekturu FastFlux.
  • Zavaděč pracuje pod důvěryhodným procesem v rámci systému Microsoft Windows. Proces MemLoadEx nyní podporuje x64 exe jako důvěryhodnou aplikaci.
  • MemLoad byl aktualizován a nyní podporuje nativní x32 exe.

V poznámkách k vydání jsou uvedeny následující funkce ovládacího panelu:

  • Přístup k API je realizován pomocí HTTPS s podporou certifikátů podepsaných vlastním jménem.
  • Podpora úprav úloh v panelu. Uživatel může úlohu během provádění zastavit a změnit její užitečné zatížení a počet provedení.
  • Přidána možnost vytvořit úlohu podle ID bota. Velmi vhodné pro bodové zatížení.
  • Okno pro vytváření úloh krok za krokem.
  • Upozornění, které umožňuje dozvědět se o potřebných botech online.
  • Zvýšila se jedinečnost ID bota.
  • Na panel byly přidány značky, které umožňují třídění botů pro následné akce s nimi.
  • Zobrazuje název počítače v tabulce.
  • Vylepšena kryptografická kompatibilita.
  • Přidána historie botů.
  • „Panel se nyní rozšiřuje na Docker“ (podpora kontejnerů Docker).
    • Poznámka výzkumníka Proofpoint: Předpokládáme, že tato funkce je určena pro snadnou integraci do pronajatých hostitelů Docker, což zjednodušuje instalaci, ačkoli potenciálně může být panel/C&C nainstalován na kompromitovaném hostiteli Docker.
  • Ověření souboru na panelu. Nyní panel nepřehlédne soubor, který zavaděč nebude moci stáhnout, a upozorní na to klienta.
  • Úlohy lze nyní opakovat.

Nakonec autor popsal následující technické změny pro verzi 1.1.9. Ty stojí za zmínku, protože ukazují, že malware je aktivně a profesionálně vyvíjen.

  • Zavaděč získal nový způsob spouštění Externí pro místní soubory. Výhodou této metody je jedinečnost a absence CreateProcess / ShellExecute prostřednictvím zavaděče. Spuštění vytvoří důvěryhodný proces, aniž by mu byly zadávány příkazy.
  • Panel má možnost označit všechny boty, které provedly určitý úkol. To umožní uživateli distribuovat zátěž určitým skupinám botů.
  • Implementované integrační rozhraní API. Je k němu k dispozici dokumentace.
  • Přidána možnost odeslat soubor odkazem v režimu proxy. Soubor je botovi přenesen v zašifrované podobě.
  • Byla opravena chyba počítání botů podle země a přidána další vylepšení.

Snímky obrazovky ovládacího panelu

Následující snímky obrazovky ovládacího panelu byly zahrnuty do podzemní reklamy a ukazují některé z možností backendu, které jsou zákazníkům k dispozici, včetně sledování telemetrie, filtrování hostitelů a dalších.

Obrázek 6: Uživatelské rozhraní pro přihlášení do ovládacího panelu pro zavaděč Buer C&C

Obrázek 7: Obrazovka sledování telemetrie botů pro ovládací panel Buer.

Obr. 8: Obrazovka sledování telemetrie botů pro ústřednu Buer v tmavém režimu

Obr. 9: Zobrazení filtru ústředny zobrazující vzdálené boty filtrované podle architektury Microsoft Windows.

Obr. 10: Zobrazení ovládacího panelu zobrazující správu souborů pro úlohy zavaděče

Obr. 11: Zobrazení ovládacího panelu vzdálených botů seřazených podle uživatelských práv.

Obr. 12: Zobrazení ovládacího panelu, stav úlohy

Obr. 13: Zobrazení ovládacího panelu, vytvoření úlohy

Analýza malwaru

Buer Loader je nový malware typu downloader, který stahuje a spouští další užitečné soubory.

Funkce proti analýze

Zavaděč obsahuje některé základní funkce proti analýze:

  • Kontroluje debuggery pomocí kontroly příznaku NtGlobalFlag v bloku prostředí procesu (PEB) a bloku prostředí vlákna (TEB)
  • Kontroluje virtuální počítače pomocí mechanismů Red Pill , No Pill a souvisejících mechanismů
  • Kontroluje locale, aby se ujistil, že malware není spuštěn v určitých zemích (obrázek 14)

Obrázek 14: Kontrola malwaru, zda neběží v určitých zemích

Persistence

Persistence se nastavuje konfigurací položky RunOnce v registru. V závislosti na verzi bude položka registru spouštět škodlivý software přímo nebo naplánuje spuštění úlohy.

Šifrování řetězců

Tato ukázka obsahuje funkci pro šifrování řetězců.

Obrázek 15: Dešifrovací sekvence pro řetězce

Následující funkce je příkladem dešifrování zašifrovaných řetězců v Ghidře pomocí Jythonu:

Obrázek 16: Dešifrovací sekvence pro řetězce

Následující funkce je příkladem dešifrování zašifrovaných řetězců v Ghidře pomocí Jythonu: Dešifrovací posloupnost pro řetězce (verze Python)

Obrázek 17: Příklad dešifrování řetězců

Volání API systému Windows

Tato ukázka používá k řešení většiny svých volání API systému Windows algoritmus hashování. Algoritmus hashování zajišťuje, že každý znak názvu API je velké písmeno. Poté každý znak otočí doprava (ROR) o 13 a sečte je dohromady.

Obrázek 18: Algoritmus hashování pro řešení volání rozhraní API systému Windows

Následující funkce je příkladem toho, jak lze k řešení volání rozhraní API použít jazyk Python.

Obrázek 19: Příklad skriptu Python použitého jako pomůcka při řešení zaheslovaných volání rozhraní Windows API

Následující tabulka obsahuje seznam některých vybraných použitých hashů a jim odpovídající název rozhraní Windows API:

CreateMutexW

0xed619452

OpenMutexW

0x7bffe25e

CreateProcessW

0xb4f0f46f

WinHttpOpen

0xaf7f658e

WinHttpCrackUrl

0x8ef04f02

WinHttpConnect

0x9f47a05e

WinHttpOpenRequest

0x1dd1d38d

Tabulka 1: Volání Windows API s vybranými hesly

Příkaz a řízení

Příkazové a řídicí funkce (C&C) jsou zpracovávány prostřednictvím požadavků HTTP(S) GET. Příklad příkazového majáku vypadá jako na obrázku 20:

Obrázek 20: Příklad příkazového majáku

Tyto požadavky směřují na „update API“ a obsahují šifrovaný parametr. Tento parametr lze dešifrovat pomocí:

  1. Dekódování Base64
  2. Dekódování Hex
  3. DekódováníRC4 (klíč použitý v analyzovaných vzorcích byl „CRYPTO_KEY“)

Příklad parametru s otevřeným textem:

88a5e68a2047fa5ebdc095a8500d8fae565a6b225ce94956e194b4a0e8a515ae|ab21d61b35a8d1dc4ffb3cc4b75094c31b8c00de3ffaaa17ce1ad15e876dbd1f|Windows 7|x64|4|Admin|RFEZOWGZPBYYOI

Obsahuje potrubí-oddělená data, která se skládají z:

  • Identifikace robota (SHA-256 šestnáctkový digest různých systémových parametrů, jako je GUID a název hardwarového profilu, název počítače, sériové číslo svazku, a CPUID)
  • Hash SHA-256 vlastního spustitelného obrazu
  • Verze systému Windows
  • Typ architektury
  • Počet procesorů
  • Uživatelská oprávnění
  • Název počítače

Příklad odpovědi na příkaz beacon je uveden na obrázku 21:

Obrázek 21: Příklad odpovědi příkazu beacon

Lze ji dešifrovat podobně jako výše uvedený parametr požadavku s tím rozdílem, že hexadecimální bajty jsou odděleny znaky pomlčky. Příklad prosté textové odpovědi je uveden na obrázku 22:

Obrázek 22: Prostá textová odpověď příkazového majáku

Dekódovaný text je objekt JSON obsahující různé možnosti způsobu stažení a provedení užitečného zatížení:

  • type – existují dva typy:
    • update – aktualizovat sebe sama
    • download_and_exec – stáhnout a vykonat
  • options – určuje možnosti stahování užitečného zatížení:
    • Hash – platí pouze pro typ „update“ pro určení, zda je k dispozici nová aktualizace
    • x64 – zda je payload 64bitový
    • FileType – nepoužívá se v analyzovaných vzorcích
    • AssemblyType – umožňuje stáhnout payload. nepoužívá se v analyzovaných vzorcích
    • AccessToken – používá se ke stažení payloadu (viz níže)
    • External – označuje, zda je payload stažen z C&C nebo externí URL
  • method – způsob provedení:
    • exelocal – vytvoření procesu
    • memload – vstříknutí a ruční načtení payloadu
    • memloadex – vstříknutí a ruční načtení payloadu
    • loaddllmem – vstříknutí a ruční načtení payloadu
  • parameters – parametry, které se mají předat na příkazovém řádku
  • pathToDrop -. v analyzovaných vzorcích se nepoužívá
  • autorun – určuje, zda má být pro payload nastavena perzistence Registry RunOnce
  • modules – viz část Modules níže
  • timeout – v analyzovaných vzorcích se nepoužívá

Stahování payloadů ze serveru C&C se provádí prostřednictvím požadavků na „download API“, jak je vidět na obrázku 23:

Obrázek 23: Stahování payloadu z C&C

Níže je uveden příklad parametru požadavku v prostém textu:

88a5e68a2047fa5ebdc095a8500d8fae565a6b225ce94956e194b4a0e8a515ae|58007044-67d4-4963-9f5f-400dfbc69e74

Obsahuje ID bota a „AccessToken“ z odpovědi příkazového majáku. Pokud je užitečné zatížení staženo z C&C, je zašifrováno pomocí RC4. V analyzovaných vzorcích byl klíč „CRYPTO_KEY“.

Modules

Odpověď příkazového majáku obsahuje seznam „modules“. Výzkumníci společnosti Proofpoint zatím nezaznamenali, že by se moduly Buer používaly ve volné přírodě, ale na základě kódu bude tento seznam obsahovat moduly AccessTokens. Název souboru modulu je dotazován odesláním AccessTokenu do „modulového API“ C&C. Modul pak bude stažen pomocí „downloadmodule API“. Po stažení a dešifrování je načten pomocí metody „loaddllmem“.

Závěr

Nový downloader Buer se v poslední době objevuje v různých kampaních, prostřednictvím malvertisingu vedoucího k exploit kitům; jako sekundární payload přes Ostap; a jako primární payload stahující malware, například bankovní trojan The Trick.

Nový zavaděč má robustní funkce geotargetingu, profilování systému a antianalýzy a v současné době se prodává na undergroundových fórech se službami nastavení s přidanou hodnotou. Rusky mluvící autor (autoři) aktivně vyvíjí downloader se sofistikovanými ovládacími panely a bohatou sadou funkcí, díky čemuž je tento malware konkurenceschopný na undergroundových trzích.

Stahovač je napsán v jazyce C, zatímco ovládací panel je napsán v jádře .NET, což naznačuje optimalizaci pro výkon a malou stopu stahování, stejně jako možnost snadné instalace ovládacího panelu na linuxové servery – vestavěná podpora kontejnerů Docker dále usnadní jeho šíření na pronajatých hostitelích používaných ke škodlivým účelům a potenciálně také na kompromitovaných hostitelích. Posledně jmenovaná schopnost je zahrnuta v jeho inzerovaných funkcích a poznámkách k vydání.

https://www.cert.pl/en/news/single/ostap-malware-analysis-backswap-dropper/

https://www.proofpoint.com/us/threat-insight/post/ostap-bender-400-ways-make-population-part-with-their-money

https://www.aldeid.com/wiki/X86-assembly/Instructions/sidt

https://www.aldeid.com/wiki/X86-assembly/Instructions/sldt

Indikátory kompromitace (IOC)

.

.

.

IOC

IOC. Type

Description

fa699eab565f613df563ce47de5b82bde16d69c5d0c05ec9fc7f8d86ad7682ce

sha256

http[://45.76.247[.177:8080/api/update/

URL

Buer C&C callback

6c694df8bde06ffebb8a259bebbae8d123effd58c9dd86564f7f70307443ccd0

sha256

197163b6eb2114f3b565391f43b44fb8d61531a23758e35b11ef0dc44d349e90

sha256

https[://173.212.204[.171/api/update/

URL

Buer C&C callback

9e8db7a722cc2fa13101a306343039e8783df66f4d1ba83ed6e1fe13eebaec73

sha256

(Fallout Drop)

http[://134.0.119[.53:8080/api/update/

URL

Buer C&C callback

ab21d61b35a8d1dc4ffb3cc4b75094c31b8c00de3ffaaa17ce1ad15e876dbd1f

sha256

(Ostap drop)

https[://garrisontx[.us/api/update/

URL

Buer C&C callback

https[://185.130.104[.187/nana/kum.php?pi=18b

URL

Ostap instance dropping Buer – 2019-10-21

753276c5887ba5cb818360e797b94d1306069c6871b61f60ecc0d31c78c6d31e

sha256

Buer 2019-11-28

ffload01[.top|185.125.58[.11

ffload01[.top|185.186.141[.129

doména|IP

Buer C&C 2019-11-28

Podpisy ET a ETPRO Suricata/Snort

2029077 || ET TROJAN Buer Loader Request Update

2029079 || ET TROJAN Buer Loader Response

2029078 || ET TROJAN Buer Loader Požadavek na stažení

2839684 || ET TROJAN Buer Loader Úspěšné stažení užitečného zatížení

2029080 || Pozorován certifikát SSL/TLS (Buer Loader)

Napsat komentář