Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia

Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia

Artikulu honekin software gaiztoaren azterketari eskainitako argitalpen sorta osatzen dugu. IN Lehenengo zatia Europako enpresa batek postaz jaso zuen kutsatutako fitxategi baten analisi zehatza egin genuen eta AgentTesla espioi softwarea aurkitu genuen bertan. In bigarren zatia AgentTesla modulu nagusiaren urratsez urratseko analisiaren emaitzak deskribatu zituen.

Gaur Ilya Pomerantsev, CERT Group-IBko malwarearen analisian espezialistak, malwarearen analisiaren lehen faseari buruz hitz egingo du: AgentTesla laginak erdi-automatikoa desegitea CERT Group-IB espezialisten praktikaren hiru kasu txikien adibidea erabiliz.

Normalean, malwarearen analisiaren lehen etapa babesa kentzea da, ontziratzaile, kriptatzaile, babesle edo kargatzaile moduan. Kasu gehienetan, arazo hau malwarea exekutatu eta iraulketa bat eginez konpon daiteke, baina metodo hau egokia ez den egoerak daude. Adibidez, malwarea enkriptatzaile bat bada, bere memoria-eskualdeak iraultzetik babesten baditu, kodeak makina birtualak detektatzeko mekanismoak baditu edo malwarea hasi eta berehala berrabiarazten badu. Horrelakoetan, deseketatze β€œerdiautomatikoa” deritzona erabiltzen da, hau da, ikertzaileak prozesuaren kontrol osoa du eta edozein unetan esku hartu dezake. Har dezagun prozedura hau AgentTesla familiaren hiru lagin erabiliz adibide gisa. Hau malware nahiko kaltegabea da sarerako sarbidea desgaitzen baduzu.

1. lagina

Iturburu-fitxategia CVE-2017-11882 ahultasuna baliatzen duen MS Word dokumentu bat da.

Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia
Ondorioz, karga deskargatu eta abiarazten da.

Prozesuaren zuhaitzaren eta portaera-markatzaileen analisiak prozesuan injekzioa erakusten du RegAsm.exe.

Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia
Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia
AgentTesla-ren portaera-markatzaileak daude.

Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia
Deskargatutako lagina exekutagarria da . NET-fitxategia babesle batek babestuta .NET Erreaktorea.

Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia
Ireki dezagun utilitatean dnSpy x86 eta joan sarrera puntura.

Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia
Funtziora joanez DateTimeOffset, berriaren hasierako kodea aurkituko dugu . NET-modulua. Jar dezagun eten puntua interesatzen zaigun lerroan eta exekutatu fitxategia.

Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia
Itzulitako bufferetako batean MZ sinadura ikus dezakezu (0x4D 0x5A). Gorde dezagun.

Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia
Botatutako fitxategi exekutagarria kargatzailea den liburutegi dinamikoa da, hau da. karga erabilgarria baliabideen ataletik ateratzen du eta abiarazten du.

Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia
Aldi berean, beharrezko baliabideak beraiek ez daude zabortegian. Gurasoen laginean daude.

Erabilgarritasuna dnSpy erlazionatutako bi fitxategietatik "Frankenstein" bat sortzen lagunduko diguten bi funtzionalitate oso erabilgarriak ditu.

  1. Lehenengoak liburutegi dinamiko bat "itsatsi" dezakezu gurasoen laginean.

    Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia

  2. Bigarrena, sarrera puntuan funtzio kodea berridaztea da, txertatutako liburutegi dinamikoaren nahi den metodoari deitzeko.

    Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia

Gure β€œFrankenstein” multzoa gordetzen dugu eten puntua Deszifratutako baliabideekin buffer bat itzuliz lerroan, eta iraulketa bat ekoitzi aurreko fasearen analogiaz.

Bigarren zabortegia idatzita dago VB.NET ezagutzen dugun babesle batek babesten duen fitxategi exekutagarria NahasleaEx.

Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia
Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia
Babeslea kendu ondoren, lehenago idatzitako YARA arauak erabiltzen ditugu eta deskonprimitutako malwarea AgentTesla dela ziurtatzen dugu.

Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia

