no one is safe ...

Exploiting

Automatisierung im Rahmen eines Pentests - part 3 (Brute force)

Teil 3 meiner kurzen Notizen zu möglichen Automatisierungsmechanismen des Frameworks. In Teil 1 wurde der Discovery Prozess weitgehend automatisch umgesetzt, in Teil 2 konnten wir automatisch die Ergebnisse etwas bereinigen und in diesem Teil werden wir umfangreiche Passwortangriffe weitgehend automatisch umsetzen.

Im Rahmen unserer Discovery Phase haben wir eine Vielzahl unterschiedlicher Systeme und Services ermittelt. Auf Basis dieser Ergebnisse werden im weiteren Verlauf Services die Login-Funktionalitäten bieten ausgewählt und mit umfassenden Bruteforce Vorgängen übersät. Da solche Bruteforce Vorgänge teilweise sehr lange dauern, sollten diese so früh wie möglich gestartet werden und neben weiteren Tätigkeiten erfolgen.

Metasploit liefert ein neues Resource File mit welches auf Basis der Datenbankinformationen folgende Module automatisch zur Anwendung bringt:

Automatisierung im Rahmen eines Pentests - part 2 (clean up)

In meinem ersten kurzen Artikel wurde die Automatisierung der Discovery Phase von Pentests dargestellt. Wird in dieser Phase der interne Metasploit TCP Scanner genutzt umfasst die Metasploit Datenbank für jeden geschlossenen Port einen Eintrag.


Automatisierung im Rahmen eines Pentests - part 1 (discovery)

Als erstes Resource Skript kommt das basic_discovery.rc Skript zum Einsatz. Dieses Skript automatisiert den ersten Portscanning-Vorgang mit Nmap und die weitere Informationsgewinnungsphase mit den folgenden internen Metasploit Modulen:

  • auxiliary/scanner/discovery/udp_sweep -> Kommt parallel zu Nmap zum Einsatz
  • auxiliary/scanner/portscan/tcp -> Alternative zu Nmap (speziell für Scans über Pivots interessant)
  • auxiliary/scanner/smb/smb_version
  • auxiliary/scanner/smb/smb2
  • auxiliary/scanner/netbios/nbname
  • auxiliary/scanner/smb/smb_enumshares

Automatisierungsmöglichkeiten in der Post-Exploitation Phase

Dieser Artikel dient als Ergänzung der Kapitel 4.3.1, Kapitel 5 sowie Kapitel 6.5 meines Buches „Metasploit – Das Handbuch zum Penetration-Testing-Framework“ und behandelt an dieser Stelle nicht alle Aspekte der Automatisierung im Rahmen der Post-Exploitation Phase. Weitere Informationen zu dieser Phase des Pentests lassen sich im Buch nachlesen. Auf der Webseite des dpunkt-Verlags sind zudem mehrere Kapitel im PDF-Format verfügbar.

Automatisierungsmechanismen sind in professionellen Pentests nicht mehr wegzudenken. Bereits in der Pre-Exploitation Phase startet der technische Teil eines Pentests mit der automatisierten Anwendung unterschiedlichster Scanning- bzw. Auxiliary-Module. Diese automatisierte Vorgehensweise ermöglicht eine möglichst schnelle Erfassung der zu analysierende Umgebung und gibt dem Pentester die Informationen die er zur weiteren Analyse benötigt. Auf Basis dieser Informationen werden Passwortangriffe eingeleitet und unter Umständen auch erste Exploitingvorgänge umgesetzt. In dieser folgenden Phase wo es darum geht einen ersten Zugriff zu erlangen, kommen umfangreiche weitere Automatisierungsmechanismen zur Anwendung. Zu diesen gehören eine möglichst einfache Anwendung passender Bruteforce Angriffsmodule sowie die Auswahl möglicher Exploitingmodule. Dabei ist zu beachten, dass eine automatische Anwendung von Exploits im Normalfall nicht erwünscht ist bzw. nur in Spezialfällen genutzt wird. Einer dieser Spezialfälle ist beispielsweise die automatisierte Anwendung des psexec-Moduls um eine umfangreiche Windowsumgebung auf den Pass-the-Hash Angriff zu testen. Wurden im Rahmen dieser Aktivitäten eine oder auch mehrere Sessions erlangt, gilt es die Post-Exploitation Tätigkeiten möglichst effektiv und optimiert umzusetzen.

Möglichkeit 1 - über das Sessionmanagement

OSCE - Offensive Security Certified Expert (nach dem OSCE ist vor dem OSCE)

Meiner Meinung nach ist das OSCE Training wohl das beste was es derzeit am Markt gibt. Für jeden der beim OSCP die Exploit-devel Extra Miles mit Freude gemacht hat, ist der OSCE die logische Folge ...


Während man beim OSCP noch eine riesen Toolbox an die Hand bekommt, wird diese Toolbox beim OSCE auf ein Tool eingestampft ... es bleibt nur mehr der Debugger (und der Editor über) :-D und den wird man hassen und lieben zugleich. Beim PWB (OSCP) hackt man noch etwas wild im Labor herum und führt typische Pentests durch ... beim OSCE blickt man hinter die Kulissen und lernt wie ein DoS nicht nur ein DoS ist, sondern wie der Absturz so kontrolliert wird, dass er davor noch den von uns manuell eingepflegten Code ausführt und das System für den Angreifer öffnet. Und dieser Code den wir ausführen wollen ist nicht immer ganz so einfach auszuführen, es wird gezeigt wie man kreativ unterschiedlichste Problembereiche (kleiner Buffer), Schutzmechanismen (ASLR) und unangenehme Nebenwirkungen (Bad Characters) umgehen kann. Es werden Eier gesucht und Buffer mit Nullbytes korrumpiert ... zudem wird der Teilnehmer mit Webapplikationen und Angriffen auf den Perimeter konfrontiert die eine wunderschöne Eskalationskette darstellen.