TG Soft Security Software Specialist - Vir.IT eXplorer: AntiVirus-AntiSpyware-AntiMalware-AntiRansomware
Identifica virus/malwareIdentifica virus polimorfici grazie a DEEP SCANMacro Virus AnalyzerTecnologia INTRUSION DETECTIONTools rimozione virus/malwareInstallazione su Active DirectoryProtezione Real-Time 16/32/64 bitVir.IT Scan MailVir.IT Console Client/ServerVir.IT WebFilter ProtectionAggiornamenti automatici Live-UpdateVir.IT Personal FirewallAssistenza tecnica in lingua italianaCentro Ricerche Anti Malware


Attiva la tua Licenza Invia file sospetto Newsletter

fb rss linkedin twitter

ICSA Lab ICSA Lab

Vir.IT eXplorer PRO supera il test internazionale VB100 2019-06

AMTSO

OpsWat



EICAR Membro SERIT - Security Research in ITaly

10/04/2016 09:31:09 - Il punto debole di Petya Ransomware!

Italiano  Inglese


Il 31 marzo scorso il C.R.A.M. di TG Soft aveva analizzato il funzionamento a basso livello di Petya Ransomware, la cui analisi può essere consultata dall'informativa: "Petya Ransomware ai raggi X !!".

Vediamo ora come è possibile determinare la chiave utilizzata per la cifratura della MFT (Master File Table).

Abbiamo visto che la lunghezza della key inserita deve essere compresa tra 16 e 73 caratteri. Solo i caratteri compresi tra lo spazio ' ' asc(0x20) e la '~' asc (0x7e) saranno stampati a video.

Ma dalla key inserita vengono presi solo i primi 16 caratteri che appartengono al seguente insieme:
123456789abcdefghijkmnopqrstuvwxABCDEFGHJKLMNPQRSTUVWX

CryptoMalware

questa nuova key sarà chiamata Key da 16 byte: B0, B1, B2, B3, B4, B5, B6, B7, B8, B9, B10, B11, B12, B13, B14, B15

Dalla Key da 16 byte si ottiene una Key da 32 byte come rappresentato in figura:




La Key da 32 byte sarà utilizzata per decifrare da Petya.

Petya usa una versione "ibrida" di Salsa20. Esso crea una tabella "master" di partenza di 0x40 byte (come mostrata in figura), dove viene inizializzata con i seguenti  valori:
  • "expand 32-byte k"
  • Key da 32 byte
  • Vettore da 8 byte del settore 0x36
  • 8 byte con valore 0
come vediamo da questo schema:




Dalla "Master Table" di 0x40 byte vengono create 2 tabelle (vettori) uguali di 0x20 byte: Tab_1 e Tab_2.
Tab_1 e Tab_2 sono ottenute prendendo la parte bassa (WORD) delle 16 DWORD  della "Master Table".
In questo modo si andranno ad utilizzare solo i byte K0, K1, K4, K5, ..., K28, K29 della Key a 32 byte.
La Tab_1 sarà rimescolata dall'algoritmo di Salsa e sommata a 16 bit con la Tab_2 ottenendo una tabella di 16 DWORD contenenti le chiavi XOR per la cifratura (Tab_3).

Da questo si evince che Petya utilizza solo 8 dei 16 Byte inseriti nella chiave iniziale, questo ci perme di determinare in modo più agevole la chiave di  cifratura utilizzata.
I byte della chiave utilizzati nell'algoritmo di cifratura saranno:
B0B2B4B6B8B10B12B14
In questo modo siamo passati da una chiave inserita di 16 Byte ad una chiave di 8 Byte, abbassando notevolmente il numero delle possibili combinazioni (548).
Con l'ausilio di tecniche di "Brute Force" o algoritmi geneteci sarà possibile determinare la chiave inserita e decriptare la Master File Table.
 
Aggiornamento del 11/04/2016: Il ricercatore Leo Stone ha realizzato un decodifcatore di Petya all'indirizzo: https://petya-pay-no-ransom.herokuapp.com/

Aggiornamento del 12/04/2016: Con l'aggiornamento 8.1.50 di VirIT (versione LITE e PRO) abbiamo rilasciato una nuova versione del modulo "Ninjavir" che permette di calcolare la chiave di cifratura utlizzata di Petya.

E' necessario collegare il disco infetto da Petya come secondario in un altro computer e installare la versione LITE (free) o PRO di VirIT.
La versione Lite di VirIT è scaricabile dalla pagina di download.
Dopo aver installato VirIT e aggiornato alla 8.1.50 (dopo l'aggiornamento si consiglia di riavviare il pc).

Aprire un cmd (prompt del dos) con i diritti di administrator:
Dal prompt eseguire il comando:  c:\vexplite\ninjavir.exe /gui

Si aprirà il programma "Ninjavir", attendere qualche secondo per la sua inizializzazione.
Clickare sul menu "Decoder->Petya Ransomware" e selezionare l'unità infetta da "Petya Ransomware". Ninjavir visualizzerà una finestra con la key utilizzata da Petya per la cifratura:




Autore: Ing. Gianfranco Tonello

Torna ad inizio pagina


Utilizzabilità delle informative e delle immagine in esse contenute

Ogni informazione pubblicata sul nostro sito può essere utilizzata e pubblicata su altri siti internet, blog, forum, facebook a patto che venga sempre e comunque citata la fonte "Fonte: C.R.A.M. by TG Soft www.tgsoft.it" con link cliccabile all'informativa e/o pagina web originale da cui sono stati estrapolati contenuti testuali, spunti e/o immagini. Inoltre per ogni immagine utilizzata dovrà essere sempre indicata la fonte ed il link cliccabile alla pagina originale dell'informativa di prima pubblicazione. Per quanto riguarda le pubblicazioni cartacee sarà necessario citare la fonte esplicitamente "Fonte: C.R.A.M. by TG Soft www.tgsoft.it" ed in analogia alle pubblicata elettroniche i link sotto ad ogni immagine alla pagina web originale da cui sono state estratte.

Sarà gradito nel caso di utilizzo dell'informativa del C.R.A.M. by TG Soft www.tgsoft.it nella relazione di articoli di sintesi il riconoscimento/ringraziamento di seguito "Si ringrazia il Centro Ricerche Anti-Malware C.R.A.M. by TG Soft di cui segnaliamo il link diretto all'informativa originale:[link diretto cliccabile]"

fb rss linkedin twitter
 




Legal & Eula | Privacy | Disinstallazione

TG Soft S.r.l. - via Pitagora 11/b, 35030 Rubàno (PD), ITALIA - C.F. e P.IVA 03296130283