Was sind Penetrationstests?
Penetrationstests verwenden simulierte Angriffe, um Schwachstellen in Computersystemen ausfindig zu machen.
Isometrische Zeichnung mit Darstellung unterschiedlicher Büroangestellter, die alle IBM Security verwenden
Was sind Penetrationstests?

Ein Penetrationstest oder kurz „Pentest“ ist ein Sicherheitstest, bei dem ein Cyberangriff simuliert wird, um Schwachstellen in einem Computersystem aufzuspüren.

Penetrationstester sind Sicherheitsexperten, die fachkundig in der Kunst des präventiven Hackens sind, also in der Verwendung von Hacking-Tools und -Techniken, um Sicherheitsschwächen zu beseitigen, anstatt Schaden anzurichten. Unternehmen stellen Pentester ein, um simulierte Angriffe auf ihre Anwendungen, ihre Netze und auf andere Assets durchzuführen. Durch die Inszenierung vorgetäuschter Angriffe helfen Pentester den Sicherheitsteams, kritische Sicherheitsschwachstellen aufzudecken und das allgemeine Sicherheitsniveau zu verbessern.

Die Begriffe „präventives Hacken" und „Penetrationstest" werden zwar manchmal synonym verwendet, doch es gibt einen Unterschied. Präventives Hacken ist ein weiter gefasster Bereich der Cybersicherheit, der den Einsatz jeglicher Hacking-Kenntnisse zur Verbesserung der Netzsicherheit mit einschließt. Penetrationstests sind nur eine von vielen Methoden, die präventive Hacker anwenden. Präventive Hacker können auch Malware-Analysen, Risikobewertungen und andere Services anbieten.

Warum Unternehmen Pentests durchführen

Es gibt drei Hauptgründe, warum Unternehmen Pentests durchführen.

Pentests sind umfassender als reine Schwachstellenanalysen. Sowohl Penetrationstests als auch Schwachstellenanalysen helfen den Sicherheitsteams, Schwachstellen in Apps, Geräten und Netzen zu erkennen. Diese Methoden verfolgen jeweils geringfügig unterschiedliche Zielsetzungen, sodass viele Unternehmen beide einsetzen, anstatt sich nur auf die eine oder die andere zu verlassen. 

Bei Schwachstellenanalysen handelt es sich in der Regel um die wiederholte Durchführung automatisierter Scans, die ein System nach bekannten Schwachstellen durchsuchen und diese zur Überprüfung kennzeichnen. Sicherheitsteams verwenden Schwachstellenanalysen, um rasch nach gängigen Mängeln zu suchen.

Penetrationstests gehen noch einen Schritt weiter. Wenn Pentester Schwachstellen finden, nutzen sie diese in simulierten Angriffen aus, die das Verhalten von böswilligen Hackern imitieren. Auf diese Weise verschafft sich das Sicherheitsteam ein detailliertes Verständnis dafür, wie echte Hacker Schwachstellen ausnutzen könnten, um sich Zugriff auf sensible Daten zu verschaffen oder den Betrieb zu unterbrechen. Anstatt erraten zu wollen, was Hacker tun könnten, kann sich das Sicherheitsteam dieses Wissen zunutze machen, um Netzsicherheitsmaßnahmen für reale Cyberbedrohungen zu entwickeln.

Da Pentester sowohl automatisierte als auch manuelle Verfahren einsetzen, decken sie bekannte und nicht bekannte Schwachstellen auf. Da Pentester die von ihnen aufgespürten Schwachstellen aktiv ausnutzen, ist die Wahrscheinlichkeit, dass sie falsch-positive Ergebnisse liefern, geringer, denn wenn sie einen Mangel ausnutzen können, können das auch Cyberkriminelle. Da Penetrationstests in der Regel von externen Sicherheitsexperten als Service bereitgestellt werden, die sich den Systemen aus Hackerperspektive nähern, decken Penetrationstests häufig Mängel auf, die internen Sicherheitsteams gegebenenfalls entgehen. 

Experten für Cybersicherheit empfehlen die Durchführung von Pentests. Viele Experten für Cybersicherheit und Behörden empfehlen Penetrationstests als proaktive Sicherheitsmaßnahme. So hat beispielsweise die US-Bundesregierung (Link befindet sich außerhalb von ibm.com) im Jahr 2021 Unternehmen dringend dazu aufgefordert, angesichts der zunehmenden Anzahl von Ransomware-Angriffen zur Abwehr Penetrationstests einzusetzen. 

