
Uus tüüpi lunavirus krüpteerib faile ja lisab neile laiendi ".SaveTheQueen", levies läbi süsteemi võrgu kausta SYSVOL Active Directory domeeni kontrolleritel.
Meie kliendid on hiljuti selle pahavaraga kokku puutunud. Toome allpool välja meie põhjaliku analüüsi, tulemused ja järeldused.
Avastamine
Üks meie klientidest kontakteerus meiega pärast seda, kui nad sattusid kokku uue krüptoraha lunavara tüüpi virustega, mis lisasid laiendi ".SaveTheQueen" uutele krüpteeritud failidele nende keskkonnas.
Meie uurimise käigus, täpsemalt nakkusallikate otsimise etapis, selgitasime välja, et nakatunud ohvreid jälgiti ja levitati SYSVOL võrgu kausta kliendi domeenikontrolleril.
SYSVOL on iga domeenikontrolleri oluline kaust, mida kasutatakse rühmapoliitika (GPO) objektide ning sisenemise ja väljamineku skriptide edastamiseks domeeni arvutitele. Selle kausta sisu replitseerub domeenikontrollerite vahel, et sünkroniseerida neid andmeid organisatsiooni saitidel. Kirjutamine SYSVOL-i nõuab kõrgeid domeeniprivilege, kuid pärast kompromiteerimist muutub see vara ründajatele võimsaks tööriistaks, mille abil nad saavad pahavara kiiresti ja efektiivselt domeenis levitada.
Varonise auditeerimise ahel aitas kiiresti tuvastada järgmise:
- Nakatunud kasutajakonto lõi faili nimega «hourly» SYSVOL-is
- Paljusid logifailide loodi SYSVOL-is — igaühe nimi vastas domeeni seadme nimele
- Paljusid erinevaid IP-aadresse pääses failile «hourly»
Jõudsime järeldusele, et logifailide kasutati nakkusprotsessi jälgimiseks uutest seadmetest, ja et «hourly» on ajastatud ülesanne, mis viis pahavara töökohale uutes seadmetes, kasutades PowerShelli skripte – proovide «v3» ja «v4».
Tõenäoliselt omas ründaja ja kasutas domeeni administraatori õigusi failide kirjutamiseks SYSVOL-i. Nakatunud seadmetes käivitas ründaja PowerShelli koodi, mis lõi ajastatud ülesande selleks, et avada, krüpteerida ja käivitada pahavara.
Pahavara dekrüpteerimine
Oleme proovinud mitu dekrüpteerimise meetodit edutult:

Olimeh oleksime peaaegu loobunud, kui otsustasime proovida GCHQ meistriteose "Magic"!
utiliidi «Magic» püüab arvata faili krüptimist, kasutades paroolide järjekorda erinevate krüptimiste tüüpide jaoks ja mõõtes entropiat.
Tõlkija märkus Vt. ja . Käesolev artikkel ja kommentaarid ei sisalda autori poolt meetodite detailide arutelu, mis on kasutatud nii kolmandate osapoolte kui ka patenteeritud tarkvaras.

«Magic» tuvastas, et kasutati GZip-pakendit, kus oli base64-kodeering, mille tõttu saime faili lahti pakkida ja leida süstimise koodi – "injektor".

Dropper: "Alal on epideemia! Hooajalised vaktsineerimised. Pahandused"
Dropper oli tavaline .NET fail ilma igasuguste kaitsemehhanismideta. Pärast lähtekoodi lugemist saime aru, et selle ainus eesmärk oli shell-koodi süstimine protsessi winlogon.exe.


Shell-kood või lihtsad keerukused
Kasutasime Hexacorni loomisinstrumenti – et "kompileerida" shell-kood täidetavaks failiks häälestamiseks ja analüüsiks. Siis avastasime, et see töötas nii 32- kui ka 64-bitistes masinates.

