Regelmäßig gibt es Zeiten, in denen uns weniger Phishing-E-Mails erreichen und dann gibt es aber auch wieder andere Zeiten. Und wenn ich dann wieder mehr mit diesen E-Mails zu tun habe, muss ich jedes Mal wieder überlegen, wie das noch mal war, mit dem Extrahieren der gefährlichen URLs. Also habe ich mir diesmal die Arbeit gemacht und ein paar meiner Schritte zusammen geschrieben, damit ich es, falls es noch mal eine Pause gibt, es bei der nächsten gegnerischen Kampagne schneller wieder finde.
vi und base64
Die neuste Spam- bzw. Phishing-Wellen, die uns seit einigen Wochen erreicht, generiert wieder vermehrt Arbeit mit den E-Mails. Gerade Qakbot ist wieder vermehrt aktiv und nutzt auch sehr geschickt abgefangene E-Mail-Kommunikation, um E-Mails zu generieren, die als scheinbare Antwort getarnt sind. Qakbot-Mails haben dann meist einen Anhang (HTML, PDF, OneNote o.ä.) und natürlich geht es meistens darum, Anwender dazu zubringen, auf einen Link zu klicken. Ein JavaScript lädt dann eine Powershell-Datei nach und startet sie, die wiederum eine DLL nachlädt und mit der DLL wird letztlich die tatsächliche Payload nachgeladen. Dann würde eine Kommunikation zu einem C&C aufgebaut und Befehle befolgt werden. Im Firmenumfeld sind zum Glück schon viele Anwender sensibilisiert und solche E-Mails werden von den meisten Anwendern erkannt und dann die IT-Hotline informiert. Die bittet dann üblicherweise darum, dass die E-Mail einmal komplett an uns weitergeleitet wird, damit wir sie uns ansehen und entsprechende Maßnahmen ergreifen können. Hauptsächlich geht es darum, dass wir die Hosts, die in den Links stehen, ungültig machen. Dazu müssen die URLs erkannt und extrahiert werden. Ich benutze dafür einen Linux-Rechner, auf dem ich das angehängte File abspeichere. Sollte der Anhang eine .msg-Dateien sein, muss ich das File erst in das mbox-Format umwandeln:
nn=Ticket-Outlook\ Fishing\ Mail.msg msgconvert --mbox "${nn}.mbox" "${nn}" |
« [Shift][v] »
und gehe mit der Pfeil-Down/Pg-Down-Taste an das Ende des Blocks. Als nächstes wechsel ich in den Befehlsmodus und gebe den Befehl ein: « !base64 -di »
Mit einem [Enter] wird der Befehl ausgeführt und der Block decodiert. Dieses Vorgehen wiederhole ich mit allen Blöcken, auch mit PDF-Anhängen und suche danach alle URLs heraus. Bei Qakbot-Mail kommt dann im HTML-Teil meistens ein codierter (obfuskierter) JavaScript-Code zum Vorschein. Um den zu entschlüsseln, benutze ich die Entwicklerwerkzeuge vom Firefox. Zur Sicherheit öffne ich den Firefox in einem „neuen privaten Fenster“. Darin muss man die Taste [F12] betätigen, um die Entwicklerwerkzeuge zu öffnen. Dort gehe ich auf den Reiter Console und füge den Bereich zwischen den Script-Tags (ohne die Tags) am Prompt ein. Ein Druck auf die dicke [Enter]-Taste führt den Code aus und im Ergebnis sieht man die URLs für das Nachladen von Schad-Code. Die so erhaltenen Web-Domains kann man dann im DNS ungültig machen (Stichwort Pi-Hole) oder im Proxyserver verbieten und ab dem Zeitpunkt sind URLs zu dieser Domain unerreichbar.Zusammenfassung
- eventuell Umwandeln von .msg-Dateien: msgconvert
- nn=Ticket-Outlook\ Fishing\ Mail.msg
- msgconvert --mbox "${nn}.mbox" "${nn}"
- Decodieren von base64-Inhalten im vim, z.B. in E-Mail-Dateien (*eml / mbox-Format)
- den Bereich markieren -> z.B. [Shift][v] [Pfeil] ...
- (Befehl) !base64 -di
- In der E-Mail oder im HTML-Anhang ist ein codierter (obfuskierter) JS-Code (JavaScript)
- im FireFox (zur Sicherheit am besten in einem „neuen privaten Fenster“) die Taste [F12], um die Entwicklerwerkzeuge zu öffnen
- Reiter Console öffnen
- an dem Prompt den kompletten JS-Code (ohne Tags) einfügen -> [Enter]
- ausgeführter Code erscheint im Ergebnis, in dem dann womöglich auch die URL für das Nachladen von Schad-Code zusehen sind
- Ich bekomme vorher noch folgende Meldungen – sehe aber im Proxy, dass mein Browser diese URLs nicht ersurft hat. – Solange man nicht auf einen Link klickt, sollte also nichts passieren.
1 2 3 4 5 6 | 17:08:37.631 Loading failed for the <script> with source “https:-/-/taiyolofi[.]net/lqqo/lqqo.php?33599”. privatebrowsing:1:1 17:08:37.632 Loading failed for the <script> with source “https:-/-/arixbd[.]com/rnpr/rnpr.php?91993”. privatebrowsing:1:1 17:08:37.632 Loading failed for the <script> with source “https:-/-/ebcedhesabi[.]com/aaxm/aaxm.php?11525”. privatebrowsing:1:1 17:08:37.634 Content Security Policy: The page’s settings blocked the loading of a resource at https:-/-/taiyolofi[.]net/lqqo/lqqo.php?33599 (“default-src”). debugger eval code:1:2187 17:08:37.634 Content Security Policy: The page’s settings blocked the loading of a resource at https:-/-/arixbd[.]com/rnpr/rnpr.php?91993 (“default-src”). debugger eval code:1:2187 17:08:37.634 Content Security Policy: The page’s settings blocked the loading of a resource at https:-/-/ebcedhesabi[.]com/aaxm/aaxm.php?11525 (“default-src”). debugger eval code:1:2187 |
Hinterlasse einen Kommentar