Die Durchführung von Pentests unterstützt und fördert die Einhaltung gesetzlicher Vorschriften. Datensicherheitsvorschriften wie etwa der Health Insurance Portability and Accountability Act (HIPAA) und die Datenschutz-Grundverordnung schreiben bestimmte Sicherheitsmaßnahmen vor. Penetrationstests können Unternehmen dabei helfen, die Einhaltung dieser Vorschriften nachzuweisen, indem sie sicherstellen, dass ihre Sicherheitsmaßnahmen wie vorgesehen funktionieren.

Andere Vereinbarungen schreiben Pentests ausdrücklich vor. Der Payment Card Industry Data Security Standard (PCI-DSS), der für Organisationen gilt, die Kreditkarten verarbeiten, fordert ausdrücklich die regelmäßige „Durchführung externer und interner Penetrationstests" (Link befindet sich außerhalb von ibm.com).

Pentests können auch die Einhaltung freiwilliger Standards zur Sicherstellung der Informationssicherheit wie ISO/IEC 27001 unterstützen (Link befindet sich außerhalb von ibm.com).

Arten von Pentests

Alle Penetrationstests beziehen einen simulierten Angriff auf die Computersysteme eines Unternehmens ein. Unterschiedliche Arten von Penetrationstests zielen jedoch auf jeweils unterschiedliche Arten von Unternehmensressourcen ab.

Penetrationstests für Anwendungen


Penetrationstests für Anwendungen suchen in Anwendungen und zugehörigen Systemen einschließlich Webanwendungen und Websites, mobilen und IoT-Anwendungen, Cloud-Apps und Anwendungsprogrammierschnittstellen (APIs) nach Schwachstellen.

Pentester beginnen häufig mit der Suche nach Schwachstellen, die in den Top 10 des Open Web Application Security Project (OWASP) (Link befindet sich außerhalb von ibm.com) aufgeführt sind. In den Top 10 des OWASP sind die kritischsten Sicherheitslücken in Webanwendungen in Form einer Liste zusammengefasst. Die Liste wird zwar regelmäßig aktualisiert, um die sich verändernde Cybersicherheitslandschaft widerzuspiegeln, aber zu den häufigsten Sicherheitslücken und Schwachstellen zählen Einschleusungen von schädlichem Programmcode, Fehlkonfigurationen und Authentifizierungsfehler. Jenseits der Top 10 des OWASP suchen Anwendungstests auch nach weniger verbreiteten Sicherheitsmängeln und Schwachstellen, die gegebenenfalls nur die jeweilige Anwendung betreffen.

Penetrationstests für Netze


Penetrationstests für Netze greifen das gesamte Computernetz des Unternehmens an. Es gibt zwei Hauptarten von Penetrationstests für Netze: externe Tests und interne Tests.

Bei externen Tests ahmen Pentester das Verhalten externer Hacker nach, um Sicherheitsprobleme in Assets mit Internetverbindung wie Servern, Routern, Websites und Computern von Mitarbeitern aufzuspüren. Sie werden als „externe Tests" bezeichnet, weil die Pentester versuchen, von außen in das Netz einzudringen.

Bei internen Tests imitieren Pentester das Verhalten von böswilligen Insidern oder Hackern mit gestohlenen Berechtigungsnachweisen. Ziel ist es, Schwachstellen aufzudecken, die eine Person von innerhalb des Netzes ausnutzen könnte – beispielsweise durch den Missbrauch von Zugriffsrechten, um sensible Daten zu stehlen. 

Penetrationstests für Hardware


Diese Sicherheitstests suchen nach Schwachstellen in Geräten, die mit dem Netz verbunden sind, wie etwa Laptops, mobile und IoT-Geräte sowie Betriebstechnologie (Operational Technology, OT).

Pentester suchen möglicherweise nach Softwarefehlern, z. B. nach einer Schwachstelle im Betriebssystem, über die Hacker die Möglichkeit erhalten, sich per Remotezugriff Zugang zu einem Endgerät zu verschaffen. Sie können auch nach physischen Schwachstellen suchen, z. B. nach einem unzureichend abgesicherten Rechenzentrum, in das Akteure mit böswilligen Absichten eindringen könnten. Das Testteam untersucht gegebenenfalls auch, wie Hacker von einem manipulierten Gerät in andere Bereiche des Netzes vordringen könnten.

Penetrationstests für die Mitarbeiter


Pentests für die Mitarbeiter durchsuchen die Cybersicherheitshygiene der Belegschaft nach Schwachstellen. Anders ausgedrückt wird bei diesen Sicherheitstests bewertet, wie anfällig ein Unternehmen gegenüber Angriffen durch Social Engineering ist.

