Ransomware war schon immer ein heißes Thema in der Sicherheitsbranche. Kürzlich entdeckten Sicherheitskräfte eine Ransomware namens Rapid. Diese Ransomware verwendet RSA und AES, um Dateien zu verschlüsseln. Sie infiziert auch neu erstellte Dateien verschlüsselt. Dieser Artikel führt eine detaillierte Analyse des Rapid-Virus durch, analysiert seinen Verschlüsselungsmechanismus und analysiert seine verschlüsselten Dateien.
Wenn der Rapid-Virus ausgeführt wird, erstellt er mehrere Threads, um das Dateisystem kontinuierlich zu scannen und Dateien zu verschlüsseln. Er infiziert nicht nur vorhandene Dateien auf dem Computer, sondern auch neu erstellte Dateien. Der verschlüsselten Datei wird die Erweiterung „.rapid“ an den Dateinamen angehängt und die Dateigröße wird um 0x4D0 Bytes erhöht.
rapid virus erstellt im verschlüsselten Ordner eine Lösegeldforderungsdatei mit dem Namen „How Recovery Files.txt“. Die Datei enthält eine E-Mail, in der das Opfer aufgefordert wird, Kontakt aufzunehmen, um die Zahlung abzuschließen. Wenn der Benutzer den Computer neu startet, wird automatisch eine Ransomware-Eingabeaufforderungsdatei mit dem Namen „recovery.txt“ angezeigt. Ihr Inhalt ist derselbe wie der Inhalt der Datei „How Recovery Files.txt“.
Verwendung des Bedrohungserkennungssystems der nächsten Generation von LanyEye zur Erkennung schneller Programme. In Lans Augen wird das Schnellprogramm als risikoreich eingestuft:
Als nächstes wird das Schnellprogramm rückwärts analysiert.
Zuerst ruft das Programm ShellExecuteA auf, um den Befehl wie im Bild gezeigt auszuführen:
Die Hauptfunktion besteht darin, Windows-Volume-Schattenkopien zu löschen und Opfer daran zu hindern, Schattenkopien zum Wiederherstellen von Dateien zu verwenden. Deaktivieren Sie die Systemreparatur- und automatischen Änderungsfunktionen. Ransomware kann Treiberdateien verschlüsseln und häufige Systemabstürze verursachen. Deaktivieren Sie Reparaturfunktionen und ignorieren Sie Fehler, um die Wahrscheinlichkeit von Systemabstürzen zu verringern. Das Beenden der Prozesse oracle.exe, sqlite.exe und sql.exe kann einerseits Speicher freigeben und andererseits die Belegung bestimmter Dateien durch diese Datenbankprozesse entlasten.
Dann fügt das Programm ein Startelement hinzu und erstellt neue Encrypter- und Benutzerinfo-Elemente unter der Registrierung HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionRun. Der Wert des Encrypter-Elements ist „%AppDataRomainginfo.exe“ und der Wert des Benutzerinfo-Elements ist „%AppDataRomaingrecovery.txt“. Die Datei „info.exe“ ist eine Kopie des Ransomware-Programms selbst und die Datei „recovery.txt“ ist eine Ransomware-Informationsdatei. Der Inhalt der Datei ist derselbe wie die oben erwähnte Datei „How Recovery Files.txt“. .
Um den normalen Betrieb des Systems sicherzustellen, wählt das Programm keine Dateien unter den Ordnernamen „Windows“, „intel“, „nvidia“, „ProgramData“ und „temp“ aus. :
Diese Ransomware filtert Dateien nicht nach Suffixnamen, sondern ermittelt, ob die ausgewählte Datei „How Recovery Files.txt“, „info.exe“, „recovery.txt“ ist, wenn es drei davon sind Überspringen Sie es und der Rest ist vollständig verschlüsselt.
Das Programm erstellt zunächst einen CSP-Container vom Typ PROV_RSA_FULL und importiert dann den im Programm fest codierten öffentlichen RSA-Schlüssel (mit dem Namen RSA1) über Base64.
Anschließend prüft das Programm, ob der Registrierungsschlüssel „local_public_key“ existiert. Wenn nicht, wird der Registrierungsschlüssel „local_public_key“ erstellt
Das Programm erstellt einen CSP-Container vom Typ PROV_RSA_FULL und ruft CryptGenKey() auf, um ein zufälliges RSA-Schlüsselpaar (mit dem Namen RSA2) zu generieren.
Dann rufen Sie CryptExportKey() auf, um die soeben generierten privaten RSA2-Schlüsseldaten zu exportieren, und rufen Sie den öffentlichen RSA1-Schlüssel auf, um den privaten RSA2-Schlüssel zu verschlüsseln. Nachdem die Verschlüsselung abgeschlossen ist, schreiben Sie die Daten des privaten RSA-Schlüssels in den Registrierungsschlüssel HKEY_CURRENT_USERSoftwareEncryptKeyslocal_enc_private_key und die Datenlänge in den Registrierungsschlüssel HKEY_CURRENT_USERSoftwareEncryptKeyslocal_enc_private_key_len gerade generiert, Diesmal nicht erforderlich. Zum Verschlüsseln schreiben Sie direkt in die Registrierung HKEY_CURRENT_USERSoftwareEncryptKeyslocal_public_key und HKEY_CURRENT_USERSoftwareEncryptKeyslocal_public_key_len.
Nachdem das Programm in den Verschlüsselungsprozess eintritt, ruft es zunächst CryptGenKey() auf, um ein zufälliges AES zu generieren Schlüssel.
und rufen Sie CryptExportKey() auf, um die AES-Schlüsseldaten zu exportieren, BLOBTYPE=PLAINTEXTKEYBLOB:
Wie in der Abbildung gezeigt, ist die Datenlänge 0x2C, 0x3A42A8-0x3A42AF ist BLOBHEADER, 0x 3A42B0-0x3A42B3 ist die Schlüsselgröße, 0x3A42B4- 0x3A42D3 ist der AES-Schlüssel, 0x3A42D4-0x3A4327 sind die mit 0xCD gefüllten Daten:
Verwenden Sie den öffentlichen RSA2-Schlüssel, um den AES-Schlüssel zu verschlüsseln. Die Verschlüsselung ist das „BLOB-Formatdaten + AES-Schlüssel +“. Das oben erwähnte „Auffüllen von Daten“ umfasst die gesamten 0x80 Bytes an Daten:
Lesen Sie die Dateidaten und verschlüsseln Sie die gelesenen Dateidaten mit dem AES-Schlüssel:
Die AES-Verschlüsselung ist nach 128 Bits gruppiert. Wenn die Anzahl der Bytes in der Originaldatei kein ganzzahliges Vielfaches von 128 Bit ist, sind die verschlüsselten Chiffretextdaten größer als die Klartextdaten, sodass das Programm 0x10 Bytes von 0x00 (die Anzahl der Bytes in einem AES-Paket) auffüllt Ende des Klartextes vor der Verschlüsselung.
Überschreiben Sie die verschlüsselten Daten in die Datei, schreiben Sie zuerst nur die Chiffretextdaten der ursprünglichen Dateigröße und dann die erhöhten 0x10-Byte-Daten.
Fahren Sie mit dem Schreiben von Daten in die Datei fort und schreiben Sie 0x4D0-Byte-Daten. Diese 0x4D0-Byte-Daten bestehen aus fünf Teilen: Der erste Teil besteht aus 0x10 Bytes, also den variablen Daten die verschlüsselten AES-Schlüsseldaten; der vierte Teil, 0x400 Bytes, sind die verschlüsselten RSA2-Privatschlüsseldaten; der fünfte Teil, 0x20 Bytes, sind die Dateiverschlüsselungs-Flag-Daten.
Fügen Sie die Erweiterung „.rapid“ nach dem Dateinamen hinzu:
Lösegeldinformationen anzeigen
Analyse verschlüsselter Dateien
Angenommen, eine Datei mit einer Größe von 0x9000 Bytes wird vom Schnellprogramm wie folgt verschlüsselt:
Rapid Ransomware verwendet eine digitale Signatur (RSA_AES- 256) bis Die Datei ist verschlüsselt und zum Entschlüsseln der Datei ist der private Schlüssel der digitalen Signatur erforderlich. Der private Schlüssel der Array-Signatur wird jedoch mit RSA verschlüsselt. Ohne den privaten RSA-Schlüssel ist es schwierig, den privaten Schlüssel der digitalen Signatur zu erhalten, und die Dateiwiederherstellung ist äußerst schwierig.
2017 war ein Jahr mit einem hohen Vorkommen von Ransomware-Viren. Es ist absehbar, dass diese Situation auch 2018 anhalten wird. Jeder von uns sollte wachsamer sein, niemals Anhänge aus verdächtigen Postfächern öffnen, die Verwendung von Softwareressourcen Dritter vermeiden und Antivirenprogramme installieren. Virensoftware zur Reduzierung von Sicherheitsrisiken.
Das obige ist der detaillierte Inhalt vonSo analysieren und erkennen Sie den Rapid-Ransomware-Virus. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!