Wulfric Ransomware – un ransomware inexistent

Uneori, m-ar tenta să privesc în ochii unui creator de viruși și să întreb: de ce și pentru ce? Răspunsul la întrebarea „cum” îl putem găsi singuri, însă ar fi foarte interesant să știm ce gândea creatorul acelui sau altui malware, mai ales când ne întâlnim cu astfel de „perle”.

Eroul articolului de astăzi este un exemplu interesant de ransomware. Se pare că a fost gândit ca un alt „răpitor”, dar implementarea sa tehnică seamănă mai mult cu o glumă proastă. Despre această implementare vom discuta astăzi.

Din păcate, urmărirea ciclului de viață al acestui encoder este practic imposibilă – există prea puține statistici despre el, deoarece nu a avut parte de o răspândire semnificativă. Prin urmare, vom lăsa deoparte originea, metodele de infectare și alte mențiuni. Vom vorbi doar despre întâlnirea noastră cu Wulfric Ransomware și despre cum am ajutat utilizatorul să își salveze fișierele.

I. Cum a început totul

Laboratorul nostru antivirus primește frecvent cereri de ajutor din partea persoanelor afectate de ransomware. Oferim suport indiferent de produsele antivirus instalate. De data aceasta, un individ a apelat la noi, a cărui fișiere au fost infectate de un encoder necunoscut.

Bună ziua! Fișierele de pe unitatea de stocare (samba4) au fost criptate fără parolă. Suspectez că infectarea a venit de pe calculatorul fiicei mele (Windows 10 cu protecția standard Windows Defender). Calculatorul fiicei nu a fost pornit după aceea. Fișierele sunt criptate în principal în formatele .jpg și .cr2. Extensia fișierelor după criptare: .aef.

Am primit de la utilizator mostre de fișiere criptate, o notă de răscumpărare și un fișier care, cel mai probabil, este cheia necesară creatorului ransomware-ului pentru decriptarea fișierelor.

Iată toate indiciile noastre:

  • 01c.aef (4481K)
  • hacked.jpg (254K)
  • hacked.txt (0K)
  • 04c.aef (6540K)
  • pass.key (0K)

Să aruncăm o privire la nota de răscumpărare. Câte bitcoinuri sunt de dată asta?

Traducere:

Atenție, fișierele dumneavoastră au fost criptate!
parola este unică pentru PC-ul dumneavoastră.

Plătiți suma de 0.05 BTC la adresa de bitcoin: 1ERtRjWAKyG2Edm9nKLLCzd8p1CjjdTiF
După plată, trimiteți-mi un email, atașând fișierul pass.key la Wulfric@gmx.com cu notificarea despre plată.

După confirmare, vă voi trimite decriptarea pentru fișiere.

Puteți plăti bitcoinuri online în diverse moduri:
buy.blockexplorer.com — plată cu cardul bancar
www.buybitcoinworldwide.com
localbitcoins.net

Despre Bitcoin:
en.wikipedia.org/wiki/Bitcoin
Dacă aveți întrebări, scrieți-mi la Wulfric@gmx.com
Ca un bonus, vă voi explica cum a fost spart computerul dumneavoastră și cum să-l protejați în viitor.

Lupul patetic, chemat să arate victimei gravitatea situației. Totuși, ar fi putut fi și mai rău.

Wulfric Ransomware – un ransomware inexistent
Fig. 1. - Ca un bonus, vă voi spune cum să vă protejați computerul în viitor. - Pare legitim.

II. Începem lucrul

Primul lucru pe care l-am făcut a fost să ne uităm la structura modelului trimis. Ciudat, acesta nu semăna cu un fișier afectat de ransomware. Deschidem editorul hexazecimal și ne uităm. În primele 4 bytes se află dimensiunea originală a fișierului, următoarele 60 de bytes sunt umplute cu zerouri. Dar cel mai interesant se află la final:

Wulfric Ransomware – un ransomware inexistent
Fig. 2 Analizăm fișierul deteriorat. Ce iese imediat în evidență?

Totul s-a dovedit a fi supărător de simplu: 0x40 bytes din antet au fost mutate la finalul fișierului. Pentru a recupera datele, este suficient să le returnați la început. Accesul la fișier a fost recuperat, dar numele a rămas criptat, și cu acesta e mai complicat.

Wulfric Ransomware – un ransomware inexistent
Fig. 3. Numele criptat în Base64 arată ca un set incoerent de simboluri.

Să încercăm să-l descompunem pass.key, trimis de utilizator. În el vedem o secvență de 162 bytes de caractere în ASCII.

Wulfric Ransomware – un ransomware inexistent
Fig. 4. 162 caractere, lăsate pe PC-ul victimei.

Dacă ne uităm mai atent, putem observa că simbolurile se repetă cu o anumită periodicitate. Acest lucru poate indica utilizarea XOR, unde repetițiile sunt caracteristice, iar frecvența lor depinde de lungimea cheii. Împărțind șirul în grupuri de 6 caractere și aplicând diverse secvențe XOR, nu am obținut niciun rezultat semnificativ.