Pentester, die bei ihren Testaktivitäten die Belegschaft ins Visier nehmen, verwenden Taktiken wie Phishing, Vishing (Voice-Phishing) und Smishing (SMS-Phishing), um Mitarbeiter zur Preisgabe vertraulicher Informationen zu verleiten. Pentests für die Belegschaft können auch eine Analyse der physischen Sicherheit von Räumlichkeiten einbeziehen. So zum Beispiel könnten Pentester versuchen, sich als Lieferanten getarnt in ein Gebäude einzuschleichen. Diese als „Tailgating" bezeichnete Methode wird häufig von echten Kriminellen angewendet.

Das Verfahren bei Penetrationstests

Bevor ein Pentest beginnt, legen das Testteam und das Unternehmen den Testumfang fest. Der Umfang legt fest, welche Systeme getestet werden, zu welchem Zeitpunkt die Tests stattfinden und welche Methoden die Pentester anwenden können. Der Umfang bestimmt ebenfalls, wie viele Informationen den Pentestern im Vorfeld zur Verfügung stehen:

  • Bei einem Black-Box-Test liegen den Pentestern keine Informationen zum Zielsystem vor. Sie müssen sich bei der Entwicklung eines Plans für den Angriff auf ihre eigenen Nachforschungen verlassen, so wie es auch ein echter Hacker tun würde.
     

  • Bei einem White-Box-Test ist das Zielsystem für die Pentester komplett transparent. Das Unternehmen legt Details wie Netzdiagramme, Quellcode, Berechtigungsnachweise und vieles mehr offen.
     

  • Bei einem Gray-Box-Test erhalten Pentester einige Informationen, aber nur in beschränktem Maß. So könnte das Unternehmen beispielsweise IP-Bereiche für Netzgeräte zur gemeinsamen Nutzung freigeben, aber die Pentester müssten diese IP-Bereiche in Eigenregie auf Schwachstellen untersuchen.

Sobald der Umfang für die Testaktivität festgelegt ist, kann das eigentliche Testen beginnen. Pentester können einer Reihe von Testmethoden zur Durchführung von Penetrationstests folgen. Zu den gängigen Methoden gehören die OWASP-Richtlinien für die Prüfung der Anwendungssicherheit (Link befindet sich außerhalb von ibm.com), der Penetration Testing Execution Standard (PTES) (Link befindet sich außerhalb von ibm.com) und SP 800-115 des National Institute of Standards and Technology (NIST) (Link außerhalb von ibm.com).

Unabhängig davon, welche Methodik ein Testteam letztendlich verwendet, folgt der Prozess in der Regel denselben allgemeinen Schritten.

1. Erkundung (Ausspähung)


Das Testteam sammelt Informationen zum Zielsystem. Pentester verwenden je nach Ziel unterschiedliche Methoden für die Erkundung. Handelt es sich bei dem Ziel beispielsweise um eine App, könnten Pentester den Quellcode dieser Anwendung eingehend untersuchen. Handelt es sich bei dem Ziel hingegen um ein ganzes Netz, verwenden Pentester gegebenenfalls eine Analysefunktion für Pakete (Packet Sniffer), um die Flüsse des Datenverkehrs im Netz zu untersuchen.

Pentester stützen sich häufig auch auf Informationen aus öffentlich zugänglichen Quellen – auf so genannte Open Source Intelligence (OSINT). Durch das Lesen von öffentlich zugänglicher Dokumentation, Nachrichtenartikeln und sogar der Beiträge in Social-Media- und GitHub-Konten von Mitarbeitern können Pentester wertvolle Informationen über ihre Ziele zusammentragen.

2. Erkennung und Erschließung des Ziels


Die Pentester nutzen das in der Phase der Informationsbeschaffung gewonnene Wissen, um Schwachstellen im System zu identifizieren, die ausgenutzt werden können. Pentester könnten beispielsweise einen Port-Scanner wie Nmap verwenden, um nach offenen Ports zu suchen, an die sie dann Malware senden können. Für einen Social-Engineering-Penetrationstest könnte das Testteam eine gefälschte Geschichte oder einen „Vorwand" erfinden, die bzw. den es dann in einer Phishing-E-Mail anwendet, um die Berechtigungsnachweise von Mitarbeitern zu stehlen.

Im Rahmen dieses Schritts prüfen die Pentester gegebenenfalls, wie Sicherheitsfunktionen auf Versuche des Eindringens reagieren. Sie könnten zum Beispiel Datenverkehr mit hohem Risikopotenzial an die Firewall des Unternehmens senden, um zu sehen, was passiert. Pentester nutzen die gewonnenen Erkenntnisse, um im weiteren Verlauf des Tests nicht entdeckt zu werden.

