Mit diesem Artikel startet eine Artikelserie über die verschiedenen Betrachtungsweisen bei der Durchführung eines Pentests.
„Pentests bilden die Aktionen von Angreifern nach, um Schwachstellen zu identifizieren“
Beginnen wir mit einer Definition. Ein Penetrationstest (oder kurz Pentest) ist ein Prüfprozess, bei dessen Durchführung die Abwehrmechanismen der getesteten Umgebung gezielten und kontrollierten Attacken ausgesetzt werden, um mögliche Schwachstellen zu identifizieren.
Für alle, die nicht in der IT-Branche arbeiten, hilft ein Vergleich mit dem Film „The Italian Job“: Eine der Darstellerinnen beginnt damit, einen Safe zu „attackieren“, um dessen Sicherheit zu testen.

Bei der Durchführung dieser Art von Tests werden konventionelle – oder offizielle – Methoden mit der „Kunst“ der Angreifer kombiniert, indem man in deren Fußstapfen tritt. Das bedeutet, dass die Standards OSSTMM (Open Source Testing Methodology Manual) und OWASP (Open Web Application Security Project) als Basis für den Test verwendet werden können.

Die Nutzung formeller Methoden erlaubt es, die Prozesse und Prozeduren auf unterschiedlichen Clients zu replizieren. Das ist aber noch nicht genug.

Wenn die Sicherheits-Spezialisten es mit komplexen Verteidigungssystem oder den individuellen Charakteristiken einzelner Unternehmen zu tun haben, müssen sie all ihre „magischen Kräfte“ einsetzen.

Ein paar Beispiele sollen die verschiedenen Szenarien illustrieren.

Angriff an allen Fronten

Der Pentest beginnt mit der Definition des Ziels. In Abhängigkeit der verwendeten Methode hat diese Phase unter Umständen unterschiedliche Namen, aber das Konzept ist dasselbe: Alle Informationen über die Organisation und das System sollen gesammelt werden, bevor es attackiert wird.

Das ist aus verschiedenen Gründen der wichtigste Part. Die Audit- und Pentest-Typen können anhand der Fülle im Voraus verfügbarer Informationen kategorisiert werden:

  • Liegen im Voraus detaillierte Informationen vor, handelt es sich um eine White Box.
  • Von einer Grey Box wird gesprochen, wenn unvollständige Informationen zur Verfügung gestellt wurden.
  • Prüfprozesse, die ohne Vorabinformationen des Unternehmens erfolgen, werden Black Box

Man stelle sich ein typisches Unternehmen vor, dessen Website auf einem externen Server gehostet wird. Diese Firma beauftragt einen Black Box Pentest (ohne Vorabinformationen). Beim Herausfinden der IP-Adresse des Hosting Providers merken die Tester, dass es sich um einen Shared Server handelt. Sie haben deshalb keine Berechtigung, einen Netzwerkangriff auf diesen Server zu starten. Aus dieser Sicht wäre es also ein Fehler, eine solche Attacke zu definieren oder vorzubereiten.

Ein anderes Beispiel: Das Unternehmen hostet seine Website bei einem Hosting Provider, aber eine WHOIS-Abfrage zeigt, dass der MX-Record des Mailservers auf die IP eines regionalen ISP (Internet Service Provider) zeigt.

Oder der MX liegt beim gleichen Hosting Provider, aber der SPF-Record (Sender Policy Framework) des Mailservers zeigt eine externe IP-Adresse an. Das ist die Angriffslinie, die genutzt werden muss: die IP-Adresse des Unternehmens und nicht die des externen Webservers.

„Bevor eine Organisation oder ein System attackiert wird, muss ein Ziel definiert werden“

Ist die „richtige“ IP-Adresse des Ziels nicht bekannt, kann eine E-Mail an das Unternehmen helfen. Zum Beispiel könnten wirtschaftliche Daten abgefragt werden. Oftmals sind die Mailserver so schlecht konfiguriert, dass im E-Mail-Header der Antwort die IP-Adresse abzulesen ist.

Auch das gezielte Durchsuchen der Unternehmenswebsite kann dabei helfen, die richtige IP-Adresse herauszufinden. Links zum Intra- oder Extranet, zu Kundenbereichen oder ähnlichen Ressourcen, die typischerweise auf den Unternehmensservern laufen und nicht auf dem externen Webserver, können die IP-Adresse verraten.

