|
Diskussionsforum: Analyse des "Verschlüsselungs-Tojaners" 2. Gen (Dateinamen ohne Endung) Version 1.902.2Windows 7 Hier sind ausschließlich fachspezifische Diskussionen erwünscht. Bitte keine Log-Files, Hilferufe oder ähnliches posten. Themen zum "Trojaner entfernen" oder "Malware Probleme" dürfen hier nur diskutiert werden. Bereinigungen von nicht ausgebildeten Usern sind hier untersagt. Wenn du dir einen Virus doer Trojaner eingefangen hast, eröffne ein Thema in den Bereinigungsforen oben. |
07.06.2012, 20:05 | #1 |
/// Helfer-Team | Analyse des "Verschlüsselungs-Tojaners" 2. Gen (Dateinamen ohne Endung) Version 1.902.2 Hi alle, habe mich heute angemeldet, um mal meine Erfahrungen mit dem Verschlüsselungstrojaner mit euch zu teilen. Ich arbeite in einer kleinen Firma die sich mit IT-Dienstleistungen befasst. Diese Woche hatten verhältnismäßig viele Kunden den Verschlüsselungstrojaner auf dem PC, den sie zum Service gebrachten. Dummerweise immer die neue Version ohne Dateiendungen an den verschlüsselten Dateien. Wie Privatkunden so sind natürlich keine Backups ... Einige Geschichten über die Wichtigkeit der verschlüsselten Dateien haben mein Mitgefühl geweckt. ;D Von einem Rechner konnte ich eine E-Mail ziehen, die die Version 1.902.2 enthielt. Am Montag habe ich angefangen das Okolyt zu reversen. Ich habe nun nicht gerade täglich mit Assembler zu tun. Darum bin ich heute nach etwa 20 Stunden Arbeit noch nicht fertig, möchte aber schon mal den Zwischenstand mit euch teilen. Analyse: - Der Dropper heißt "Mahnung.exe" und hat ein WinRAR-Icon - Nach dem Start entpackt er aus seinen Resourcen das Hauptprogramm in den RAM und startet das UPX-gepackte Teil per CreateProcess - Mahnung.exe wird gelöscht - Das Hauptprogramm kopiert sich nach C:\Dokumente und Einstellungen\Benutzername\Lokale Einstellungen\Temp\zufällige-buchstaben-kombination.pre unter XP bzw. C:\Users\Benutzername\AppData\Local\Temp\ unter Vista/Win7 möglich wäre auch C:\Windows\Temp\zufällige-buchstaben-kombination.pre - Es wird die *.pre-Datei per WinExec gestatet und der Prozess beendet sich selbst - die *.pre-Datei erstellt einen ctfmon.exe-Prozess mit einigen WriteProcessMemory-Aufrufen und startet ihn dann per CreateRemoteThread bei Offset 0x7FF90000 - cftmon.exe beginnt mit der Hauptarbeit - Rechner-ID wird erstellt (Benutzername, Rechnername, evtl. weitere Daten) - Fehlermeldung wird angezeigt "Microsoft Word" falsches Dateiformat oder etwas in der Richtung - System-Restore-Point wird erstellt - *.pre-Datei wird noch ein paar mal unter anderem Namen im Dateisystem angelegt - Erzeugte Dateien werden in die Registry eingetragen, z. B. "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run" - TaskMgr und Regedit werden durch Registry-Einträge deaktiviert - Bitmaps (falls vorhanden) mit dem Erpressertext von der Festplatte laden z. B. von C:\Windows\system32\winsh32x - das x steht für die Zahlen 0 bis 5 - Verschlüsselte Kommunikation mit einem C&C-Server (Bitmaps und ACHTUNG-LESEN.txt herunterladen), "hxxp://horad-fo.com/images/a.php?id=A3CB9B4F106519220000&cmd=msg&ver=1.902.2" läd z. B. die ACHTUNG-LESEN.txt - Es werden alle Laufwerke nach Datei durchsucht und in eine Liste aufgenommen - Zu jeder Datei wird ein neue Dateiname festgelegt, zufällige Länge Groß- und Kleinbuchstaben, keine Dateiendung - Zu jeder Datei wird ein zufälliger Schlüssel erstellt - Diese drei Arbeitsschritte werden zu einer Datenbank zusammengefasst, die im Klartext etwas so aussieht: C:\\Dokumente und Einstellungen\Admin\Anwendungsdaten\Apple Computer\iTunes\iPod Updater Logs\iPodUpdater 1.log C:\\Dokumente u nd Einstellungen\Admin\Anwendungsdaten\Apple Computer\iTunes\iPod Updater Logs\VGjfjqtqEGsfoVyqyys fyfsnoUfjftqVVssosqAVtGEGEtqtGVnynqLqLydyAnjLsGEAVj C:\\Dokumente und Einstellungen\Admin\Anwendungsdaten\Apple Computer\iTunes\iPod Updater Logs\iPodUpdater 10.log C:\\Dokumente und Einstellungen\Admin\Anwendungsdaten\Apple Computer\iTunes\iPod Updater Logs\tLULUUjdsdodoA nxjdfUGUVjyGGnGnxddddAGtnsLojoAVtGVnfnGdGjxtUo ... - Diese Datenbank wird 2 mal verschlüsselt und anschließend auf der Festplatte abgelegt - Bei mir unter A3CB9B4F10651922.$02 also Rechner-ID + .$02 - Die Dateien werden der Reihe nach mit dem dazugehörigen Schlüssel + einer immer gleichen Zeichenfolge verschlüsselt, er weden nur die ersten 12kb gelesen, verschlüsselt, geschrieben - nach dem verschlüsseln wird die Erstellungszeit der Datei auf 13. Februar 1601, 10:28:18 gesetzt Bis hier hin bin ich bis jetzt. Fazit ist bis hier hin, dass die .$02-Datei der Kern jedes Entschlüsselungsversuchs sein wird. Ich konzentriere mich jetzt darauf herauszufinden, wie diese Datei-Datenbank entschlüsselt werden kann. Noch ein paar interesante Fakten: - Es werden nur Dateien auf Partionen von fest eingebauten Festplatten verschlüsselt. Das bedeutet keine Verschlüsselung auf Netzlaufwerken und Wechseldatenträgern - Dateien werden nicht verschlüsselt wenn sie im Jahr 1601 erstellt wurden - Dateien, die (oder deren Ordner) folgende Zeichenketten enthalten werden nicht verschlüsselt: Program, Application, temp, tmp, Recycled, $, cache, Cookies, Desk.$00, .sys, .lnk, .com, .bin, .ini, .sys, .dat, .bat, .pif, .inf, ntldr, ntdetect, bootmgr, osloader, winload, pagefile, winsh, .$0 - Folgende Command&Control-Server sind hardcoded: hxxp://horad-fo.com/images/a.php hxxp://bojan-dns.com/images/a.php hxxp://lickes-shops.com/images/a.php hxxp://manno-admin.com/images/a.php hxxp://johen-kapel.com/images/a.php hxxp://networkers-group.com/images/a.php hxxp://robertos-group.com/images/a.php Im Anhang sind noch die Daten, die vom C&C-Server geladen werden. Wenn jemand mit analysieren möchte, denn stelle ich gerne den Dropper und die Offsets der wichtigsten Funktionen bereit. Geändert von sebber (07.06.2012 um 20:11 Uhr) |
07.06.2012, 20:44 | #2 |
/// Malware-holic | Analyse des "Verschlüsselungs-Tojaners" 2. Gen (Dateinamen ohne Endung) Version 1.902.2 bitte dropper aber nicht im forum bereit stellen, danke.
__________________
__________________ |
07.06.2012, 20:54 | #3 |
/// Helfer-Team | Analyse des "Verschlüsselungs-Tojaners" 2. Gen (Dateinamen ohne Endung) Version 1.902.2__________________
__________________ |
07.06.2012, 22:10 | #4 |
/// Helfer-Team | Analyse des "Verschlüsselungs-Tojaners" 2. Gen (Dateinamen ohne Endung) Version 1.902.2 Wirklich sehr interessanter Link ;D Der Kumpel ist ja schon ein bisschen weiter als ich. Die Information, dass er Schlüssel für die Datei-Datenbank nicht mehr auf dem Rechner ist wird mir einige Stunden Arbeit ersparen. Ich würde aber nicht warten bis irgendwann mal eine Behörde vielleicht die Erpresser-Datenbank mit den Schlüsseln veröffentlich. Ich werde mal schaun ob sich Bruteforce-mäßig was machen lässt. Ich denke, dass moderne Rechner da was in vernünftiger Zeit erreichen können. Die Keys die verwendet werden bestehen eigentlich im ganzen Programm nur aus Groß- und Kleinbuchstaben, was die Anzahl der möglichen Keys stark eingrenzt. Ausserdem braucht man evtl. nicht mal den ursprünglichen Key. Es wird der RC4-Algo verwendet, der verhältnismäßig (und rein teoretisch) "viele" Kollisionen aufweist. Zumindest laut Wikipedia. |
07.06.2012, 23:39 | #5 |
| Analyse des "Verschlüsselungs-Tojaners" 2. Gen (Dateinamen ohne Endung) Version 1.902.2 wäre natürlich hammer, wenn das brute was gehen könnte. Wozu haben alle nen quadcore im Rechner stecken? der soll mal was zu tun bekommen. Ich würd die kiste auch wochen lang rechnen lassen, wenn ich meine files wiederbekomme. Soll noch ärgere Fälle geben wos um wirschlaftlichen schaden geht ala kleinunternehmer. danke für dein engagement. |
08.06.2012, 00:07 | #6 |
/// Helfer-Team | Analyse des "Verschlüsselungs-Tojaners" 2. Gen (Dateinamen ohne Endung) Version 1.902.2 Was macht Dich so sicher, dass es RC4 ist?
__________________ --> Analyse des "Verschlüsselungs-Tojaners" 2. Gen (Dateinamen ohne Endung) Version 1.902.2 |
08.06.2012, 00:22 | #7 |
/// Helfer-Team | Analyse des "Verschlüsselungs-Tojaners" 2. Gen (Dateinamen ohne Endung) Version 1.902.2 Folgender Aufruf der Windows-API-Funktion CryptDeriveKey BOOL WINAPI CryptDeriveKey( __in HCRYPTPROV hProv, // 00 0B 7D 18 __in ALG_ID Algid, // 0x00006801 = CALG_RC4 __in HCRYPTHASH hBaseData, // 00 0C 1B D8 __in DWORD dwFlags, // 1 __inout HCRYPTKEY *phKey // ret = 00 0C 1C F0 ); So wirds in der Malware ausgeführt der Parameter 2 Algid (Algorhytmus-ID) ist laut Microsoft RC4: http://msdn.microsoft.com/en-us/library/windows/desktop/aa375549%28v=vs.85%29.aspx Ich glaube nicht dass ich mich da irre. Auch im Board von Delphi-Praxis oder bei der Analyse vom McAffee-Mitarbeiter wird RC4 erwähnt: http://blogs.mcafee.com/mcafee-labs/ransomware-holds-up-victims |
08.06.2012, 01:03 | #8 |
Administrator /// technical service | Analyse des "Verschlüsselungs-Tojaners" 2. Gen (Dateinamen ohne Endung) Version 1.902.2 Ja, RC4 wurde bei allen Varianten verwendet. http://www.trojaner-board.de/115713-...tml#post833869 (Coder Area) |
08.06.2012, 01:21 | #9 |
/// Helfer-Team | Analyse des "Verschlüsselungs-Tojaners" 2. Gen (Dateinamen ohne Endung) Version 1.902.2 OK, schaun wir mal was Bruteforce bringt. hast Du das Reply vom Guru bei McAfee gelesen? Xylitol May 31, 2012 9:04AM It’s impossible to decrypt files without criminal’s server.
__________________ Das Board unterstützen Datenrettung -->HIER! Zitat der Woche: Die Gefahr, dass der Computer so wird wie der Mensch, ist nicht so groß wie die Gefahr, dass der Mensch so wird wie der Computer. |
09.06.2012, 10:02 | #10 |
| Analyse des "Verschlüsselungs-Tojaners" 2. Gen (Dateinamen ohne Endung) Version 1.902.2 hallo, habe einiges mitverfolgt und hatte eine idee: ist vielleicht etwas in dem trojaner integriert was der entschlüsselung dient? hat vielleicht jemand versucht eine (ungültige) UKASH Id einzugeben und den traffic mitgeschnitten? vielleicht ist da ein ansatz über ein kleines skript machbar? der server, zumindest der horad-fo ist evtl verwundbar soweit ich auf die schnelle sehen konnte. php 5.2.6 hat eine kleine lücke. der draufsetzende nginx ist auch nicht der jüngste , 1.0.4 da bin ich dran herauszufinden was geht. erstmal muss ich meinen wagen reparieren, bremsleitung gerissen... CUDA programmieren ist nicht mein ding, aber da ist noch viel mehr leistung in z.b. einer geforce zur verfügung? wäre das was? war so eine spontane idee grad. |
09.06.2012, 11:24 | #11 | ||||
| Analyse des "Verschlüsselungs-Tojaners" 2. Gen (Dateinamen ohne Endung) Version 1.902.2Zitat:
Zitat:
Diese Server nun hacken zu wollen, wäre Selbstjustiz und verboten. Zitat:
Zitat:
Sinn macht es, auf die "Seitenkanäle" zu schauen, also temporäre Daten. Bei einem gerade verschlüsselnden Trojaner wäre das direkte Netzstecker-ziehen für den Laien vermutlich bei diesem Ansatz die beste Möglichkeit. Dann könnte man versuchen in der Auslagerungsdatei zu suchen. Allerdings wäre das auch keinesfalls sicher, denn gegen sowas kann man sein Programm auch schützen. Am besten wärenn atürlich Debuging/Forensik-Tools, mit denen Du im laufenden Betrieb ein Speicher-Snapshot machen kannst. Solange der Trojaner seine Verschlüsselung nicht komplett im Prozessorcache abwickelt, wird der Schlüssel dann irgendwo da drin zu finden sein. Aber das ganze Szenario widerspricht der Praxis. Wenn die Betroffenen nach Hilfe suchen, ist der Trojaner doch schon fertig und der Schlüssel längst an die Kriminellen übertragen und lokal nicht mehr vorhanden. |
10.06.2012, 20:48 | #12 |
| Analyse des "Verschlüsselungs-Tojaners" 2. Gen (Dateinamen ohne Endung) Version 1.902.2 soweit ich bis jetzt über whois abfragen und diverse googelei herausfinden konnte ist es ein extra dafür angemieteter server, zumindes eine der 4 ip's in indien. auf horad-fo verweisen einige virenanalysen als DNS request und einige domains die nur mit malware zu tun haben, es scheint das dieser server für so einige viren als c&c missbraucht wird. wir haben es hier also schon mit organisierten kriminellen zu tun... leider ist die php lücke nicht geeignet um sich da mal umzusehen. zum nginx konnte ich leider auch nichts finden. ich möchte hier aber klarstellen das ich nicht die absicht habe selbstjustiz zu üben, ich suche einfach nur eine effiziente möglichkeit den key zu bekommen. im serverbereich habe ich gezwungenermaßen genug erfahrung dank meinem job, im win32 assembler bereich sind meine kenntnisse aber zu eingerostet. |
Themen zu Analyse des "Verschlüsselungs-Tojaners" 2. Gen (Dateinamen ohne Endung) Version 1.902.2 |
bereit, bootmgr, cmd, computer, ctfmon.exe, datei, dateisystem, dropper, e-mail, einstellungen, fehlermeldung, festplatte, kunde, laufwerke, mahnung.exe, microsoft, neue, neue version, ordner, programm, prozess, rechner, registry, software, system32, temp, windows |