Open Source im professionellen Einsatz

Awareness

Gut erzogene Anwender sollten spätestens bei der jetzt folgenden Warnung skeptisch werden und den Administrator anrufen (Abbildung 5). Auch wenn sich diese Mitteilungen vom Angreifer in vermeintlich weniger gefährliche Nachrichten umwandeln lassen, erweist sich solch eine meist aufwändig anzutrainierende Security Awareness aller Mitarbeiter hier als einziger Schutzschild vor der Backdoor, die das Klicken auf »Öffnen« startet (Abbildung 6).

Abbildung 5: Spätestens beim Lesen dieser Warnung sollten aufmerksame Benutzer stutzig werden.

Abbildung 5: Spätestens beim Lesen dieser Warnung sollten aufmerksame Benutzer stutzig werden.

Abbildung 6: Der Multihandler hat eine Verbindung zum kompromittierten Windows-Rechner geöffnet.

Abbildung 6: Der Multihandler hat eine Verbindung zum kompromittierten Windows-Rechner geöffnet.

Ein Netstat-Aufruf auf einem der beteiligten Rechner bestätigt die Verbindung. Aktive Virenscanner auf dem Windows-PC sollten den Prozess zwar vorher unterbrechen, aber auch dafür gibt es simple Workarounds. Echte Angreifer verwenden aktuelle Varianten von Metasploit zusammen mit Webseiten wie Virustotal [6], um den eingebetteten Code zu verstecken. Dort finden sie 41 verschiedene Scanner, die auf den Upload von potenziellem Schadcode warten und diesen untersuchen. Die Payload »reverse.exe« aus dem Standard-Metasploit-Setup erkannten im Test immerhin noch 23 Virenscanner. Zumindest die großen Hersteller von Antivirensoftware haben ihre Hausaufgaben offenbar gemacht, bis vor wenigen Monaten war die Erfolgsrate deutlich geringer.

Aber die Angreifer reagieren und verschleiern den Schadcode, indem sie ihn zum Beispiel durch XOR-Encoder schicken. Metasploit hat auch dafür mit Msfencode ein Modul dabei, »msfencode -h« und »-l« zeigt seine Fähigkeiten (Listing 3 und 4). Damit konnten die Autoren die Trefferrate auf 15 senken. Admins müssen hier selbst testen, ob ihnen die auf ihren Windows-Systemen installierte Virensoftware ausreicht. Die reagiert glücklicherweise sehr empfindlich auf Metasploit-Module.

Listing 3: »msfencode
-h«

01 Usage: ./msfencode <options>
02 OPTIONS:
03 -a <opt>  The architecture to encode as
04 -b <opt>  The list of characters to avoid: 'x00xff'
05 -c <opt>  The number of times to encode the data
06 -e <opt>  The encoder to use
07 -h        Help banner
08 -i <opt>  Encode the contents of the supplied file path
09 -k        Keep template working; run payload in new thread (use with -x)
10 -l        List available encoders
11 -m <opt>  Specifies an additional module search path
12 -n        Dump encoder information
13 -o <opt>  The output file
14 -p <opt>  The platform to encode for
15 -s <opt>  The maximum size of the encoded data
16 -t <opt>  The format to display the encoded buffer with (c, elf, exe, java, js_le, js_be, perl, raw, ruby, vba, vbs, loop-vbs, asp, war, macho)
17 -x <opt>  Specify an alternate win32 executable template

Listing 4: »msfencode
-l«

01 Framework Encoders
02 ==================
03 Name                    Rank       Description
04 ----                    ----       -----------
05 cmd/generic_sh          good       Generic Shell Variable Substitution Command Encoder
06 cmd/ifs                 low        Generic ${IFS} Substitution Command Encoder
07 generic/none            normal     The "none" Encoder
08 mipsbe/longxor          normal     XOR Encoder
09 mipsle/longxor          normal     XOR Encoder
10 php/base64              normal     PHP Base64 encoder
11 ppc/longxor             normal     PPC LongXOR Encoder
12 ppc/longxor_tag         normal     PPC LongXOR Encoder
13 sparc/longxor_tag       normal     SPARC DWORD XOR Encoder
14 x64/xor                 normal     XOR Encoder
15 x86/alpha_mixed         low        Alpha2 Alphanumeric Mixedcase Encoder
16 x86/alpha_upper         low        Alpha2 Alphanumeric Uppercase Encoder
17 x86/avoid_utf8_tolower  manual     Avoid UTF8/tolower
18 x86/call4_dword_xor     normal     Call+4 Dword XOR Encoder
19 x86/countdown           normal     Single-byte XOR Countdown Encoder
20 x86/fnstenv_mov         normal     Variable-length Fnstenv/mov Dword XOR Encoder
21 x86/jmp_call_additive   normal     Jump/Call XOR Additive Feedback Encoder
22 x86/nonalpha            low        Non-Alpha Encoder
23 x86/nonupper            low        Non-Upper Encoder
24 x86/shikata_ga_nai      excellent  Polymorphic XOR Additive Feedback Encoder
25 x86/single_static_bit   manual     Single Static Bit
26 x86/unicode_mixed       manual     Alpha2 Alphanumeric Unicode Mixedcase Encoder
27 x86/unicode_upper       manual     Alpha2 Alphanumeric Unicode Uppercase Encoder

Das Spiel geht weiter

Kein Grund jedoch, sich in Sicherheit zu wiegen, denn auch hier hilft Metasploit weiter. Frisch erstellter Binärcode, über den implementierten Encoder mit XOR-Befehlen verschliffen, täuscht Antivirensoftware immer noch erfolgreich. Das altbekannte Hase-und-Igel-Spiel zwischen Angreifern und Herstellern von Sicherheitssoftware geht weiter.

Infos

[1] Metasploit: [http://www.metasploit.com]

[2] Metasploitable: [http://www.blog.metasploit.com/2010/05/introducing-metasploitable.html]

[3] Hans-Peter Merkel, Markus Feilner, "Geisterstunde": Linux-Magazin 03/10, S. 26

[4] Proof of Concept für »launch«-Bug: [http://blog.fortinet.com/0day-or-not-today-exploit-in-the-wild]

[5] Zeus-Trojaner: [http://en.wikipedia.org/wiki/Zeus_%28trojan_horse%29]

[6] Virustotal: [http://www.virustotal.com/de]

Der Autor

Hans-Peter Merkel ist mit dem Schwerpunkt Datenforensik seit vielen Jahren in der Open-Source-Community aktiv. Er bildet auch Mitarbeiter von Strafverfolgungsbehörden in Deutschland und Tansania aus und engagiert sich als Gründer und Vorsitzender bei Freioss und Linux4afrika.

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 5 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

Als digitales Abo

Als PDF im Abo bestellen

comments powered by Disqus

Ausgabe 07/2013

Preis € 6,40

Insecurity Bulletin

Insecurity Bulletin

Im Insecurity Bulletin widmet sich Mark Vogelsberger aktuellen Sicherheitslücken sowie Hintergründen und Security-Grundlagen. mehr...

Linux-Magazin auf Facebook