3. Ausnutzung


Das Testteam beginnt jetzt mit der eigentlichen Hackerattacke. Je nach Zielsystem, den gefundenen Schwachstellen und dem Umfang des Tests können die Pentester eine Vielzahl von Angriffen ausprobieren. Zu den am häufigsten getesteten Angriffen zählen die folgenden:

  • SQL-Einschleusungen: Pentester versuchen, eine Webseite oder Anwendung durch die Eingabe von schädlichem Programmcode in Eingabefeldern zur Preisgabe sensibler Daten zu bringen.
     

  • Cross-Site Scripting: Pentester versuchen, schädlichen Programmcode in die Website eines Unternehmens einzuschleusen.
     

  • Denial-of-Service-Angriffe (DoS): Pentester versuchen, Server, Anwendungen und andere Netzressourcen durch gezielte Überflutung mit Datenverkehr offline zu schalten.
     

  • Social Engineering: Pentester wenden Phishing, Baiting (Köderangriffe), Pretexting (Angriffe durch glaubwürdige, aber erfundene Geschichten) oder andere Taktiken an, um Mitarbeiter dazu zu bringen, die Netzsicherheit zu kompromittieren.
     

  • Brute-Force-Angriffe: Pentester versuchen, in ein System einzubrechen, indem sie Scripts ausführen, die so lange potenzielle Kennwörter generieren und testen, bis eines funktioniert.
     

  • Man-in-the-Middle-Angriffe: Pentester fangen den Datenverkehr zwischen zwei Geräten oder Benutzern ab, um sensible Informationen zu stehlen oder Malware einzuschleusen.

4. Eskalation


Sobald Pentester eine Schwachstelle ausgenutzt haben, um im System Fuß zu fassen, versuchen sie, das System weiter zu erkunden oder ihren Zugriff auszuweiten. Diese Phase wird manchmal als „Schwachstellenverkettung" bezeichnet, weil sich die Pentester von einer Schwachstelle zur nächsten begeben, um immer tiefer in das Netz vorzudringen. Sie könnten zum Beispiel zunächst einen Keylogger in den Computer eines Mitarbeiters schmuggeln. Mit diesem Keylogger können sie die Berechtigungsnachweise des Mitarbeiters aufzeichnen. Mithilfe dieser aufgezeichneten Berechtigungsnachweise können sie dann auf eine Datenbank mit sensiblem Inhalt zugreifen.

In dieser Phase ist es das Ziel des Pentesters, den erlangten Zugriff weiter aufrechtzuerhalten und seine Privilegien auszubauen, dabei aber die Sicherheitsmaßnahmen zu umgehen. Pentester unternehmen all diese Schritte, um so genannte Advanced Persistent Threats (APTs) – hochentwickelte, langlebige Bedrohungen – nachzuahmen, die über Wochen, Monate oder gar Jahre in einem System im Verborgenen lauern können, bevor sie entdeckt werden.

5. Bereinigung und Berichterstellung


Am Ende des simulierten Angriffs beseitigen die Pentester alle Spuren, die sie gegebenenfalls hinterlassen haben, wie beispielsweise Backdoor-Trojaner, die von ihnen eingeschleust wurden, oder Konfigurationen, an denen sie Änderungen vorgenommen haben. Auf diese Weise können echte Hacker nicht die Exploits von Pentestern nutzen, um selbst in das Netz einzudringen.

Anschließend erstellen die Pentester einen Bericht, in dem sie den Angriff dokumentieren. In diesem Bericht werden in der Regel die gefundenen Schwachstellen, die verwendeten Exploits, die Art und Weise, wie die Sicherheitsfunktionen umgangen wurden, sowie ihre Aktionen innerhalb des Systems beschrieben. Der Bericht kann auch spezifische Empfehlungen zur Beseitigung (Korrektur) der Schwachstellen enthalten. Das unternehmensinterne Sicherheitsteam kann diese Informationen nutzen, um die Abwehrmaßnahmen gegen reale Angriffe zu verschärfen.

Tools für die Durchführung von Penetrationstests

Penetrationstester verwenden eine Reihe von Tools, um Informationen zu beschaffen, Schwachstellen aufzuspüren und wichtige Teile im Penetrationstest-Prozess zu automatisieren. Zu den gängigsten Tools zählen unter anderem die folgenden:

Spezialisierte Betriebssysteme: Die meisten Pentester verwenden Betriebssysteme, die für Penetrationstests und präventives Hacken entwickelt wurden. Das beliebteste ist Kali Linux, eine quelloffene Linux-Distribution, in der Tools für Penetrationstests wie Nmap, Wireshark und Metasploit vorinstalliert sind.

