Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
HiveV5_file_decryptor — Algoritmo di decrittazione file Hive v5 | Kitploit
Strumenti/GitHubGitHub/reecdeep/hivev5_file_decryptor
Strumenti di Crittografia/DecrittografiaReverse EngineeringRecupero DatiAnalisi MalwareCrittografia
GitHubreecdeep/hivev5_file_decryptor

HiveV5_file_decryptor

Algoritmo di decrittazione file Hive v5

Vedi Repository
34363 anni faRevisionato da Kitploit

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

PoC del decrittatore di file HiveV5

Introduzione

Il lavoro svolto negli ultimi mesi è stato necessario per rivelare il meccanismo di cifratura dei file dannoso di Hive v5-5.2. Il lavoro è stato suddiviso in due parti

  1. Decrittazione del keystream
  2. Decrittazione dei file utilizzando il keystream decrittato

Vorrei ringraziare il grande @rivitna per il supporto, il dialogo e i consigli di questi mesi di lavoro! Fate riferimento alla github di rivitna piena di informazioni utili sul ransomware Hive e altro ancora.

In questo readme troverete alcune informazioni sull'algoritmo di decrittazione dei file, rimandandovi al PoC per un quadro più completo del suo funzionamento. Un keystream è un cleartext cifrato. Un cleartext è un insieme di 0xA00000 byte a cui sono stati aggiunti i primi 0x2FFF00 byte, per un totale di 0xCFFF00 byte. Questi byte sono stati creati con l'algoritmo debole già discusso nella prima parte rilasciata a luglio 2022. Qui sotto è riportato un esempio di cleartext:

cleartext

Il campione di Hive analizzato e citato in questo documento è stato scelto da questa lista creata da @rivitna a cui vanno i miei più sentiti ringraziamenti. Per avere un'idea della complessità del ransomware, date un'occhiata a questa analisi pubblicata da Microsoft Threat Intelligence Center (MSTIC).

Algoritmo di cifratura dei file

Il cleartext (un keystream decrittato) viene utilizzato dal ransomware Hive durante la cifratura di ogni file. Quando cifra un file, il ransomware Hive calcola due interi riferiti a posizioni precise nel cleartext (offset) da utilizzare per cifrare il file secondo la seguente formula:

formula

dove c = i % 0x2FFF00 e d = i % 0x2FFD00, con i come contatore di byte.

L'estensione dei file cifrati

Le operazioni preliminari prima di scrivere un file sono:

  • Rinominare il file tramite MoveFileExW e modificarne l'estensione;
  • Scrivere il file rinominato con il risultato dell'operazione xor mostrata sopra.

file_extension

Anche in questo caso il cleartext svolge un ruolo fondamentale. Infatti viene utilizzato per:

  1. Determinare l'ID del keystream (i primi 6 byte) usando una funzione hash
  2. Cifrare le posizioni (offset) usate per estrarre byte dal cleartext Tuttavia, il primo offset viene cifrato usando una posizione fissa del cleartext ed è diverso per ogni campione Hive 5/5.1/5.2. Una sorta di valore magico. In molti artefatti Hive 5/5.1 questo valore magico viene mostrato esplicitamente all'interno di un riferimento in memoria, come in questo caso 0x98072A :

off1

Oppure in questo caso 0x7539D:

off2

Ma nell'evidenza successiva il ciclo for è leggermente diverso ed è stato scritto in modo da non esplicitare il valore magico che dobbiamo identificare. Questo riguarda un artefatto appartenente a Hive 5.2:

off3

In questo caso è possibile usare la funzione di brute force degli offset presente nello strumento rilasciato, usando un file con estensione nota e il relativo keystream decrittato. Usando l'header del file cifrato e l'header del file non cifrato è possibile capire qual è l'offset dal quale il decrittatore deve iniziare a decrittare il file.

La modalità di cifratura dei file può avere due valori: 0xFB o 0xFF

  • 0xFB significa che il ransomware ha cifrato l'intero file senza lasciare alcuna porzione del file non cifrata.
  • 0xFF significa che il ransomware ha calcolato un NCB (blocco non cifrato) per ogni file e cifra blocchi di 0x100000 byte. Per ulteriori informazioni sul calcolo della dimensione dei blocchi non cifrati e dell'offset del cleartext, fare riferimento al codice del PoC.

Utilizzo

Il programma offre due opzioni:

usage

  1. Decrittazione dei file utilizzando il keystream decrittato. È necessario inserire l'offset speciale presente nel campione che ha cifrato i file.
  2. Dato un file con un header noto (PDF, JPG, PNG, file Office), forzare il possibile valore dell'offset speciale decrittando i primi byte e cercando una corrispondenza con la firma nota

Riferimenti

https://github.com/rivitna/Malware/blob/main/Hive/Hive_samples.txt

Scarica lo strumento