2. lagina

Iturburu fitxategia MS Excel dokumentu bat da. Makro integratuak kode maltzurren exekuzioa eragiten du.

Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia
Ondorioz, PowerShell script-a abiarazten da.

Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia
Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia
Scriptak C# kodea deszifratzen du eta hari kontrola transferitzen dio. Kodea bera abio-kargatzailea da, sandbox txostenean ere ikus daitekeen bezala.

Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia
Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia
Karga exekutagarria da . NET-fitxategia.

Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia
Fitxategia irekitzea dnSpy x86, lausotuta dagoela ikus dezakezu. Erabilgarritasuna erabiliz lausotzea kentzea de4dot eta analisira itzuli.

Kodea aztertzean, funtzio hau aurki dezakezu:

Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia
Kodetutako lerroak deigarriak dira SarreraPuntua ΠΈ deitu. jarri dugu eten puntua lehen lerrora, exekutatu eta gorde buffer-aren balioa byte_0.

Zabortegia berriro aplikazio bat da . NET eta babestuta NahasleaEx.

Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia
Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia
Erabiliz lausotzea kentzen dugu de4dot eta kargatu dnSpy. Fitxategiaren deskribapenetik ulertzen dugu aurrean gaudela CyaX-Sharp kargagailua.

Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia
Kargagailu honek analisiaren aurkako funtzionalitate zabala du.

Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia
Funtzionalitate honek barne hartzen ditu Windows babesteko sistemak saihestea, Windows Defender desgaitzea, baita sandbox eta makina birtualak detektatzeko mekanismoak ere. Posible da karga saretik kargatzea edo baliabideen atalean gordetzea. Abiarazi injekzio bidez egiten da bere prozesu propioan, prozesu propio baten bikoiztu batean edo prozesuetan MSBuild.exe, vbc.exe ΠΈ RegSvcs.exe erasotzaileak aukeratutako parametroaren arabera.

Hala ere, guretzat baino ez dira hain esanguratsuak Zabortegiaren aurkakoa- gehitzen duen funtzioa NahasleaEx. Bere iturburu kodea helbidean aurki daiteke GitHub.

Babesa desgaitzeko, aukera erabiliko dugu dnSpy, editatzeko aukera ematen duena IL-kodea.

Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia
Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia
Gorde eta instalatu eten puntua karga deszifratzeko funtzioa deitzeko lerrora. Klase nagusiaren eraikitzailean dago.

Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia
Karga erabilgarria abiarazi eta botatzen dugu. Aurretik idatzitako YARA arauak erabiliz, hau AgentTesla dela ziurtatzen dugu.

Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia

3. lagina

Iturburu-fitxategia exekutagarria da VB jatorrizko PE32-fitxategia.

Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia
Entropia-analisiak datu enkriptatutako zati handi baten presentzia erakusten du.

Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia
Eskaera inprimakia aztertzean VB deskonpilatzailea atzealde pixelatu arraro bat nabarituko duzu.

Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia
Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia
Entropia grafikoa bmp-image jatorrizko fitxategiaren entropia grafikoaren berdina da, eta tamaina fitxategiaren tamainaren % 85 da.

Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia
Irudiaren itxura orokorrak esteganografiaren erabilera adierazten du.

Errepara diezaiogun prozesuaren zuhaitzaren itxurari, baita injekzio-markatzaile baten presentziari ere.

Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia
Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia
Horrek adierazten du desegitea abian dela. Visual Basic kargagailuetarako (aka VBKrypt edo VBInjector) erabilera tipikoa shellcode karga erabilgarria hasieratzeko, baita injekzioa bera egiteko ere.

Analisia in VB deskonpilatzailea ekitaldi baten presentzia erakutsi zuen Karga formularioan FegatassocAirballoon2.

Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia
Goazen IDA pro zehaztutako helbidera eta funtzioa aztertu. Kodea oso lausotuta dago. Interesatzen zaigun zatia jarraian aurkezten dugu.

Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia
Hemen prozesuaren helbide-espazioa sinadura baten bila da. Ikuspegi hau oso zalantzazkoa da.

