Was ist ein Penetrationstest?
Mit einem Penetrationstest werden IT-Systeme und Netzwerkkomponenten mit ihrer Firmware, ihren Betriebssystemen, ihren Services und den Anwendungen untersucht. Das Ziel ist es, sicherheitsrelevante Schwachstellen zu finden, also Schwachstellen, die von einem externen oder internen Angreifer zum Schaden des Unternehmens ausgenutzt werden könnten. Solche Schwachstellen entstehen in der Regel durch fehlerhafte Programmierung oder durch unzureichende Konfiguration der Komponenten.
Der Test unterstützt die Betriebssysteme Windows, Linux, Unix, Android, iOS, Firewalls und alle gängigen Anwendungen, inklusive Web-Anwendungen wie Websites oder Webstores. Der Test kann in 2 Stufen erfolgen:
1. Über das Internet. Dabei werden Firewalls, Server und Anwendungen getestet, die über das Internet erreichbar sind.
2. Im Intranet, den internen Netzwerken eines Unternehmens. Es können Firewalls, Server, Arbeitsplatzgeräte, mobile Endgeräte und ihre Anwendungen in den Test aufgenommen werden.
Es hat sich als gute Praxis erwiesen, bei der Auswahl der zu testenden Systeme von den Geschäftsprozessen des Unternehmens auszugehen. Für einen Geschäftsprozess wird ein sogenannter Informationsverbund modelliert, der für den reibungslosen Ablauf dieses Geschäftsprozesses maßgeblich ist. Der Penetrationstest bezieht sich dann auf alle Systeme dieses Informationsverbundes. Bestimmte Systeme können vom Test auch ausgeschlossen werden.
Drehbuch eines Penetrationstest
"Wenn Sie Ihr Unternehmen schützen wollen, müssen Sie die Angriffsszenarien der Hacker kennen."
Das ist das Paradigma des Penetrationstests. Der Penetrationstest arbeitet mit den Angriffsszenarien und den Werkzeugen der Hacker. Der Penetrationstest folgt dabei dem Leitbild eines ethischen Hackers.
Dazu gehören die Leitlinien des Bundesamt für Sicherheit in der Informationstechnik (BSI) für Penetrationstests ebenso wie die Methodik nach dem Open Source Security Testing Methodology Manual (OSSTMM) des Institute for Security and Open Methodologies (ISECOM).
Wir haben für die Durchführung eines Penetrationstests ein „Drehbuch“ entwickelt.
Die darin enthaltenen Testfälle haben sich als sehr erfolgreich erwiesen. Sie werden im folgenden kurz erläutert.
Vor der Durchführung wird das genaue Vorgehen in jedem Fall noch mit der Geschäftsleitung abgestimmt.
Testfall |
Ergebnis |
||
1. Inventarisierung
Festlegen, welche Domains, Subdomains und internen IT-Systeme in den Test einbezogen werden sollen |
Liste von Domain- und Subdomainnamen und IP-Adressen | ||
2. Domainresearch
Die Beziehungen der Domains zu anderen Objekten im Internet werden ermittelt |
|
Grafische Darstellung |
|
3. Have you been pwned?
Untersuchen, ob Domains oder Email-Adressen in der Vergangenheit bereits einmal „gehackt“ wurden |
|
Liste der getesteten Zielobjekte mit Testergebnis, Risikoeinschätzung und ggf. Vorschlägen zur Optimierung |
|
|
4. IP-research
Portscan aller IP-Adressen und Ermittlung der Services und der Portstatus |
|
Liste der IP-Adressen mit ihren Ports, Services, Status und Hinweise zur Optimierung |
5. Shodan
Ermitteln, ob bereits Schwachstellen bei den Domains des Unternehmens durch öffentlich zugängliche Suchmaschinen gefunden wurden |
|
Liste der Ziel-Objekte ggf. mit ihren erkannten Schwachstellen und Hinweisen zur Optimierung |
|
6. SSL-Check
Überprüfung der Qualität der Verschlüsselung zu den Domains |
|
Liste derf geprüften IP-Adressen und ggf. Hinweise zur Optimierung |
|
7. NVD
Überprüfung der National Vulnerability Datenbank (NVD), ob in der im Unternehmen eingesetzten Software Schwachstellen bereits öffentlich bekannt sind. |
|
Liste der getesteten IP-Adressen und der Software mit Testergebnisen, Risikoeinschätzung und ggf. Vorschlägen zur Optimierung |
|
8. Firewall-Test
Ermittlung Status der Firewalls der Domains und der Server |
|
Liste der getesteten Firewalls mit Testergebnis, Risikoeinschätzung und ggf. Vorschlägen zur Optimierung |
|
9. NETBIOS-Test
Test auf sichere Konfiguration der NETBIOS-Schnittstelle |
|
Liste der getesteten IP-Adressen mit Testergebnis, Risikoeinschätzung und ggf. Vorschlägen zur Optimierung |
|
10. Pentestsuite für Server
Die Pentest-Suite untersucht das OS, die Ports und die damit verbundenen Services auf Schwachstellen. Es gibt ca. 180 Testfälle. Beispiele: Datenbanken, FTP, Webserver, SSH, Email |
|
Liste der getesteten IP-Adressen mit Testergebnis, Risikoeinschätzung und ggf. Vorschlägen zur Optimierung |
|
11. Pentest-Suite für Webapp / Webstore
Die Website-Testsuite testet Web-Applikationen auf mögliche Schwachstellen |
|
Liste der getesteten Websites mit Testergebnis, Risikoeinschätzung und ggf. Vorschlägen zur Optimierung |
|
12. SQLMap
Heuristische Suche nach Schwachstellen bei den Webapp/Webstore, die Zugriff auf die Datenbank ermöglichen. Hinweise könnten sich aus dem Testfall 11 ergeben haben. |
|
Liste der getesteten IP-Adressen mit Testergebnis, Risikoeinschätzung und ggf. Vorschlägen zur Optimierung |
|
13. DotDotPWN
Heuristische Suche nach Schwachstellen bei den Webapp/Webstore, die Zugriff auf das Dateisystem ermöglichen. Hinweise könnten sich aus dem Testfall 11 ergeben haben. |
Liste der getesteten IP-Adressen mit Testergebnis, Risikoeinschätzung und ggf. Vorschlägen zur Optimierung |
||
14. Testbericht und Review
Erstellung des Testberichts und Review mit dem Auftraggeber. |
|
Testbericht als PDF-Dokument mit einer Zusammenfassung und allen Detailergebnissen zu den Testfällen. |