Isegi lihtsa shell-koodi kirjutamine natiivses tõlkes assembleriga võib olla keeruline, kuid täieliku shell-koodi kirjutamine, mis töötab mõlemat tüüpi süsteemides, nõuab eliitoskusi, seetõttu hakkasime hämmastuma ründaja keerukusest.
Kui me analüüsisime kompileeritud shell-koodi , märkisime, et see laadis dünaamilisi .NET teeke , nagu clr.dll ja mscoreei.dll. See tundus meile kummaline – tavaliselt püüavad kurjategijad tekitada shell-koodi nii väikseks kui võimalik, kutsudes OSi natiivseid funktsioone otse. Miks peaks keegi integreerima shell-koodi Windowsi funktsioone, selle asemel, et otse kutsuda?
Kuidas selgus, ei kirjutanud pahavara autor ise seda keerulist shell-koodi – selleks kasutati ülesandele iseloomulikku tarkvara, et tõlkida teostatavad failid ja skriptid shell-koodiks.
Leidsime tööriista , mis, nagu me arvasime, võiks kompileerida sarnast shell-koodi. Siin on selle kirjeldus GitHubist:
Donut genereerib x86 või x64 shell-koodi VBScriptist, JScriptist, EXE-st, DLL-ist (sealhulgas .NET kogumitest). See shell-kood võib olla integreeritud igasse Windowsi protsessi täitmiseks.
operatiivmälu.
Teooria kinnitamiseks koostasime oma koodi Donut'iga ning võrrelda seda näidisega – ja… jah, avastasime veel ühe kasutatud tööriista komponendi. Pärast seda suutsime ekstrakti ja analüüsida originaal .NET esitatavat faili.
Koodi kaitse
See fail on obfuskeeritud kasutades :


ConfuserEx on avatud lähtekoodiga .NET projekt, mis on mõeldud teiste arendajate koodi kaitsmiseks. Sellise klassi tarkvara võimaldab arendajatel kaitsta oma koodi pöördprojekteerimise eest, kasutades selliseid meetodeid nagu: sümbolite asendamine, juhtimisvoogude peitmine ja viitamise meetodi varjamine. Küberkurjategijad kasutavad obfuskaatoreid, et vältida avastamist ja teha ülesanne pöördprojekteerimise osas raskemaks.
Tänu me ekstraktisime koodi:

Kokkuvõte – kasulik koormus
Tulemuseks saadud kasulik koormus on väga lihtne lunavara. Ei mingit süsteemisoleku mehhanismi, ei ole ühendusi käsureaga – ainult vana hea asümmeetriline krüpteerimine, et muuta ohvri andmed loetamatuks.
Peamine funktsioon valib parameetritena järgmised read:
- Faili laiend, mida kasutada pärast krüpteerimist (SaveTheQueen)
- Autori e-post, et lisada see väljaantud lunavara nõudmise faili
- Avalik võti, mida kasutatakse failide krüpteerimiseks

Protsess näeb välja järgmine:
- Lunavara uurib ohvri seadmes kohalikku ja ühendatud ketast

- Otsib faile krüpteerimiseks

- Püüab lõpetada protsessi, mis kasutab faili, mille ta kavatseb krüpteerida
- Muudab faili nimeks "Algne_faili_nimi.SaveTheQueenING", kasutades funktsiooni MoveFile, ja krüpteerib selle
- Pärast faili krüpteerimist autori avaliku võtmega nimetab lunavara selle uuesti "Algne_faili_nimi.SaveTheQueen"
- Käivitab lunavara nõudmise faili kirjutamise samasse kausta

Põhinedes natiivse funktsiooni «CreateDecryptor» kasutusele, tundub, et üks lunavara funktsioonidest sisaldab parameetrina dekrüpteerimise mehhanismi, mis nõuab suletud võtmeid.
Krüpteeriv viirus EI krüpteeri faile, mis asuvad järgmistes kaustades:
C:windows
C:Program Files
C:Program Files (x86)
C:Users\AppData
C:inetpub
Samuti EI krüpteeri järgmisi failitüüpe:EXE, DLL, MSI, ISO, SYS, CAB.
Kokkuvõtted ja järeldused
Kuigi lunavarius ennast erakordsete funktsioonidega ei kiitle, kasutas ründaja loominguliselt Active Directory't droppide levitamiseks, samas kui kahjulik tarkvara esitas meile huvitavaid, kui mitte eriti keerulisi, takistusi analüüsi käigus.
Arvame, et kahvatusa tegija:
- Kirjutas lunavariuse, mis sisaldas integreeritud protsessi winlogon.exe, samuti
failide krüptimise ja dekrüptimise funktsionaalsust - Maskeeris kahjulikku koodi ConfuserEx abil, muutes tulemuse Donut'iga ja lisaks peites droppi base64 Gzip'i
- Hankis tõstetud õigused ohvri domeenis ja kasutas neid
krüptitud kahjuliku tarkvara ja ajastatud ülesannete kopeerimiseks domeeni kontrollerite võrgukausta SYSVOL - Käitas PowerShelli skripti domeeni seadmetes, et levitada kahjulikku tarkvara ja salvestada ründe edenemist logidesse SYSVOL

Kui teil on küsimusi selle lunavariuse variandi või meie meeskondade läbi viidud foorumide ja IT-juhtumite uurimise kohta, või küsige , kus me vastame alati küsimustele Q&A sessiooni raames.
Allikas: habr.com



