Upoznajte Nemty ransomware sa lažne PayPal stranice
Na mreži se pojavio novi ransomware pod nazivom Nemty, koji je navodno nasljednik GrandCrab-a ili Burana. Zlonamjerni softver se uglavnom distribuira sa lažne web stranice PayPal i ima niz zanimljivih karakteristika. Detalji o tome kako ovaj ransomware funkcionira su pod rubrikom.
Korisnik je otkrio novi Nemty ransomware nao_sec 7. septembra 2019. Zlonamjerni softver je distribuiran putem web stranice prerušen u PayPal, takođe je moguće da ransomware prodre u računar kroz RIG exploit kit. Napadači su koristili metode društvenog inženjeringa kako bi natjerali korisnika da pokrene fajl cashback.exe, koji je navodno dobio sa PayPal web stranice. Zanimljivo je i da je Nemty naveo pogrešan port za lokalni proxy servis Tor, koji sprječava slanje malvera. podataka na server. Stoga će korisnik morati sam učitati šifrirane datoteke na Tor mrežu ako namjerava platiti otkupninu i čekati dešifriranje od napadača.
Nekoliko zanimljivih činjenica o Nemtyju sugerira da su ga razvili isti ljudi ili sajber kriminalci povezani s Buranom i GrandCrabom.
Kao i GandCrab, Nemty ima uskršnje jaje - vezu do fotografije ruskog predsjednika Vladimira Putina sa opscenom šalom. Naslijeđeni GandCrab ransomware imao je sliku s istim tekstom.
Jezički artefakti oba programa ukazuju na iste autore koji govore ruski.
Ovo je prvi ransomware koji koristi 8092-bitni RSA ključ. Iako u tome nema smisla: 1024-bitni ključ je sasvim dovoljan za zaštitu od hakovanja.
Kao i Buran, ransomware je napisan u Object Pascal-u i kompajliran u Borland Delphi.
Statička analiza
Izvršavanje zlonamjernog koda odvija se u četiri faze. Prvi korak je pokretanje cashback.exe, PE32 izvršne datoteke pod MS Windowsom veličine 1198936 bajtova. Njegov kod je napisan u Visual C++ i kompajliran 14. oktobra 2013. Sadrži arhivu koja se automatski raspakuje kada pokrenete cashback.exe. Softver koristi biblioteku Cabinet.dll i njene funkcije FDICreate(), FDIDestroy() i druge da bi dobio datoteke iz .cab arhive.
Nakon raspakivanja arhive, pojavit će se tri datoteke.
Zatim se pokreće temp.exe, PE32 izvršna datoteka pod MS Windows-om veličine 307200 bajtova. Kod je napisan u Visual C++ i upakovan u MPRESS packer, paker sličan UPX-u.
Sljedeći korak je ironman.exe. Jednom kada se pokrene, temp.exe dešifruje ugrađene podatke u temp i preimenuje ih u ironman.exe, izvršnu datoteku PE32 od 544768 bajta. Kod je sastavljen u Borland Delphi.
Posljednji korak je ponovno pokretanje datoteke ironman.exe. U vrijeme izvođenja, transformira svoj kod i pokreće se iz memorije. Ova verzija ironman.exe je zlonamjerna i odgovorna je za šifriranje.
Vektor napada
Trenutno se Nemty ransomware distribuira putem web stranice pp-back.info.
Kompletan lanac infekcije možete pogledati na app.any.run peskovnik.
postavljanje
Cashback.exe - početak napada. Kao što je već pomenuto, cashback.exe raspakuje .cab fajl koji sadrži. Zatim kreira fasciklu TMP4351$.TMP u obliku %TEMP%IXxxx.TMP, gde je xxx broj od 001 do 999.
Zatim se instalira ključ registratora koji izgleda ovako:
Koristi se za brisanje raspakovanih datoteka. Konačno, cashback.exe pokreće proces temp.exe.
Temp.exe je druga faza u lancu infekcije
Ovo je proces koji pokreće datoteka cashback.exe, drugi korak u izvršavanju virusa. Pokušava da preuzme AutoHotKey, alat za pokretanje skripti na Windows-u, i pokrene skriptu WindowSpy.ahk koja se nalazi u odeljku resursa PE datoteke.
WindowSpy.ahk skripta dešifruje privremenu datoteku u ironman.exe koristeći RC4 algoritam i lozinku IwantAcake. Ključ od lozinke se dobija pomoću algoritma MD5 heširanja.
temp.exe zatim poziva proces ironman.exe.
Ironman.exe - treći korak
Ironman.exe čita sadržaj datoteke iron.bmp i kreira datoteku iron.txt sa cryptolocker-om koji će se sljedeće pokrenuti.
Nakon toga, virus učitava iron.txt u memoriju i ponovo ga pokreće kao ironman.exe. Nakon toga, iron.txt se briše.
ironman.exe je glavni dio NEMTY ransomwarea, koji šifrira datoteke na pogođenom računaru. Zlonamjerni softver stvara mutex koji se zove mržnja.
Prvo što radi je da odredi geografsku lokaciju računara. Nemty otvara pretraživač i saznaje IP na http://api.ipify.org. Na sajtu api.db-ip.com/v2/free[IP]/countryName Država se utvrđuje na osnovu primljene IP adrese, a ako se računar nalazi u jednom od dole navedenih regiona, izvršenje zlonamernog koda se zaustavlja:
Rusija
Belorusija
Ukrajina
Казахстан
Таджикистан
Najvjerovatnije, programeri ne žele privući pažnju agencija za provođenje zakona u svojim zemljama prebivališta, pa stoga ne šifriraju datoteke u svojim "domaćim" jurisdikcijama.
Ako IP adresa žrtve ne pripada gornjoj listi, virus šifrira informacije korisnika.
Da bi se spriječio oporavak datoteke, njihove kopije u sjeni se brišu:
Zatim kreira listu datoteka i fascikli koje neće biti šifrovane, kao i listu ekstenzija datoteka.
prozori
$RECYCLE.BIN
rsa
NTDETECT.COM
itd
MSDOS.SYS
IO.SYS
boot.ini AUTOEXEC.BAT ntuser.dat
desktop.ini
SYS CONFIG.
BOOTSECT.BAK
bootmgr
programski podaci
podaci aplikacije
osoft
Common Files
log LOG CAB cab CMD cmd COM com cpl
CPL exe EXE ini INI dll DDL lnk LNK url
URL ttf TTF DECRYPT.txt NEMTY
Obfuscation
Da bi sakrio URL-ove i ugrađene konfiguracijske podatke, Nemty koristi base64 i RC4 algoritam kodiranja sa ključnom riječi fuckav.
Proces dešifriranja pomoću CryptStringToBinary je sljedeći
Encryption
Nemty koristi troslojnu enkripciju:
AES-128-CBC za fajlove. 128-bitni AES ključ se generira nasumično i koristi se isto za sve datoteke. Pohranjuje se u konfiguracionoj datoteci na računaru korisnika. IV se nasumično generira za svaku datoteku i pohranjuje u šifriranu datoteku.
RSA-2048 za šifrovanje fajlova IV. Generiše se par ključeva za sesiju. Privatni ključ za sesiju je pohranjen u konfiguracionoj datoteci na računaru korisnika.
RSA-8192. Glavni javni ključ je ugrađen u program i koristi se za šifriranje konfiguracijske datoteke, koja pohranjuje AES ključ i tajni ključ za RSA-2048 sesiju.
Nemty prvo generiše 32 bajta nasumičnih podataka. Prvih 16 bajtova se koristi kao AES-128-CBC ključ.
Drugi algoritam šifriranja je RSA-2048. Par ključeva generira funkcija CryptGenKey() i uvozi funkcija CryptImportKey().
Kada je par ključeva za sesiju generisan, javni ključ se uvozi u MS Cryptographic Service Provider.
Primjer generiranog javnog ključa za sesiju:
Zatim se privatni ključ uvozi u CSP.
Primjer generiranog privatnog ključa za sesiju:
I posljednji dolazi RSA-8192. Glavni javni ključ je pohranjen u šifriranom obliku (Base64 + RC4) u .data dijelu PE datoteke.
RSA-8192 ključ nakon base64 dekodiranja i RC4 dešifriranja sa fuckav lozinkom izgleda ovako.
Kao rezultat, cijeli proces enkripcije izgleda ovako:
Generirajte 128-bitni AES ključ koji će se koristiti za šifriranje svih datoteka.
Kreirajte IV za svaki fajl.
Kreiranje para ključeva za RSA-2048 sesiju.
Dešifriranje postojećeg RSA-8192 ključa koristeći base64 i RC4.
Šifrirajte sadržaj datoteke koristeći AES-128-CBC algoritam od prvog koraka.
IV enkripcija koristeći RSA-2048 javni ključ i base64 kodiranje.
Dodavanje šifrovanog IV na kraj svake šifrovane datoteke.
Dodavanje AES ključa i RSA-2048 privatnog ključa sesije u konfiguraciju.
Podaci o konfiguraciji opisani u odjeljku Prikupljanje informacija o zaraženom računaru su šifrovani pomoću glavnog javnog ključa RSA-8192.
Šifrirani fajl izgleda ovako:
Primjer šifriranih datoteka:
Prikupljanje informacija o zaraženom računaru
Ransomware prikuplja ključeve za dešifriranje zaraženih datoteka, tako da napadač zapravo može kreirati dešifriranje. Pored toga, Nemty prikuplja korisničke podatke kao što su korisničko ime, naziv računara, profil hardvera.
Poziva funkcije GetLogicalDrives(), GetFreeSpace(), GetDriveType() za prikupljanje informacija o drajvovima zaraženog računara.
Prikupljene informacije se pohranjuju u konfiguracijski fajl. Nakon što smo dekodirali niz, dobijamo listu parametara u konfiguracionoj datoteci:
Primjer konfiguracije zaraženog računara:
Šablon konfiguracije može se predstaviti na sljedeći način:
Nemty pohranjuje prikupljene podatke u JSON formatu u datoteci %USER%/_NEMTY_.nemty. FileID ima 7 znakova i nasumično se generira. Na primjer: _NEMTY_tgdLYrd_.nemty. FileID se takođe dodaje na kraj šifrovane datoteke.
Poruka otkupnine
Nakon šifriranja datoteka, datoteka _NEMTY_[FileID]-DECRYPT.txt se pojavljuje na radnoj površini sa sljedećim sadržajem:
Na kraju fajla nalaze se šifrovane informacije o zaraženom računaru.
Nemty zatim pokušava poslati konfiguracijske podatke na 127.0.0.1:9050, gdje očekuje da će pronaći proxy Tor pretraživača koji radi. Međutim, prema zadanim postavkama, Tor proxy sluša port 9150, a port 9050 koristi Tor demon na Linuxu ili Expert Bundle-u na Windows-u. Dakle, nikakvi podaci se ne šalju na server napadača. Umjesto toga, korisnik može ručno preuzeti konfiguracijsku datoteku posjetom Tor servisu za dešifriranje putem veze u poruci o otkupnini.
Povezivanje na Tor proxy:
HTTP GET kreira zahtjev za 127.0.0.1:9050/public/gate?data=
Ovdje možete vidjeti otvorene TCP portove koje koristi TORlocal proxy:
Usluga Nemty dešifriranja na Tor mreži:
Možete da otpremite šifrovanu fotografiju (jpg, png, bmp) da biste testirali uslugu dešifrovanja.
Nakon toga, napadač traži da plati otkupninu. U slučaju neplaćanja cijena se udvostručuje.
zaključak
Trenutno nije moguće dešifrirati datoteke koje je šifrirao Nemty bez plaćanja otkupnine. Ova verzija ransomware-a ima zajedničke karakteristike s Buran ransomware-om i zastarjelim GandCrab-om: kompilacija u Borland Delphiju i slike sa istim tekstom. Osim toga, ovo je prvi enkriptor koji koristi 8092-bitni RSA ključ, što opet nema nikakvog smisla, jer je za zaštitu dovoljan 1024-bitni ključ. Konačno, i zanimljivo, pokušava koristiti pogrešan port za lokalni Tor proxy servis.
Međutim, rješenja Acronis Backup и Acronis True Image spriječiti Nemty ransomware da dođe do korisničkih računara i podataka, a provajderi mogu zaštititi svoje klijente Acronis Backup Cloud... Pun Cyber zaštita pruža ne samo backup, već i zaštitu korištenjem Acronis Active Protection, posebna tehnologija zasnovana na umjetnoj inteligenciji i heuristici ponašanja koja vam omogućava da neutralizirate čak i nepoznati zlonamjerni softver.