Wulfric Ransomware – un ransomware inexistent
Fig. 5. Vezi constantele repetate din mijloc?

Am decis să căutăm pe Google constantele, pentru că da, și asta se poate face! Și toate au dus, în cele din urmă, la un singur algoritm - Batch Encryption. După ce am studiat scriptul, a devenit clar că șirul nostru este nimic altceva decât rezultatul muncii sale. Trebuie menționat că acesta nu este un ransomware, ci doar un codificator, care înlocuiește caracterele cu secvențe de câte 6 bytes. Fără chei sau alte secrete 🙁

Wulfric Ransomware – un ransomware inexistent
Fig. 6. O bucată din algoritmul original de autor necunoscut.

Algoritmul nu ar funcționa corect dacă nu ar fi un detaliu:

Wulfric Ransomware – un ransomware inexistent
Fig. 7. Aprobat de Morpheus.

Folosind substituția inversă, transformăm șirul din pass.key în text de 27 de caractere. Un aspect demn de menționat este textul uman (cel mai probabil) ‘asmodat’.

Wulfric Ransomware – un ransomware inexistent
Fig.8. USGFDG=7.

Google ne va ajuta din nou. După o mică căutare, găsim un proiect interesant pe GitHub – Folder Locker, scris în .Net și utilizând biblioteca ‘asmodat’ de pe alt cont de pe ‘Git’.

Wulfric Ransomware – un ransomware inexistent
Fig. 9. Interfața Folder Locker. A fost verificat obligatoriu pentru malware.

Utilitarul este un șifruitor pentru Windows 7 si mai recent, care se distribuie cu cod sursă deschis. La criptare se folosește o parolă, necesară pentru decodare ulterioară. Permite lucrul atât cu fișiere individuale, cât și cu directoare întregi.

Biblioteca sa folosește algoritmul simetric de criptare Rijndael în modul CBC. Remarcabil este faptul că dimensiunea blocului a fost aleasă ca 256 biți – spre deosebire de standardul AES, unde dimensiunea este limitată la 128 biți.

Cheia noastră este generată conform standardului PBKDF2. În acest sens, parola folosită este SHA-256 a șirului introdus în utilitar. Rămâne doar să găsim acest șir pentru a genera cheia de decriptare.

Ei bine, să ne întoarcem la ceea ce deja a fost decodat pass.key. Îți amintești de acea linie cu un set de cifre și textul ‘asmodat’? Încercăm să folosim primii 20 de biți ai șirului ca parolă pentru Folder Locker.

Uite, funcționează! Cuvântul de cod s-a potrivit, și totul s-a descifrat perfect. Judecând după simbolurile parolei, acesta este o reprezentare HEX a unui cuvânt anumit în ASCII. Să încercăm să afișăm cuvântul de cod în formă text.shadowwolfTe simți deja simptomele licantropiei?

Să privim din nou structura fișierului infectat, acum știind mecanismul funcționării locker-ului:

  • 02 00 00 00 – modul de criptare a numelui;
  • 58 00 00 00 – lungimea numelui fișierului criptat și codificat în base64;
  • 40 00 00 00 – dimensiunea antetului transferat.

În roșu și galben sunt evidențiate numele criptat și antetul transferat, respectiv.

Wulfric Ransomware – un ransomware inexistent
Fig. 10. Numele criptat este marcat cu roșu, iar antetul transferat cu galben.

Acum să comparăm numele criptat și decodat în reprezentare hexadecimală.

Structura datelor decodificate:

  • 78 B9 B8 2E – gunoi creat de utilitar (4 octeți);
  • 0C 00 00 00 – lungimea numelui decodat (12 octeți);
  • ulterior urmează, de fapt, numele fișierului și completarea cu zerouri până la lungimea dorită a blocului (padding).

Wulfric Ransomware – un ransomware inexistent
Fig. 11. IMG_4114 arată mult mai bine.

III. Concluzii și concluzii

Revenind la început. Nu știm ce l-a motivat pe autorul Wulfric.Ransomware și care a fost scopul său. Cu siguranță, pentru utilizatorul obișnuit, rezultatul activității unui astfel de ransomware va părea o mare problemă. Fișierele nu se deschid. Toate numele au dispărut. În loc de imaginea obișnuită – un lup pe ecran. Te obligă să citești despre bitcoin.

Adevărul este că, de data aceasta, sub masca „encoderului înfricoșător” se ascundea o încercare ridicolă și ineptă de răscumpărare, unde infractorul folosește programe gata făcute și lasă cheile chiar la locul faptei.

Apropo de chei. Nu am avut un script malițios sau un troian din care să putem înțelege cum a apărut acest pass.key – mecanismul de apariție a fișierului pe PC-ul infectat rămâne necunoscut. Dar, îmi amintesc că în nota sa autorul a menționat unicitatea parolei. Așadar, cuvântul de cod pentru decriptare este la fel de unic cât este și numele de utilizator shadow wolf 🙂

Și totuși, shadow wolf, de ce și pentru ce?

Sursa: habr.com

Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS | ProHoster