Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Einreichen
ToolsExploitsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
HiveV5_keystream_decryptor — Schlechtes Zeug von bösen Jungs | Kitploit
Tools/GitHubGitHub/reecdeep/hivev5_keystream_decryptor
Verschlüsselungs-/EntschlüsselungstoolsReverse EngineeringDatenwiederherstellungMalware-AnalyseDigitale ForensikKryptographieBinäranalyse
GitHubreecdeep/hivev5_keystream_decryptor

HiveV5_keystream_decryptor

Schlechtes Zeug von bösen Jungs

Repository anzeigen
49916vor 4 JahrenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

HiveV5 keystream decryptor PoC

Einführung

Das in diesem Dokument analysierte und referenzierte Hive-Sample wurde zufällig aus dieser Liste ausgewählt, die von @rivitna erstellt wurde, dem mein herzlichster Dank gilt. Artefakte sind auf der VirusTotal-Plattform verfügbar.

In diesem Dokument wird die Datei a0h2uih3d2.exe als Referenz herangezogen

MD5: 15CF5E0DA094ACDD751A513402A8C941
SHA-1: 72E15AC4473903C814E65E3C06F54EB0399580AA
SHA-256: 335D2E4A743D059955760ECF2EC25EE86D36AA60B096C9180E860C64EF78EE55

Um sich einen Eindruck von der Komplexität dieser Ransomware zu verschaffen, werfen Sie bitte einen Blick auf diese Analyse, die vom Microsoft Threat Intelligence Center (MSTIC) veröffentlicht wurde.

Bitte lesen Sie das gesamte Dokument sorgfältig, bevor Sie mit dem Code herumspielen!

Ein kurzer Überblick über Hive v5

In den letzten Monaten habe ich den Großteil meiner Energie in das Studium und Reverse Engineering des Hive-v5-Verschlüsselungsalgorithmus gesteckt. Ich hatte die Freude, mit einem großartigen Malware-Analysten und Reverse Engineer @rivitna zusammenzuarbeiten, der in der Vergangenheit frühere Versionen von Hive analysiert und Code und PoCs zu deren Verschlüsselungsmechanismen veröffentlicht hat. Er hat (nicht wenig) dazu beigetragen, die Komponenten zu identifizieren, die an den Verschlüsselungsoperationen von Hive v5 beteiligt sind, das, da es in RUST geschrieben ist, schwieriger zu analysieren geworden ist. Ich habe einige Gemeinsamkeiten zwischen Hive v5 und Babuk festgestellt, einer weiteren sehr wichtigen Ransomware, deren Quellcode im Juni 2021 offengelegt wurde:

  • Schlüsselaustauschalgorithmus;
  • Liste der Prozesse, die beendet werden müssen, bevor die 1256 Verschlüsselungsthreads gestartet werden.

Die auf einem Opfersystem ausgeführte Hive-Ransomware v5 erzeugt zwei Klartextschlüssel, wobei sie den unten gezeigten Algorithmus verwendet, der auf den Windows-APIs QueryPerformanceCounter und QueryPerformanceFrequency basiert.

Bitte werfen Sie einen Blick auf diese Microsoft-Seite für weitere Informationen zu den QueryPerformanceCounter-APIs, hier für QueryPerformanceFrequency.

QueryPerformanceCounter ist ein sehr genauer Zeitzähler. Beim Aufruf gibt er die Zeit zurück, die seit dem letzten Einschalten des PCs vergangen ist.

QueryPerformanceFrequency gibt den Wert (Frequenz) des Performance-Counters zurück. Er hat einen festen Wert von 0x989680. Das bedeutet, dass der QueryPerformanceCounter-Wert 0x989680 Mal pro Sekunde aktualisiert wird, also 10.000.000 Mal.

Die beiden Klartextschlüssel haben eine Größe von 0xCFFF00 Bytes und werden einzeln, Byte für Byte, erzeugt. Unten ist der Codeausschnitt, der die Erstellung eines Arrays von 0xA00000 Bytes ermöglicht, das den größten Teil des sogenannten Klartextschlüssels darstellt, mit dem Hive die Dateien auf dem PC des Opfers verschlüsselt.

snippetGenKeyCleartext

Jedes Byte des Schlüssels wird durch den Wert des AL-Registers erhalten. Das EAX-Register enthält das Ergebnis der Funktion 0044ADE0, die mit dem Label createByte umbenannt wurde und die Differenz zwischen dem aktuellen Zeitpunkt und dem anfänglichen Seed-Wert implementiert, der beim ersten Aufruf der Funktion 0044A850 berechnet wird, die mit dem Label call_to_QueryPerformanceCounter umbenannt wurde.

Unten ist der in C++ geschriebene Code zur Erzeugung eines Klartextschlüssels:

c++GenKeyCleartext

Der Algorithmus ist sehr einfach, auch wenn innerhalb der Funktion 0044ADE0 Anweisungen eingefügt wurden, die redundante Operationen und verschiedene bedingte Sprünge ausführen, um die Ausführungszeit des Codes während der Erzeugung des Klartextschlüssels zu verzögern:

useless-conditions

Im Ordner HiveRansomwareV5_custom_keygen_PoC finden Sie den Rohcode, der per Reverse Engineering aus der analysierten Hive-v5-Probe gewonnen wurde. Es ist kein optimierter Code wie im Malware-Original, da ich keine einzige Codezeile der kompilierten Version auslassen wollte.

Im Ordner HiveRansomwareV5_custom_keygen_PoC-optimized finden Sie den optimierten Code, der aus dem oben genannten Rohcode abgeleitet wurde. In dieser Version ist der Code viel leichter zu lesen als der Rohcode, um die implementierte Funktionalität zu verstehen.

Beide Versionen müssen vor dem Ausführen an Ihren Benutzer angepasst werden, um den erzeugten Klartextschlüssel auf Ihrem Desktop zu speichern.

Beide Klartextschlüssel werden mit demselben Algorithmus erzeugt.
Ein Klartextschlüssel besteht aus 0xA00000 sicher zufällig generierten Bytes. Dann werden die ersten 0x2FFF00 Bytes ans Ende kopiert, wodurch ein endgültiger Klartextschlüssel von 0xCFFF00 Bytes entsteht.

memcpy2FFF00

Anschließend verwendet Hive die beiden erzeugten Schlüssel, um Dateien zu verschlüsseln, aber zuerst verschlüsselt die Hive-Ransomware v5 die erzeugten Schlüssel in einer eigenen Struktur (im Folgenden Keystreams genannt) und legt sie mit der Erweiterung .key im Stammverzeichnis jedes Laufwerks ab, das sie verschlüsselt. Wenn Sie zum Beispiel beide Laufwerke C und D auf Ihrem System installiert haben, sind die verschlüsselten Keystreams im Stammverzeichnis jedes Laufwerks vorhanden.

keysAtRoot

Die Hive-Ransomware v5 verwendet die erzeugten Klartextschlüssel, um Dateien mit der XOR-Instruktion zu verschlüsseln. Wir haben es also mit einer sehr schnellen symmetrischen Verschlüsselung auf modernen x86/x64-CPUs zu tun.

Wie sich Hive v5 schützt, wie aus einem Klartextschlüssel ein Keystream wird

Die Hive-Ransomware v5 muss den erzeugten Klartextschlüssel schützen, indem sie ihn zweimal verschlüsselt; im Folgenden nennen wir diese Runden. Es sind zwei Verschlüsselungsrunden erforderlich, um den endgültigen Keystream zu erhalten.

Um dies zu erreichen, werden in jeder Runde die folgenden Schritte ausgeführt:

Tool herunterladen