Pentesting Methodology
Ein kompakter Leitfaden für Pentester: Schritt-für-Schritt von der Informationsbeschaffung bis zur Post-Exploitation.
0 - Physical Attacks
Ziel: Direktes Eindringen in das System durch physischen Zugang. Dies ermöglicht es, Sicherheitsmechanismen zu umgehen, die sonst über das Netzwerk nicht erreichbar wären. Beispiel: Booten von einem USB-Stick.
1 - Hosts und Assets entdecken
Ziel: Identifiziere alle relevanten Geräte und Dienste innerhalb des Zielnetzwerks. Dies ist der erste Schritt, um eine Angriffsoberfläche zu schaffen und potenzielle Schwachstellen zu identifizieren. Beispiel: Nmap für Netzwerkscans.
2 - Netzwerkangriffe (Intern)
Ziel: Analysiere den Netzwerkverkehr, um wertvolle Informationen wie Anmeldeinformationen zu sammeln. Dies hilft, mögliche Angriffswege zu identifizieren und zu nutzen. Beispiel: Wireshark für Sniffing.
3 - Port-Scan und Service-Erkennung
Ziel: Erkenne, welche Dienste auf den Zielsystemen laufen, indem du offene Ports identifizierst. Dies ist essentiell, um gezielt nach Schwachstellen in diesen Diensten zu suchen. Beispiel: Nmap für Port-Scanning.
4 - Exploits für Service-Versionen suchen
Ziel: Finde und nutze bekannte Schwachstellen in den identifizierten Diensten, um Zugriff auf das System zu erhalten. Ein erfolgreicher Exploit kann oft direkten Zugriff ermöglichen. Beispiel: Exploit-DB für Exploits.
5 - Pentesting von Diensten
Ziel: Überprüfe die Konfiguration der entdeckten Dienste auf gängige Fehler, die ausgenutzt werden können. Auch ohne direkte Schwachstellen können Fehlkonfigurationen oft ausgenutzt werden. Beispiel: Burp Suite für Webanwendungen.
5.1 Automatische Tools
Ziel: Automatisiere die Suche nach Schwachstellen, um schnell einen Überblick über potenzielle Angriffsvektoren zu bekommen. Dies spart Zeit und deckt oft Schwachstellen auf, die manuell übersehen werden könnten. Beispiel: OpenVAS.
5.2 Brute-Forcing
Ziel: Erlange Zugriff auf Dienste durch das systematische Ausprobieren von Passwörtern. Diese Methode ist nützlich, wenn andere Angriffe keinen Erfolg hatten und starke Passwörter fehlen. Beispiel: Hydra für Passwortangriffe.
6 - Phishing
Ziel: Überzeuge Benutzer, sensible Informationen preiszugeben oder schädliche Software auszuführen. Phishing ist oft ein effektiver Weg, um Zugang zu internen Netzwerken zu erhalten. Beispiel: Social Engineering Toolkit (SET).
7 - Shell erhalten
Ziel: Erlange Kommandozeilenzugriff auf das Zielsystem, um weitere Angriffe durchzuführen. Eine Shell ermöglicht es dir, direkt mit dem System zu interagieren. Beispiel: Netcat für eine Reverse Shell.
8 - Arbeiten innerhalb des Systems
Ziel: Führe Befehle aus und sammle Informationen, um weitere Schwachstellen zu finden oder die Kontrolle über das System zu festigen. Dies ist entscheidend, um den nächsten Schritt im Angriff vorzubereiten. Beispiel: whoami
und ifconfig
zur Systeminfo.
9 - Exfiltration
Ziel: Extrahiere wertvolle Daten aus dem Zielsystem oder führe eigene Dateien ein. Dies ist oft der letzte Schritt, bevor das System verlassen wird. Beispiel: SCP zum Übertragen von Dateien.
10 - Privilegien-Eskalation
Ziel: Erhöhe deine Berechtigungen, um volle Kontrolle über das System zu erlangen. Dies ermöglicht es dir, alle Aktionen ohne Einschränkungen durchzuführen. Beispiel: sudo -l
zur Überprüfung von sudo-Berechtigungen.
10.2- Domain Privesc
Ziel: Erlange erweiterte Rechte innerhalb einer Domäne, um die Kontrolle über größere Teile der IT-Infrastruktur zu übernehmen. Dies ist besonders in Active Directory-Umgebungen wichtig. Beispiel: BloodHound für AD-Analysen.
11 - Post-Exploitation
11.1 - Looting
Ziel: Sichere sensible Daten wie Passwörter oder geheime Informationen, die auf dem System gespeichert sind. Dies kann auch den Zugang zu weiteren Systemen ermöglichen. Beispiel: mimikatz
für Passwort-Dumps.
11.2 - Persistenz
Ziel: Stelle sicher, dass du auch nach einem Neustart oder einer Wiederherstellung weiterhin Zugriff auf das System hast. Mehrere Persistenzmechanismen erhöhen die Wahrscheinlichkeit, dass der Zugang erhalten bleibt. Beispiel: Backdoor in Startskripte einfügen.
12 - Pivoting
Ziel: Verwende das kompromittierte System, um Zugriff auf weitere Systeme im Netzwerk zu erhalten. Pivoting ermöglicht es dir, Angriffe auf Systeme auszuweiten, die ursprünglich nicht erreichbar waren. Beispiel: SSH-Tunneling.
Last updated