Lehenik eta behin, eskaneatzeko hasierako helbidea 0x400100. Balio hau estatikoa da eta ez da doitzen oinarria aldatzean. Berotegiko baldintza ezin hobeetan amaiera adieraziko du PE-fitxategi exekutagarriaren goiburua. Hala ere, datu-basea ez da estatikoa, bere balioa alda daiteke eta beharrezkoa den sinaduraren benetako helbidea bilatzea, gainezka aldagairik eragingo ez duen arren, oso denbora luzea izan daiteke.

Bigarrenik, sinaduraren esanahia iWGK. Uste dut bistakoa dela 4 byte txikiegia dela berezitasuna bermatzeko. Eta lehen puntua kontuan hartzen baduzu, akats bat egiteko probabilitatea nahiko handia da.

Izan ere, beharrezkoa den zatia aurrez aurkitutakoaren amaierari erantsita dago bmp-irudiak offset bidez 0xA1D0D.

Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia
Emanaldia Shellcode bi fasetan burutua. Lehenengoak gorputz nagusia deszifratzen du. Kasu honetan, gakoa indar gordinaren bidez zehazten da.

Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia
Deszifratutakoa bota Shellcode eta begiratu lerroei.

Lehenik eta behin, haur prozesu bat sortzeko funtzioa ezagutzen dugu: SortuProzesuaBarneW.

Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia
Bigarrenik, sisteman finkatzeko mekanismoaz jabetu ginen.

Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia
Itzuli gaitezen jatorrizko prozesura. Jar dezagun eten puntua on SortuProzesuaBarneW eta exekuzioan jarraitu. Jarraian konexioa ikusiko dugu NtGetContextThread/NtSetContextThread, exekuzioaren hasierako helbidea helbidera aldatzen duena ShellCode.

Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia
Sortutako prozesura arazte batekin konektatzen gara eta gertaera aktibatzen dugu Eseki liburutegian kargatu/deskargatu, jarraitu prozesua eta itxaron kargatu arte . NET-liburutegiak.

Gehiago erabiliz ProcessHacker ontziratu gabe dauden eskualdeak . NET-aplikazio.

Prozesu guztiak gelditzen ditugu eta sisteman txertatu den malwarearen kopia ezabatzen dugu.

Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia
Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia
Botatutako fitxategia babesle batek babesten du .NET Erreaktorea, erabilgarritasun bat erabiliz erraz kendu daitekeena de4dot.

Parte hartzea huts egin du: jar dezagun AgentTesla ur garbira. 3. zatia
Lehen idatzitako YARA arauak erabiliz, hau AgentTesla dela ziurtatzen dugu.

Laburbilduz

Beraz, zehatz-mehatz frogatu genuen lagin erdi-automatikoen desegitearen prozesua adibide gisa hiru mini-kasu erabiliz, eta kasu oso batean oinarritutako malwarea ere aztertu genuen, aztergai dugun lagina AgentTesla dela jakinez, bere funtzionaltasuna eta funtzionaltasuna ezarriz. konpromisoaren adierazleen zerrenda osoa.

Egin dugun objektu gaiztoaren azterketak denbora eta esfortzu handia eskatzen du, eta lan hori enpresako langile berezi batek egin behar du, baina enpresa guztiak ez daude analista bat enplegatzeko prest.

Group-IB Laboratory of Computer Forensics and Malcious Code Analysis eskaintzen dituen zerbitzuetako bat ziber-intzidenteei erantzutea da. Eta bezeroek denbora galdu ez dezaten dokumentuak onartu eta eztabaidatzen ziber-eraso baten erdian, Group-IB-k abiarazi du. Gorabeheren Erantzunaren atxikipena, harpidetza aurreko gertakariei erantzuteko zerbitzua, malwarearen azterketa-urrats bat ere barne hartzen duena. Honi buruzko informazio gehiago aurki daiteke Hemen.

AgentTesla laginak nola deskonprimitzen diren aztertu eta CERT Group-IB espezialista batek nola egiten duen ikusi nahi baduzu, gai honi buruzko webinar-eko grabazioa deskarga dezakezu. Hemen.

Iturria: www.habr.com

Gehitu iruzkin berria