Pentester verwenden eine Reihe von Tools, um Informationen zu beschaffen, Schwachstellen aufzuspüren und wichtige Teile im Prozess eines Penetrationstests zu automatisieren. Zu den gängigsten Tools gehören unter anderem:
Spezialisierte Betriebssysteme: Die meisten Pentester verwenden Betriebssysteme, die für Penetrationstests und ethisches Hacken entwickelt wurden. Am beliebtesten ist Kali Linux, eine Open-Source-Linux-Distribution, in der Tools für Penetrationstests wie Nmap, Wireshark und Metasploit vorinstalliert sind.
Tools zum Knacken von Zugangsdaten: Diese Programme können Kennwörter identifizieren, indem sie Verschlüsselungen knacken oder Brute-Force-Angriffe starten. Dabei werden Bots oder Skripte eingesetzt, um automatisch potenzielle Kennwörter zu generieren und zu testen, bis eines funktioniert. Beispiele hierfür sind Medusa, Hyrda, Hashcat und John the Ripper.
Port-Scanner: Mit Port-Scannern können Pentester Geräte über Remote-Zugriff 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 weit verbreitet.
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 schickt, und Metasploit den Rest überlassen.