Penetrationstest-Tutorial: Was ist PenTest?
⚡ Intelligente Zusammenfassung
Bei einem Penetrationstest wird ein realer Angriff auf eine Anwendung, ein Netzwerk oder ein System simuliert, damit Sicherheitsteams ausnutzbare Schwachstellen aufspüren, deren Auswirkungen auf das Geschäft messen und diese beheben können, bevor ein Angreifer von außen dieselben Sicherheitslücken entdeckt.
Was ist Penetrationstest?
Penetrationstests oder Pen-Testing ist eine Art von Sicherheitstests Penetrationstests dienen dazu, Schwachstellen, Bedrohungen und Risiken aufzudecken, die Angreifer in Softwareanwendungen, Netzwerken oder Webanwendungen ausnutzen könnten. Ziel eines Penetrationstests ist es, alle möglichen Sicherheitslücken in der Softwareanwendung zu identifizieren und zu testen. Penetrationstests werden auch als Pen-Tests bezeichnet.
Das untenstehende Diagramm zeigt, wie eine ungepatchte Schwachstelle in einer Anwendung zur Einfallstor für einen Angreifer wird.
Eine Schwachstelle ist das Risiko, dass ein Angreifer ein System oder darin enthaltene Daten stören oder unbefugten Zugriff darauf erlangen kann. Schwachstellen entstehen üblicherweise unbeabsichtigt während der Softwareentwicklung und -implementierung. Zu den häufigsten Schwachstellen zählen Designfehler, Konfigurationsfehler und Softwarefehler. Die Penetrationsanalyse basiert auf zwei Mechanismen: der Schwachstellenanalyse und dem Penetrationstest (VAPT).
Die beiden Bestandteile von VAPT werden oft verwechselt. Eine Schwachstellenanalyse listet bekannte Schwachstellen umfassend auf und belässt es dabei, während ein Penetrationstest ausgewählte Schwachstellen gezielt ausnutzt, um deren Auswirkungen in der Praxis zu untersuchen. Zusammen angewendet, trennen sie theoretische Erkenntnisse von solchen, die Daten tatsächlich gefährden.
Warum Penetrationstests?
Penetrationstests sind in einem Unternehmen unerlässlich, weil:
- Finanzsektoren wie Banken, Investmentbanken und Börsen wollen, dass ihre Daten geschützt sind, und Penetrationstests sind unerlässlich, um die Sicherheit zu gewährleisten.
- Wurde das Softwaresystem bereits gehackt, möchte die Organisation feststellen, ob noch weitere Bedrohungen im System vorhanden sind, um zukünftige Angriffe zu vermeiden.
- Proaktive Penetrationstests sind der beste Schutz vor Hackern.
- Compliance-Rahmenwerke setzen dies voraus. Die PCI-DSS-Anforderung 11.4 beispielsweise fordert mindestens einmal jährlich und nach jeder wesentlichen Änderung interne und externe Penetrationstests.
Arten von Penetrationstests
Die Wahl der Penetrationstest-Art hängt üblicherweise vom Umfang ab und davon, ob das Unternehmen einen Angriff durch einen Mitarbeiter oder Netzwerkadministrator (interne Quellen) oder durch externe Quellen simulieren möchte. Es gibt drei Arten von Penetrationstests:
Beim Black-Box-Penetrationstest hat der Tester keinerlei Kenntnisse über die zu testenden Systeme. Er ist dafür verantwortlich, Informationen über das Zielnetzwerk oder -system zu sammeln.
Beim White-Box-Penetrationstest erhält der Tester in der Regel alle Informationen über das zu testende Netzwerk oder die Systeme, einschließlich IP-Adressschema, Quellcode und Betriebssystemdetails. Dies kann als Simulation eines Angriffs durch eine beliebige interne Quelle, beispielsweise einen Mitarbeiter des Unternehmens, betrachtet werden.
Beim Grey-Box-Penetrationstest erhält der Tester nur Teilkenntnisse über das System. Dies kann als Angriff eines externen Hackers betrachtet werden, der sich unrechtmäßigen Zugriff auf die Netzwerkinfrastrukturdokumente einer Organisation verschafft hat.
In der folgenden Tabelle werden die drei Typen nebeneinander dargestellt, sodass Sie den passenden Bedrohungstyp für Ihr Modell auswählen können.
| Aspekt | Schwarz Box | Weiß Box | Grau Box |
| Dem Tester gegebene Informationen | Keine Präsentation | Vollständig: Quellcode, IP-Schema, Betriebssystemdetails | Teilweise: eingeschränkte Nachweise oder Dokumente |
| Angreifer wird simuliert | Ein Außenstehender ohne Zugang | Ein Insider oder Entwickler | Ein Außenseiter, der bereits Fuß gefasst hat |
| Zeitaufwand für Aufklärung | Hoch | Niedrig | Moderat |
| Typische Abdeckung der Codebasis | Nur das, was von außen erreichbar ist | Am tiefsten, weil das Innere sichtbar ist. | Fokussiert auf den exponierten Angriffspfad |
So führen Sie Penetrationstests durch
Für die Durchführung eines Penetrationstests sind folgende Aktivitäten erforderlich. Die Abbildung unten fasst die vier Phasen zusammen, bevor jede einzelne im Folgenden beschrieben wird.
Schritt 1) Planungsphase
- Umfang und Strategie des Auftrags werden festgelegt
- Zur Definition des Geltungsbereichs werden bestehende Sicherheitsrichtlinien und -standards herangezogen.
Schritt 2) Entdeckungsphase
- Sammeln Sie so viele Informationen wie möglich über das System, einschließlich der Systemdaten, Benutzernamen und Passwörter. Dies wird auch als Fingerprinting bezeichnet.
- Scannen und untersuchen Sie die Ports
- Überprüfen Sie das System auf Schwachstellen
Schritt 3) Angriffsphase
- Finden Sie Exploits für die verschiedenen Sicherheitslücken. Sie benötigen die erforderlichen Sicherheitsberechtigungen, um das System auszunutzen.
Schritt 4) Berichtsphase
- Ein Bericht muss detaillierte Feststellungen enthalten
- Risiken durch festgestellte Schwachstellen und deren Auswirkungen auf das Geschäft
- Empfehlungen und Lösungen, falls vorhanden
Die Hauptaufgabe beim Penetrationstest besteht darin, Systeminformationen zu sammeln. Es gibt zwei Möglichkeiten, Informationen zu sammeln:
- „Eins-zu-eins“- oder „Eins-zu-viele“-Modell in Bezug auf den Host: Ein Tester führt Techniken linear entweder gegen einen einzelnen Zielhost oder gegen eine logische Gruppe durch.ping von Zielhosts (z. B. einem Subnetz).
- „Viele-zu-eins“- oder „Viele-zu-viele“-Modell: Der Tester nutzt mehrere Hosts, um Informationserfassungstechniken auf zufällige, ratenbegrenzte und nichtlineare Weise auszuführen.
Beispiele für Penetrationstest-Tools
Beim Penetrationstesting wird eine Vielzahl von Tools eingesetzt, und die wichtige Pentest-Tools sind:
1) Teramind
Teramind bietet eine umfassende Suite zur Abwehr von Insider-Bedrohungen und zur Mitarbeiterüberwachung. Es erhöht die Sicherheit durch Verhaltensanalysen und die Verhinderung von Datenverlust, stellt Compliance sicher und optimiert Geschäftsprozesse. Die anpassbare Plattform erfüllt verschiedene organisatorische Anforderungen und liefert umsetzbare Erkenntnisse, die sich auf die Steigerung der Produktivität und den Schutz der Datenintegrität konzentrieren.
Merkmale:
- Schutz vor Insiderbedrohungen: Erkennt und verhindert Benutzeraktionen, die auf Insiderbedrohungen für Daten hinweisen könnten.
- Geschäftsprozessoptimierung: Nutzt datengesteuerte Verhaltensanalysen zur Neudefinition von Betriebsprozessen.
- Produktivität der Belegschaft: Überwacht Produktivität, Sicherheit und Compliance-Verhalten der Belegschaft.
- Compliance-Management: Unterstützt das Compliance-Management mit einer einzigen, skalierbaren Lösung, die sich für kleine Unternehmen, Konzerne und Regierungsbehörden eignet.
- Vorfallforensik: Liefert Beweise zur Verbesserung der Reaktion auf Vorfälle, der Ermittlungen und der Bedrohungsanalyse.
- Datenverlustprävention: Überwacht und schützt vor dem potenziellen Verlust sensibler Daten.
- Mitarbeiterüberwachung: Bietet Funktionen zur Überwachung der Leistung und Aktivitäten der Mitarbeiter.
- Verhaltensanalyse: Analysiert detaillierte Kundendaten zum App-Verhalten, um Erkenntnisse zu gewinnen.
- Anpassbare Überwachungseinstellungen: Ermöglicht die Anpassung der Überwachungseinstellungen an spezifische Anwendungsfälle oder zur Implementierung vordefinierter Regeln.
- Dashboard Insights: Bietet durch ein umfassendes Dashboard Einblick und umsetzbare Erkenntnisse über die Aktivitäten der Belegschaft.
- NMap – Dieses Tool dient zum Port-Scanning und zur Betriebssystemidentifizierung. trace die Route und Schwachstellenscans.
- Nessus – Dies ist ein traditionelles, netzwerkbasiertes Schwachstellenanalyse-Tool.
- Pass-The-Hash – Dieses Tool wird hauptsächlich zum Knacken von Passwörtern verwendet.
Rolle und Verantwortlichkeiten von Penetrationstestern
Die Aufgabe eines Penetrationstesters ist es:
- Sammeln Sie die erforderlichen Informationen von der Organisation, um Penetrationstests zu ermöglichen.
- Finden Sie Schwachstellen, die es Hackern ermöglichen könnten, einen Zielcomputer anzugreifen
- Denke und handle wie echte Hacker, jedoch ethisch korrekt.
- Sorgen Sie dafür, dass die Arbeit reproduzierbar ist, damit Entwickler sie leicht beheben können.
- Legen Sie Start- und Enddatum der Testdurchführung im Voraus fest.
- Übernehmen Sie die Verantwortung für jeglichen System- oder Informationsverlust während des Vorgangs. Softwaretest
- Daten und Informationen vertraulich behandeln
Manuelle Penetrationstests vs. automatisierte Penetrationstests
Die meisten realen Engagements kombinieren beide Ansätze. Der folgende Vergleich zeigt, wo jeder Ansatz seine Berechtigung hat.
| Manueller Penetrationstest | Automatisierte Penetrationstests |
| Manuelle Prüfung erfordert die Durchführung der Tests durch erfahrene Fachleute | Automatisierte Testtools liefern klare Berichte für weniger erfahrene Fachleute |
| Für manuelle Tests werden Excel und andere Tools benötigt. track es | Automatisierungstests verfügt über zentralisierte und standardisierte Tools |
| Beim manuellen Testen variieren die Probenergebnisse von Test zu Test | Bei automatisierten Tests variieren die Ergebnisse nicht von Test zu Test |
| Die Benutzer sollten daran denken, den Speicher zu bereinigen. | Automatisierte Tests werden umfassende Bereinigungen beinhalten. |
Nachteile von Penetrationstests
Penetrationstests können nicht alle Schwachstellen im System aufdecken. Es gibt Einschränkungen hinsichtlich Zeit, Budget, Umfang und den Fähigkeiten der Penetrationstester.
Folgende Nebenwirkungen können bei Penetrationstests auftreten:
- Datenverlust und -beschädigung
- Down Time
- Kosten erhöhen
Die untenstehende Infografik fasst dieselben Abwägungen zusammen und nennt die Gründe, warum Organisationen den Test trotzdem durchführen.
Diese Einschränkungen sind der Grund, warum ein Penetrationstest am besten zusätzlich zu einer gut implementierten Sicherheitsrichtlinie funktioniert, nicht aber anstelle derselben. Tester sollten sich wie echte Hacker verhalten, überprüfen, ob der Code sicher geschrieben ist, und die Übung nach einem dokumentierten Zeitplan wiederholen.





