Volebná účasť zlyhala: vystavme Agent Teslu čistej vode. Časť 1
Nedávno kontaktoval Group-IB európsky výrobca elektroinštalačných zariadení – jeho zamestnancovi prišiel poštou podozrivý list so škodlivou prílohou. Iľja Pomerantsev, špecialista na analýzu malvéru v CERT Group-IB, vykonal podrobnú analýzu tohto súboru, objavil tam spyware AgentTesla a povedal, čo možno od takéhoto malvéru očakávať a ako je nebezpečný.
Týmto príspevkom otvárame sériu článkov o tom, ako analyzovať takéto potenciálne nebezpečné súbory, a tých najzvedavejších čakáme 5. decembra na bezplatný interaktívny webinár na túto tému „Analýza škodlivého softvéru: Analýza skutočných prípadov“. Všetky detaily sú pod strihom.
Distribučný mechanizmus
Vieme, že malvér sa dostal do počítača obete prostredníctvom phishingových e-mailov. Príjemca listu bol pravdepodobne BCCed.
Analýza hlavičiek ukazuje, že odosielateľ listu bol sfalšovaný. V skutočnosti list odišiel s vps56[.]oneworldhosting[.]com.
Príloha e-mailu obsahuje archív WinRar qoute_jpeg56a.r15 so škodlivým spustiteľným súborom QOUTE_JPEG56A.exe vo vnútri.
Ekosystém škodlivého softvéru
Teraz sa pozrime, ako vyzerá ekosystém skúmaného malvéru. Nižšie uvedený diagram ukazuje jeho štruktúru a smery interakcie komponentov.
Teraz sa pozrime na jednotlivé komponenty škodlivého softvéru podrobnejšie.
Nakladač
Pôvodný súbor QOUTE_JPEG56A.exe je zostavený AutoIt v3 skript.
Na zahmlievanie pôvodného scenára, obfuskátor s podobným PELock AutoIT-Obfuscator vlastnosti.
Deobfuskácia prebieha v troch fázach:
Odstránenie zahmlenia Pre-Ak
Prvým krokom je obnovenie toku kontroly skriptu. Control Flow Flattening je jedným z najbežnejších spôsobov ochrany binárneho kódu aplikácie pred analýzou. Zmätené transformácie dramaticky zvyšujú zložitosť extrakcie a rozpoznávania algoritmov a dátových štruktúr.
Obnova riadkov
Na šifrovanie reťazcov sa používajú dve funkcie:
gdorizabegkvfca - Vykonáva dekódovanie podobné Base64
xgacyukcyzxz - jednoduchý bajtový XOR prvého reťazca s dĺžkou druhého
Odstránenie zahmlenia BinaryToString и Vykonať
Hlavná záťaž je uložená v rozdelenej forme v adresári fonty zdrojových sekcií súboru.
Na dešifrovanie extrahovaných údajov sa používa funkcia WinAPI CryptDecrypta kľúč relácie vygenerovaný na základe hodnoty sa použije ako kľúč fZgFiZlJDxvuWatFRgRXZqmNCIyQgMYc.
Dešifrovaný spustiteľný súbor sa odošle na vstup funkcie RunPE, ktorá vykonáva ProcessInject в RegAsm.exe pomocou vstavaného ShellCode (taktiež známy ako RunPE ShellCode). Autorstvo patrí užívateľovi španielskeho fóra nezistiteľné[.]net pod prezývkou Wardow.
Za zmienku tiež stojí, že v jednom z vlákien tohto fóra je obfuskátor pre Na streche s podobnými vlastnosťami identifikovanými počas analýzy vzorky.
sám ShellCode celkom jednoduché a priťahuje pozornosť len požičané od hackerskej skupiny AnunakCarbanak. Funkcia hashovania volania API.
Poznáme aj prípady použitia Francúzsky Shellcode rôzne verzie.
Okrem opísanej funkcionality sme identifikovali aj neaktívne funkcie:
Blokovanie manuálneho ukončenia procesu v správcovi úloh
Reštartovanie podriadeného procesu, keď sa skončí
Obísť UAC
Uloženie užitočného zaťaženia do súboru
Ukážka modálnych okien
Čaká sa na zmenu polohy kurzora myši
AntiVM a AntiSandbox
Sebazničenie
Čerpanie užitočného zaťaženia zo siete
Vieme, že takáto funkčnosť je pre chránič typická CypherIT, čo je zrejme daný bootloader.
Hlavný modul softvéru
Ďalej stručne popíšeme hlavný modul škodlivého softvéru a podrobnejšie ho zvážime v druhom článku. V tomto prípade ide o aplikáciu na . NET.
Počas analýzy sme zistili, že bol použitý obfuskátor ConfuserEX.
IELibrary.dll
Knižnica je uložená ako zdroj hlavného modulu a je známym doplnkom Agent Tesla, ktorá poskytuje funkcie na extrahovanie rôznych informácií z prehliadačov Internet Explorer a Edge.
Agent Tesla je modulárny špionážny softvér distribuovaný pomocou modelu malware-as-a-service pod zámienkou legitímneho keyloggeru. Agent Tesla je schopný extrahovať a prenášať používateľské poverenia z prehliadačov, e-mailových klientov a FTP klientov na server útočníkom, zaznamenávať údaje zo schránky a zachytávať obrazovku zariadenia. V čase analýzy bola oficiálna stránka vývojárov nedostupná.
Vstupným bodom je funkcia GetSavedPasswords triedy InternetExplorer.
Vo všeobecnosti je vykonávanie kódu lineárne a neobsahuje žiadnu ochranu proti analýze. Pozornosť si zaslúži len nerealizovaná funkcia GetSavedCookies. Funkčnosť pluginu mala byť podľa všetkého rozšírená, no nikdy sa tak nestalo.
Pripojenie zavádzača k systému
Poďme študovať, ako je bootloader pripojený k systému. Skúmaný exemplár sa neukotví, ale pri podobných udalostiach sa vyskytuje podľa nasledujúcej schémy:
V priečinku C:UsersPublic skript je vytvorený Visual Basic
Príklad skriptu:
Obsah zavádzacieho súboru je vyplnený nulovým znakom a uložený do priečinka %Temp%
Pre súbor skriptu sa v registri vytvorí kľúč automatického spustenia HKCUSoftwareMicrosoftWindowsCurrentVersionRun
Na základe výsledkov prvej časti analýzy sme teda dokázali určiť názvy rodín všetkých komponentov skúmaného malvéru, analyzovať vzor infekcie a tiež získať objekty na písanie podpisov. V rozbore tohto objektu budeme pokračovať v ďalšom článku, kde sa na hlavný modul pozrieme podrobnejšie Agent Tesla. Nenechajte si ujsť!
Mimochodom, 5. decembra pozývame všetkých čitateľov na bezplatný interaktívny webinár na tému „Analýza malvéru: analýza reálnych prípadov“, kde autor tohto článku, špecialista CERT-GIB, online ukáže prvú fázu analýza malvéru - poloautomatické rozbalenie vzoriek na príklade troch reálnych miniprípadov z praxe a vy sa môžete zúčastniť analýzy. Webinár je vhodný pre špecialistov, ktorí už majú skúsenosti s analýzou škodlivých súborov. Registrácia prebieha výlučne z firemného e-mailu: registrovať. Čakám na teba!