Osalemine ebaõnnestus: laseme AgentTesla puhta veega kokku puutuda. 1. osa
Hiljuti võttis Group IB-ga ühendust Euroopa elektripaigaldusseadmete tootja – selle töötaja sai posti teel kahtlase kirja pahatahtliku manusega. Ilja Pomerantsev, CERT Group-IB pahavaraanalüüsi spetsialist, viis läbi selle faili üksikasjaliku analüüsi, avastas seal AgentTesla nuhkvara ja rääkis, mida selliselt pahavaralt oodata ja kui ohtlik see on.
Selle postitusega avame artiklite sarja, kuidas selliseid potentsiaalselt ohtlikke faile analüüsida ning ootame uudishimulikumaid 5. detsembril teemalisele tasuta interaktiivsele veebiseminarile. "Pahavara analüüs: tegelike juhtumite analüüs". Kõik detailid on lõike all.
Jaotusmehhanism
Teame, et pahavara jõudis ohvri masinasse andmepüügimeilide kaudu. Kirja saaja oli tõenäoliselt BCC-ga.
Päiste analüüs näitab, et kirja saatja oli võltsitud. Tegelikult kiri lahkus vps56[.]oneworldhosting[.]com.
Nüüd vaatame, milline näeb välja uuritava pahavara ökosüsteem. Alloleval diagrammil on näidatud selle struktuur ja komponentide koostoime suunad.
Nüüd vaatame iga pahavara komponenti üksikasjalikumalt.
Laadija
Algne fail QOUTE_JPEG56A.exe on koostatud AutoIt v3 stsenaarium.
Algse skripti häguseks muutmiseks sarnasega hägustaja PELock AutoIT-obfuskaator omadused.
Deobfuskatsioon viiakse läbi kolmes etapis:
Hägustuse eemaldamine For-If
Esimene samm on skripti juhtimisvoo taastamine. Control Flow Flattening on üks levinumaid viise rakenduse binaarkoodi kaitsmiseks analüüsi eest. Segadust tekitavad teisendused muudavad algoritmide ja andmestruktuuride ekstraheerimise ja tuvastamise järsult keerukamaks.
Rea taastamine
Stringide krüptimiseks kasutatakse kahte funktsiooni:
Ekstraheeritud andmete dekrüpteerimiseks kasutatakse funktsiooni WinAPI CryptDecrypt, ja võtmena kasutatakse väärtuse põhjal loodud seansivõtit fZgFiZlJDxvuWatFRgRXZqmNCIyQgMYc.
Dekrüpteeritud käivitatav fail saadetakse funktsiooni sisendisse RunPE, mis teostab ProcessInject в RegAsm.exe kasutades sisseehitatud ShellCode (tuntud ka kui RunPE ShellCode). Autorsus kuulub Hispaania foorumi kasutajale tuvastatavad[.]võrk hüüdnime Wardow all.
Samuti väärib märkimist, et ühes selle foorumi lõimes on hägustaja jaoks Katuse juures proovi analüüsi käigus tuvastatud sarnaste omadustega.
Ise ShellCode üsna lihtne ja äratab tähelepanu vaid häkkerirühmitusest AnunakCarbanak laenatud. API-kõnede räsifunktsioon.
Oleme teadlikud ka kasutusjuhtudest Prantsuse Shellcode erinevad versioonid.
Lisaks kirjeldatud funktsioonidele tuvastasime ka mitteaktiivsed funktsioonid:
Protsessi käsitsi lõpetamise blokeerimine tegumihalduris
Alamprotsessi taaskäivitamine, kui see lõpeb
UAC ümbersõit
Kasuliku koormuse salvestamine faili
Modaakende demonstreerimine
Ootab hiirekursori asukoha muutumist
AntiVM ja AntiSandbox
Enesehävitamine
Kasuliku koormuse pumpamine võrgust
Teame, et selline funktsionaalsus on kaitsjale omane CypherIT, mis ilmselt on kõnealune alglaadur.
Tarkvara põhimoodul
Järgmisena kirjeldame lühidalt pahavara põhimoodulit ja käsitleme seda teises artiklis üksikasjalikumalt. Sel juhul on see rakendus . NET.
Analüüsi käigus avastasime, et kasutati obfuskaatorit ConfuserEX.
IELibrary.dll
Teek on salvestatud peamise mooduli ressursina ja on selle jaoks tuntud pistikprogramm AgentTesla, mis pakub funktsioone Internet Exploreri ja Edge'i brauseritest erineva teabe hankimiseks.
Agent Tesla on modulaarne nuhkimistarkvara, mida levitatakse seadusliku klahvilogija toote varjus pahavara kui teenuse mudelit kasutades. Agent Tesla on võimeline hankima ja edastama kasutaja mandaate brauserite, meiliklientide ja FTP-klientide kaudu ründajatele serverisse, salvestama lõikelaua andmeid ja jäädvustama seadme ekraani. Analüüsi ajal ei olnud arendajate ametlik veebisait saadaval.
Sisendpunkt on funktsioon GetSavedPasswords klassi InternetExplorer.
Üldiselt on koodi täitmine lineaarne ega sisalda analüüsi eest kaitset. Tähelepanu väärib ainult realiseerimata funktsioon GetSavedCookies. Ilmselt pidi pistikprogrammi funktsionaalsust laiendama, kuid seda ei tehtud kunagi.
Alglaaduri ühendamine süsteemiga
Uurime, kuidas alglaadur on süsteemi külge kinnitatud. Uuritav proov ei ankurdu, kuid sarnaste sündmuste korral toimub see vastavalt järgmisele skeemile:
Kaustas C:UsersPublic skript luuakse Visual Basic
Skripti näide:
Laadimisfaili sisu on polsterdatud nullmärgiga ja salvestatud kausta %Temp%
Skriptifaili jaoks luuakse registris automaatkäivitusvõti HKCUSoftwareMicrosoftWindowsCurrentVersionRun
Seega saime analüüsi esimese osa tulemuste põhjal kindlaks teha kõigi uuritava pahavara komponentide perekondade nimed, analüüsida nakatumismustrit ning hankida ka objekte allkirjade kirjutamiseks. Selle objekti analüüsi jätkame järgmises artiklis, kus vaatleme põhimoodulit üksikasjalikumalt AgentTesla. Ära igatse!
Muide, 5. detsembril kutsume kõiki lugejaid tasuta interaktiivsele veebiseminarile teemal “Pahavara analüüs: reaalsete juhtumite analüüs”, kus käesoleva artikli autor, CERT-GIB spetsialist, näitab veebis esimese etapi pahavara analüüs - proovide poolautomaatne lahtipakkimine kolme tõelise minijuhtumi näitel praktikast ja saate analüüsist osa võtta. Veebiseminar sobib spetsialistidele, kellel on juba kogemusi pahatahtlike failide analüüsimisel. Registreerimine toimub rangelt ettevõtte e-posti teel: registreerima. Ootan sind!