no one is safe ...

Exploiting

Automatisierung im Rahmen eines Pentests - part 7 (fileformat generator)

Der mittlerweile siebte Teil meiner kleinen Automatisierungsserie. Dieses Mal geht es um die automatische Erstellung von Fileformat Exploits.

Bis vor kurzem hatte Metasploit ein Auxiliary Modul mit dem Namen file_autopwn. Dieses wurde mittlerweile aus dem Framework entfernt. Da speziell für Clienttests solche Format Exploits häufig benötigt werden und es nicht sehr lustig ist diese alle manuell auf der Kommandozeile zu erstellen, habe ich ein kleines Resource File erstellt. Dieses Resource File geht alle Fileformat Exploits durch und erstellt entsprechende Files. Mit den globalen Optionen WIN_PAYL, OSX_PAYL und MULTI_PAYL ist es möglich den zu nutzenden Payload zu konfigurieren. Die Grundeinstellung verwendet für Windows Files einen Messagebox Payload und für alle anderen einen Bind Payload. Zudem lässt sich mit der Option "setg HANDLERS true" einstellen ob ein Multi-Handler gestartet werden soll.

Automatisierung im Rahmen eines Pentests - part 6 (password fu)

Im Rahmen typischer Pentests werden auch Angriffe auf unterschiedliche Loginservices durchgeführt. Metasploit bringt hierfür eine Vielzahl unterschiedlicher Module mit. Sucht einfach nach Auxiliary Modulen welche im Namen "_login" inkludiert haben. Werden im Rahmen dieser Bruteforce Vorgänge verschiedene Credentials erkannt, kann die creds Abfrage beispielsweise folgendermaßen ausschauen:

10.8.28.2 - (Sessions: 0 Jobs: 0)> creds

Credentials
===========

host           port  user       pass                 type         active?
----           ----  ----       ----                 ----         -------
192.168.44.22  21    anonymous  mozilla@example.com  password_ro  true
192.168.44.23  21    anonymous  mozilla@example.com  password_ro  true
192.168.44.23  22    test       test                 password     true
192.168.44.26  445   bob        bob                  password     true
192.168.44.26  21    anonymous  mozilla@example.com  password_ro  true

[*] Found 5 credentials.

Metasploit Expert Training 2012

Dieses Hands-On-Training zeigt Ihnen, wie Sie das Maximum aus dem Metasploit Framework herausholen um damit professionelle und verantwortungsvolle Penetrationstests sowie erweiterte, kreative Angriffssimulationen durchführen können. Es wird dargestellt wie professionelle Pentester die Grenzen des Frameworks in Kombination mit weiteren Tools und eigenen Skripten ausreizen und damit die zu prüfende Umgebung wesentlich effektiver auf mögliches Angriffspotential hin untersuchen können.

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.

Automatisierung im Rahmen eines Pentests - part 4 (Web discovery)

Teil 4 der Automatisierungsserie :) Im bisherigen Verlauf haben wir Systeme und Services ermittelt und haben in Teil 3 unsere langwierigen Passwortangriffe gestartet. Während diese Bruteforce Vorgänge weiter laufen, lassen sich bereits weitere Aktionen gegen die Zielumgebung starten. In internen Netzwerken trifft man für gewöhnlich auf sehr viele Webserver die möglichst alle zumindest einer Basisuntersuchung unterzogen werden müssen.

Nach dem Discoveryvorgang kann das beispielsweise folgendermaßen aussehen:

10.8.28.2 - (Sessions: 4 Jobs: 0)> services -s http

Services
========

host         port   proto  name  state  info
----         ----   -----  ----  -----  ----
10.8.28.2    80     tcp    http  open   Apache/2.2.14 (Ubuntu)
10.8.28.5    8080   tcp    http  open
10.8.28.5    80     tcp    http  open   Apache/1.3.34 (Debian)
10.8.28.24   80     tcp    http  open   Apache/1.3.28 (Unix) mod_ssl/2.8.15 OpenSSL/0.9.7c
10.8.28.24   443    tcp    http  open   Apache httpd 1.3.28 (Unix) mod_ssl/2.8.15 OpenSSL/0.9.7c
10.8.28.29   80     tcp    http  open   Apache httpd 2.2.3 (CentOS)
10.8.28.29   443    tcp    http  open   Apache httpd 2.2.3
10.8.28.32   80     tcp    http  open   Apache/2.2.8 (Ubuntu) PHP/5.2.4-2ubuntu5.10 with Suhosin-Patch
10.8.28.35   80     tcp    http  open   Apache/2.2.3 (Ubuntu) PHP/5.2.1
10.8.28.36   7025   tcp    http  open   Surgemail webmail DNews based
10.8.28.36   80     tcp    http  open   Microsoft-IIS/5.1 ( Powered by ASP.NET )
10.8.28.50   80     tcp    http  open   Microsoft-IIS/5.0
10.8.28.52   80     tcp    http  open   Apache/2.2.3 (CentOS) ( Powered by PHP/5.1.6 )
<snip>