Tools zum Knacken von Berechtigungsnachweisen: Diese Programme können Kennwörter aufdecken, indem sie Verschlüsselungen knacken oder Brute-Force-Angriffe starten, bei denen Bots oder Scripts eingesetzt werden, um so lange potenzielle Kennwörter zu generieren und zu testen, bis eines funktioniert. Beispiele hierfür sind unter anderem Medusa, Hyrda, Hashcat und John the Ripper.

Port-Scanner: Mit Port-Scannern können Pentester Geräte über Remotezugriff auf offene und verfügbare Ports testen, die sie verwenden können, um in ein Netz einzudringen. Nmap ist der am häufigsten verwendete Port-Scanner, aber auch Masscan und ZMap sind gängig.

Schwachstellen-Scanner: Tools zum Durchsuchen auf Schwachstellen durchkämmen Systeme auf der Suche nach bekannten Schwachstellen und ermöglichen Pentestern, potenzielle Zugangswege zu einem Ziel zügig ausfindig zu machen. Beispiele für solche Scanner sind Nessus, Core Impact und Netsparker.

Scanner für Schwachstellen im Web bilden eine Untergruppe der Schwachstellen-Scanner und dienen der Schwachstellenanalyse von Webanwendungen und Websites. Beispiele hierfür sind Burp Suite und Zed Attack Proxy (ZAP) von OWASP.

Analysefunktionen für Pakete: Analysefunktionen für Pakete, die auch als „Packet Sniffer" bezeichnet werden, ermöglichen Pentestern, den Netzverkehr zu analysieren, indem sie Pakete erfassen und untersuchen. Pentester können herausfinden, woher der Datenverkehr stammt, wohin er führt und – in einigen Fällen – auch, welche Daten er enthält. Wireshark und tcpdump gehören zu den gängigsten Analysefunktionen für Pakete.

Metasploit: Metasploit ist ein Framework für Penetrationstests mit einer Vielzahl von Funktionen. Am wichtigsten ist jedoch, dass Pentester mit Metasploit in die Lage versetzt werden, Cyberangriffe zu automatisieren. Metasploit verfügt über eine integrierte Bibliothek mit vorab geschriebenen Exploit-Codes und Nutzlasten. Pentester können einen Exploit auswählen, ihm eine Nutzlast zuweisen, die er an das Zielsystem liefert, und Metasploit den Rest überlassen.

Relevante Lösungen
X-Force Red Penetration Testing Services

Durchführung von Penetrationstests für Ihre Anwendungen, Netze, Hardware und Belegschaft, um Schwachstellen, die Ihre wichtigsten Assets durch einen Angriff verletzbar machen, aufzudecken und zu beheben.

X-Force Red Penetration Testing Services erkunden
Offensive Sicherheitsservices von X-Force Red

X-Force Red ist ein globales Team von Hackern, die angeworben und damit beauftragt wurden, in Unternehmen einzudringen und risikobehaftete Schwachstellen aufdecken, die Angreifer zu ihrem eigenen Vorteil nutzen könnten.

Offensive Sicherheitsservices von X-Force Red erkunden
IBM Security QRadar XDR

Mit der branchenführenden XDR-Suite können Sie Bedrohungen schneller erkennen und beseitigen.

Mehr über IBM Security QRadar XDR erfahren
Ressourcen Was ist Threat-Hunting?

Threat-Hunting ist eine proaktive Methode, um bisher unbekannte oder laufende, noch nicht behobene Bedrohungen im Netz eines Unternehmens zu identifizieren.

Was ist ein Cyberangriff?

Cyberangriffe sind unerbetene Versuche, Informationen durch unbefugten Zugriff auf Computersysteme zu stehlen, offenzulegen, zu ändern, zu inaktivieren oder zu vernichten.

Was sind Insider-Bedrohungen?

Insider-Bedrohungen gehen von Benutzern aus, die berechtigten und rechtmäßigen Zugriff auf die Assets eines Unternehmens haben und diesen entweder absichtlich oder versehentlich missbrauchen.

Machen Sie den nächsten Schritt

X-Force Red verwendet die gleichen Tools, Techniken und Vorgehensweisen wie Kriminelle, um Szenarios für potenzielle Angriffe auszuarbeiten.Über X-Force Red Portal können alle an der Beseitigung von Schwachstellen beteiligten Personen die Testergebnisse unmittelbar nach Offenlegung der Schwachstellen einsehen und Sicherheitstests nach Belieben planen.

Mehr über X-Force Red Penetration Testing Services erfahren