no one is safe ...

Automatisierung im Rahmen eines Pentests - part 5 (Wmap attack)

Mittlerweile sind wir im Rahmen unserer automatisierten Analyse der Zielumgebung durchaus weit vorgedrungen. Wir kennen alle Systeme, alle Services mit Versionsinformationen, zudem wurden im Rahmen der Discovery Phase bereits erste User und unter Umständen wurden auch Schwachstellen ermittelt. Mit dem automatisierten Bruteforce Vorgang war es uns möglich frühzeitig die überaus langwierigen Passwort Angriffe zu starten und parallel dazu haben wir unsere erkannten Webserver gecrawlt und dementsprechend die Struktur der Webapplikationen in der Datenbank hinterlegt. In internen Netzwerken sind häufig durchaus viele Webserver aufzufinden und somit sollte auch die weitere Erstanalyse möglichst automatisch ablaufen. Dafür ist prinzipiell Wmap sehr gut geeignet und mit ein bisschen Ruby Kung Fu in einem Resource File geht die ganze Wmap Analyse weitgehend automatisch von der Hand. Das folgende Resource File ladet das Wmap Plugin automatisch nach und nutzt das "wmap_sample_profile.txt" unter /data/wmap/. Dieses Profil lässt sich nach eigenen Belieben anpassen und verändern. Wollt ihr kein Profil nutzen müsst ihr die ersten Zeilen des Skriptes editieren und "profile = nil" aktivieren. Auf Basis der bereits gecrawlten Webseitenstruktur führt es seine weitere Analyse der Webserver und Applikationen vollständig automatisch durch.

10.8.28.2 - (Sessions: 0 Jobs: 0)> load wmap
[*] [WMAP 1.0] ===  et [  ] metasploit.com 2011
[*] Successfully loaded plugin: wmap
10.8.28.2 - (Sessions: 0 Jobs: 0)> setg THREADS 20
THREADS => 20
10.8.28.2 - (Sessions: 0 Jobs: 0)> setg VERBOSE true
VERBOSE => true
10.8.28.2 - (Sessions: 0 Jobs: 0)> resource wmap_autotest.rc
[*] Processing /opt/metasploit4/apps/pro/msf3/scripts/resource/wmap_autotest.rc for ERB directives.
[*] resource (/opt/metasploit4/apps/pro/msf3/scripts/resource/wmap_autotest.rc)> Ruby Code (1677 bytes)

====================================
IP 10.8.28.2
OS Linux
Servicename http
Service Port 80
Service Protocol tcp
====================================

available sites:
[*] Available sites
===============

     Id  Host         Vhost        Port  # Pages  # Forms
     --  ----         -----        ----  -------  -------
     0   10.8.28.2    10.8.28.2    80    159      3
     1   10.8.28.5    10.8.28.5    80    1        0
     2   10.8.28.5    10.8.28.5    8080  1        0
     3   10.8.28.24   10.8.28.24   80    30       18
     4   10.8.28.24   10.8.28.24   443   30       18
     5   10.8.28.25   10.8.28.25   5800  1        0
     6   10.8.28.29   10.8.28.29   80    455      8
     7   10.8.28.29   10.8.28.29   443   460      4
     8   10.8.28.32   10.8.28.32   80    1        0
     9   10.8.28.35   10.8.28.35   80    1        0
     10  10.8.28.36   10.8.28.36   443   1        0
     11  10.8.28.36   10.8.28.36   80    1        1
defined target:
[*] Defined targets
===============

     Id  Vhost      Host       Port  SSL    Path
     --  -----      ----       ----  ---    ----
     0   10.8.28.2  10.8.28.2  80    false


[*] Using ALL wmap enabled modules.
[*] Testing target:
[*]     Site: 10.8.28.2 (10.8.28.2)
[*]     Port: 80 SSL: false
[*] ============================================================
[*] Testing started. 2012-02-26 13:17:33 +0100
[*]
=[ SSL testing ]=
[*] ============================================================
[*] Target is not SSL. SSL modules disabled.
[*]
=[ Web Server testing ]=
[*] ============================================================
[*] Module auxiliary/admin/http/contentkeeper_fileaccess

[*] [2012.02.26-13:17:48] Attempting to connect to 10.8.28.2:80
[-] [2012.02.26-13:17:48] Attempt returned HTTP error 404 on 10.8.28.2:80 Response:
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<snip>
[-] [2012.02.26-13:18:05] Attempt returned HTTP error 404 on 10.8.28.2:80:file->/etc/inetd.conf
[-] [2012.02.26-13:18:05] Attempt returned HTTP error 404 on 10.8.28.2:80:file->/etc/xinetd.conf
[+] [2012.02.26-13:18:05] No File(s) found
[*] Module auxiliary/scanner/http/cisco_nac_manager_traversal
[*] [2012.02.26-13:18:05] Attempting to connect to 10.8.28.2:80
[-] [2012.02.26-13:18:05] Attempt #1 returned HTTP error 404 on 10.8.28.2:80

[-] [2012.02.26-13:18:05] Attempt #2 returned HTTP error 404 on 10.8.28.2:80

[-] [2012.02.26-13:18:05] Attempt #3 returned HTTP error 404 on 10.8.28.2:80

[-] [2012.02.26-13:18:05] Attempt #4 returned HTTP error 404 on 10.8.28.2:80

[-] [2012.02.26-13:18:05] Attempt #5 returned HTTP error 404 on 10.8.28.2:80

[-] [2012.02.26-13:18:05] Attempt #6 returned HTTP error 404 on 10.8.28.2:80

[-] [2012.02.26-13:18:05] Attempt #7 returned HTTP error 404 on 10.8.28.2:80

[*] Module auxiliary/scanner/http/frontpage_login
[*] [2012.02.26-13:18:05] http://10.8.28.2/ may not support FrontPage Server Extensions
[*] Module auxiliary/scanner/http/http_version
[*] [2012.02.26-13:18:06] 10.8.28.2:80 Apache/2.2.14 (Ubuntu)
[*] Module auxiliary/scanner/http/open_proxy
[*] Module auxiliary/scanner/http/options
[*] [2012.02.26-13:18:06] 10.8.28.2 allows GET,HEAD,POST,OPTIONS methods
[*] Module auxiliary/scanner/http/robots_txt
[*] [2012.02.26-13:18:06] [10.8.28.2] /robots.txt - Doesn't contain "llow:"
[*] Module auxiliary/scanner/http/soap_xml
[*] [2012.02.26-13:18:21] Server returned HTTP 404 for /.  Use a different one.
[*] Module auxiliary/scanner/http/svn_scanner
[*] [2012.02.26-13:18:21] Using code '404' as not found.
[*] Module auxiliary/scanner/http/verb_auth_bypass
[*] [2012.02.26-13:18:21] [10.8.28.2] Authentication not required. / 200
<snip>

Der ganze Wmap Analysevorgang dauert durchaus lange und wir als Pentester können unsere gewonnene Zeit für weitere manuelle Analysen der Zielumgebung nutzen (oder einfach einen Kaffee trinken gehen ...).

Wenn Wmap fertig ist können wir unsere typischen Datenbankabfragen "services", "vulns" und "notes" mit weiteren Filtern zur Auswertung nutzen.

Falls ihr weitere Informationen zu Metasploit benötigt findet ihr diese in meinem Buch. Erste Probekapitel findet ihr zudem auf der dpunkt-Webseite. Das Buch lässt sich natürlich auf Amazon bestellen.

have phun,
mIke