Die Website kann manuell durchsucht werden oder mit Hilfe eines Spiders wie Burp Proxy. Natürlich muss auch die robots.txt untersucht und ein Zonentransfer, zum Beispiel mit HackerTarget, ausprobiert werden.

Ist die IP-Adresse nun bekannt, kann der oben genannte WHOIS-Service genutzt werden, um das gesamte Adressen-Set des Unternehmens herauszufinden. Meist haben mittelgroße Unternehmen sehr viele öffentliche IP-Adressen und sie versuchen die Hauptadressen zu schützen, die am gefährdetsten sind und auf denen die wichtigen Dienste laufen.

Ein anderer wichtiger Aspekt während der initialen Erkundungsphase ist ein Blick auf die defensiven Fähigkeiten des Unternehmens. Die Durchführung von Tests auf hochsicheren Umgebungen ist etwas anderes als ein Test bei einem Unternehmen, das bekanntermaßen keine Sicherheitsmechanismen vorweist.

Angriff einer moderat gesicherten Umgebung

In einer moderat gesicherten Umgebung mit Web-Firewalls, Einbruchserkennung und Präventionsmaßnahmen muss behutsam vorgegangen werden. Die Systeme sollten den „Krach“ durch Web Application Tests, Port Scans und Brute Force Angriffe erkennen und sich in den Verteidigungsmodus begeben. Es kann deshalb sinnvoll sein, ein wenig Zeit in die Vorbereitung zu stecken, bevor der Angriff startet.

Zum Beispiel könnte ein Browser aus dem Tor-Netzwerk genutzt werden, um Anfragen von bösartigen User-Agents wie Nikto oder Openvas zu senden. Weitere Möglichkeiten sind einfache XSS/SQLi-Attacken, standardisierte Port Scans, Brute Force Attacken gegen ungeschützte Dienste oder das Stellen einer großen Anzahl von Anfragen pro Sekunde.

„Es müssen alle Mittel genutzt werden, um Zugang zu erlangen“
In Abhängigkeit der Ergebnisse können die Werkzeuge konfiguriert werden, die für einen mehr oder weniger tiefen Einbruch genutzt werden. Dabei ist immer zu bedenken, dass die einzelnen Aufgaben zur Umgehung der Sicherheitsmaßnahmen mit Zeit verbunden sind. Ein langsamer Scan aus dem Tor Browser – der wirklich sehr langsam ist – kann das Projekt um viele Stunden verlängern.

Prüfer wollen „die Burg einnehmen“ – auf jedem möglichen Weg. Normalerweise hat die Burg einen großen Wall, ein sicheres Tor und eine gute Verteidigung nach vorn. Deshalb ist es meist nicht möglich, sie durch die Vordertür zu betreten. Ein Angriff von allen Seiten ist nötig und alle Mittel müssen genutzt werden, um Zugang zu erlangen: um die Tür herumschleichen, einen Tunnel graben, durch ein Fenster steigen…

pen testing

Fragt ein Unternehmen nach einem Rat, welcher Pentest-Typ durchgeführt werden sollte, ist die Antwort in der Regel Black Box (ohne Vorabinformationen). Eine Organisation kann 10 öffentliche IP-Adressen haben und beauftragt nur den Test einer dieser, der „gefährdetsten“. Die Wahrscheinlichkeit, dass auch die anderen erhebliche Sicherheitsmängel vorweisen, ist sehr hoch.

Deshalb ist das der falsche Ansatz. Ein Angreifer in einem weit entfernten Land attackiert nicht ein spezielles Unternehmen, sondern hält Ausschau nach denen, die attackierbar sind Dabei unterscheidet er nicht zwischen IP-Adressen, die auf 103, 104 oder 105 enden.

Aus diesem Grund sollte immer das gesamte Set attackiert und getestet werden. Dabei erfordert das Black Box Audit immer das Einverständnis des Kunden. Ohne vorherige Erlaubnis sollte niemals ein Partner oder Provider attackiert werden.

Im nächsten Artikel der Serie werden weitere Tricks und Ansätze in einer anderen Phase des Pentests vorgestellt.