Wir sprechen weiterhin über nützliche Werkzeuge für Pentester. In einem neuen Artikel werden Tools zur Analyse der Sicherheit von Webanwendungen behandelt.
Unsere Kollegin
BeLove hat bereits vor etwa sieben Jahren eine ähnliche
Auswahl getroffen . Es ist interessant zu sehen, welche Tools ihre Positionen beibehalten und gestärkt haben und welche in den Hintergrund getreten sind und derzeit nur noch selten eingesetzt werden.

Beachten Sie, dass Burp Suite auch hier gilt, es jedoch eine separate Veröffentlichung über ihn und seine nützlichen Plugins geben wird.
Inhalt:
Sammeln
Amass ist ein Go-Tool zum Suchen und
Auflisten von DNS-Subdomänen und zum
Zuordnen eines externen Netzwerks. Amass ist ein OWASP-Projekt, das zeigen soll, wie Organisationen im Internet wie ein externer Beobachter aussehen. Amass empfängt Subdomainnamen auf verschiedene Arten. Das Tool verwendet sowohl die rekursive Aufzählung von Subdomains als auch die Open Source-Suche.
Um miteinander verbundene Netzwerksegmente und autonome Systemnummern zu erkennen, verwendet Amass die während des Betriebs erhaltenen IP-Adressen. Alle gefundenen Informationen werden zum Erstellen einer Netzwerkkarte verwendet.
Vorteile:
- Zu den Techniken zum Sammeln von Informationen gehören:
* DNS - Aufzählung von Subdomänen im Wörterbuch, Bruteforce-Subdomänen, „intelligente“ Aufzählung mithilfe von Mutationen basierend auf gefundenen Subdomänen, umgekehrte DNS-Abfragen und Suche nach DNS-Servern, auf denen eine Zonenübertragungsanforderung (AXFR) gestellt werden kann;
* Suche in offenen Quellen - Fragen, Baidu, Bing, CommonCrawl, DNSDB, DNSDumpster, DNSTable, Dogpile, Exalead, FindSubdomains, Google, IPv4Info, Netcraft, PTRArchive, Riddler, SiteDossier, ThreatCrowd, VirusTotal, Yahoo;
* Durchsuchen von Datenbanken mit TLS-Zertifikaten - Censys, CertDB, CertSpotter, Crtsh, Entrust;
* Verwenden von Suchmaschinen-APIs - BinaryEdge, BufferOver, CIRCL, HackerTarget, PassiveTotal, Robtex, SecurityTrails, Shodan, Twitter, Umbrella, URLScan;
* Durchsuchen Sie die Webarchive des Internets: ArchiveIt, ArchiveToday, Arquivo, LoCArchive, OpenUKArchive, UKGovArchive, Wayback; - Integration mit Maltego;
- Bietet die umfassendste Abdeckung der Aufgabe, DNS-Subdomänen zu finden.
Nachteile:
- Genauer gesagt mit amass.netdomains - es wird versucht, auf jede IP-Adresse in der identifizierten Infrastruktur zuzugreifen und Domänennamen von Reverse-DNS-Abfragen und TLS-Zertifikaten abzurufen. Dies ist eine „laute“ Technik, die Ihre nachrichtendienstlichen Aktionen in der untersuchten Organisation offenbaren kann.
- Hoher Speicherverbrauch, kann bis zu 2 GB RAM in verschiedenen Einstellungen verbrauchen, wodurch dieses Tool nicht in der Cloud auf einem billigen VDS ausgeführt werden kann.

Altdns
Altdns ist ein Python-Tool zum
Erstellen von Wörterbüchern zum
Auflisten von DNS-Subdomänen. Mithilfe von Mutationen und Permutationen können Sie viele Varianten von Subdomänen generieren. Dazu verwenden wir Wörter, die häufig in Subdomains vorkommen (z. B. test, dev, staging). Alle Mutationen und Permutationen werden auf bereits bekannte Subdomains angewendet, die in Altdns eingegeben werden können. Die Ausgabe ist eine Liste von Variationen von Subdomänen, die möglicherweise vorhanden sind, und diese Liste kann später mit DNS Brute Force verwendet werden.
Vorteile:
- Funktioniert gut mit großen Datenmengen.
Aquaton
Aquaton - war früher besser als ein anderes Werkzeug zum Auffinden von Subdomänen bekannt, aber der Autor selbst gab dies zugunsten des oben genannten Amass auf. Aquatone wurde jetzt auf Go umgeschrieben und ist eher für die vorläufige Erkundung von Websites gedacht. Zu diesem Zweck durchsucht aquatone die angegebenen Domänen und sucht an verschiedenen Ports nach Websites. Anschließend werden alle Informationen zur Website gesammelt und ein Screenshot erstellt. Praktisch für schnelle vorläufige Informationen auf Websites, nach denen Sie vorrangige Ziele für Angriffe auswählen können.
Vorteile:
- Bei der Ausgabe wird eine Gruppe von Dateien und Ordnern erstellt, die für die weitere Arbeit mit anderen Tools geeignet sind:
* HTML-Bericht mit gesammelten Screenshots und gruppiert nach Ähnlichkeitsantwort-Headern;
* Eine Datei mit allen URLs, auf denen Websites gefunden wurden;
* Datei mit Statistiken und Seitendaten;
* Ein Ordner mit Dateien, die Antwortheader der gefundenen Ziele enthalten.
* Ein Ordner mit Dateien, die den Hauptteil der Antwort der gefundenen Ziele enthalten.
* Screenshots gefundener Websites; - Unterstützt die Arbeit mit XML-Berichten von Nmap und Masscan.
- Verwendet kopfloses Chrome / Chromium zum Rendern von Screenshots.
Nachteile:
- Es kann die Aufmerksamkeit von Intrusion Detection-Systemen auf sich ziehen, daher ist eine Konfiguration erforderlich.
Der Screenshot wurde für eine der alten Versionen von aquatone (v0.5.0) aufgenommen, in der die Suche nach DNS-Subdomänen implementiert wurde. Alte Versionen finden Sie auf
der Release-Seite .
Screenshot aquatone v0.5.0MassDNS
MassDNS ist ein weiteres Tool zum Auffinden von DNS-Subdomänen. Der Hauptunterschied besteht darin, dass DNS-Abfragen direkt an viele verschiedene DNS-Resolver gesendet werden und dies mit einer beträchtlichen Geschwindigkeit.
Vorteile:
- Schnelle Auflösung von mehr als 350.000 Namen pro Sekunde.
Nachteile:
- MassDNS kann die verwendeten DNS-Resolver erheblich belasten, was zu einem Verbot dieser Server oder zu Beschwerden bei Ihrem Anbieter führen kann. Darüber hinaus werden die DNS-Server des Unternehmens stark belastet, wenn sie über diese verfügen und für die Domänen verantwortlich sind, die Sie auflösen möchten.
- Die Liste der Resolver ist jetzt veraltet. Wenn Sie jedoch defekte DNS-Resolver auswählen und neue hinzufügen, ist alles in Ordnung.

nsec3map
nsec3map ist ein Python-Tool zum
Abrufen einer vollständigen Liste der durch DNSSEC geschützten Domänen.
Vorteile:
- Es erkennt schnell Hosts in DNS-Zonen mit einer Mindestanzahl von Abfragen, wenn die DNSSEC-Unterstützung in der Zone aktiviert ist.
- Es enthält ein Plugin für John the Ripper, mit dem die empfangenen NSEC3-Hashes geknackt werden können.
Nachteile:
- Viele DNS-Fehler werden nicht richtig behandelt.
- Es gibt keine automatische Parallelisierung der Verarbeitung von NSEC-Datensätzen. Sie müssen den Namespace manuell aufteilen.
- Hoher Speicherverbrauch.
Acunetix
Acunetix ist ein Web-Schwachstellenscanner, der die Überprüfung der Sicherheit von Webanwendungen automatisiert. Testet die Anwendung auf SQL Injection, XSS, XXE, SSRF und viele andere Web-Schwachstellen. Wie jeder andere Scanner vieler Web-Schwachstellen ersetzt er jedoch nicht den Pentester, da komplexe Ketten von Schwachstellen oder Schwachstellen in der Logik nicht gefunden werden können. Es deckt jedoch viele verschiedene Schwachstellen ab, einschließlich verschiedener CVEs, die der Pentester vergessen könnte. Daher ist es sehr praktisch, um von Routineprüfungen befreit zu werden.
Vorteile:
- Niedrige Fehlalarme
- Ergebnisse können als Berichte exportiert werden.
- Führt eine große Anzahl von Überprüfungen auf verschiedene Schwachstellen durch;
- Paralleles Scannen mehrerer Hosts.
Nachteile:
- Es gibt keinen Deduplizierungsalgorithmus (Acunetix betrachtet die Seiten in ihrer Funktionalität als gleich, da sie unterschiedliche URLs haben), aber die Entwickler arbeiten daran.
- Es erfordert die Installation auf einem separaten Webserver, was das Testen von Client-Systemen mit einer VPN-Verbindung und die Verwendung eines Scanners in einem isolierten Segment eines lokalen Client-Netzwerks erschwert.
- Der untersuchte Dienst kann beispielsweise „ein Geräusch machen“ und zu viele Angriffsmethoden in die Form der Kommunikation auf der Site senden, wodurch die Geschäftsprozesse erheblich verkompliziert werden.
- Es ist eine proprietäre und dementsprechend nicht freie Lösung.

Dirsearch
Dirsearch ist ein Python-Tool für Brute-Force-Verzeichnisse und -Dateien auf Websites.
Vorteile:
- Es kann echte "200 OK" -Seiten von "200 OK" -Seiten unterscheiden, jedoch mit dem Text "Seite nicht gefunden";
- Kommt mit einem praktischen Wörterbuch, das eine gute Balance zwischen Größe und Sucheffizienz bietet. Enthält Standardpfade, die vielen CMS- und Technologie-Stacks gemeinsam sind.
- Eigenes Wörterbuchformat, mit dem Sie eine gute Effizienz und Flexibilität beim Sortieren von Dateien und Verzeichnissen erzielen können;
- Bequeme Ausgabe - einfacher Text, JSON;
- Kann drosseln - eine Pause zwischen den Anforderungen, die für jeden schwachen Service von entscheidender Bedeutung ist.
Nachteile:
- Erweiterungen müssen als Zeichenfolge übertragen werden. Dies ist unpraktisch, wenn Sie mehrere Erweiterungen gleichzeitig übergeben müssen.
- Um Ihr Wörterbuch verwenden zu können, muss es für maximale Effizienz leicht an das Format der Dirsearch-Wörterbücher angepasst werden.

wfuzz
wfuzz - Python Fuzzer für Webanwendungen. Wahrscheinlich einer der bekanntesten Web-Phaser. Das Prinzip ist einfach: Mit wfuzz können Sie jede Stelle in der HTTP-Anforderung phasenweise ausführen, wodurch GET / POST-Parameter, HTTP-Header, einschließlich Cookies und andere Authentifizierungsheader, phasenweise ausgeführt werden können. Gleichzeitig ist es praktisch für einfache Bruteforce-Verzeichnisse und -Dateien, für die ein gutes Wörterbuch erforderlich ist. Es verfügt außerdem über ein flexibles Filtersystem, mit dem Sie Antworten von einer Website nach verschiedenen Parametern filtern können, um effektive Ergebnisse zu erzielen.
Vorteile:
- Multifunktional - modularer Aufbau, Montage dauert einige Minuten;
- Bequemer Filter- und Fuzzing-Mechanismus;
- Sie können jede HTTP-Methode sowie jede Stelle in der HTTP-Anforderung in Phase bringen.
Nachteile:

ffuf
ffuf - Mit dem Web-Fuzzer von Go, der im „Image und der Ähnlichkeit“ von wfuzz erstellt wurde, können Sie Dateien, Verzeichnisse, URL-Pfade, Namen und Werte von GET / POST-Parametern sowie HTTP-Headern, einschließlich des Host-Headers für Brute Force virtueller Hosts, bruten. Wfuzz unterscheidet sich von seinem Gegenstück durch eine höhere Geschwindigkeit und einige neue Funktionen, z. B. Wörterbücher im Dirsearch-Format, werden unterstützt.
Vorteile:
- Filter ähneln WFuzz-Filtern. Mit ihnen können Sie Bruteforce flexibel konfigurieren.
- Ermöglicht das Fuzzing der Werte von HTTP-Headern, POST-Anforderungsdaten und verschiedener Teile der URL, einschließlich der Namen und Werte von GET-Parametern.
- Sie können eine beliebige HTTP-Methode angeben.
Nachteile:

Gobuster
Gobuster - ein Tool zur Aufklärung von Go, verfügt über zwei Betriebsarten. Die erste wird verwendet, um Dateien und Verzeichnisse auf der Website zu erzwingen, die zweite, um DNS-Subdomänen zu durchlaufen. Das Tool unterstützt zunächst keine rekursive Aufzählung von Dateien und Verzeichnissen, was natürlich Zeit spart. Andererseits muss die Bruteforce jedes neuen Endpunkts auf der Website separat ausgeführt werden.
Vorteile:
- Hohe Arbeitsgeschwindigkeit sowohl für die Aufzählung von DNS-Subdomänen als auch für Brute-Force-Dateien und -Verzeichnisse.
Nachteile:
- Die aktuelle Version unterstützt die Installation von HTTP-Headern nicht.
- Standardmäßig werden nur einige der HTTP-Statuscodes als gültig angesehen (200, 204, 301, 302, 307).

Arjun
Arjun ist ein Tool zur Bruteforce versteckter HTTP-Parameter in GET / POST-Parametern sowie in JSON. Das integrierte Wörterbuch enthält 25.980 Wörter, die Ajrun in fast 30 Sekunden überprüft. Der Trick ist, dass Ajrun nicht jeden Parameter einzeln überprüft, sondern sofort ~ 1000 Parameter gleichzeitig überprüft und prüft, ob sich die Antwort geändert hat. Wenn sich die Antwort geändert hat, werden diese 1000 Parameter in zwei Teile geteilt und geprüft, welcher dieser Teile die Antwort beeinflusst. Mit einer einfachen binären Suche können Sie also einen Parameter oder mehrere versteckte Parameter finden, die die Antwort beeinflusst haben und daher existieren können.
Vorteile:
- Hohe Geschwindigkeit durch binäre Suche;
- Unterstützung für GET / POST-Parameter sowie Parameter in Form von JSON;
Das Plugin für Burp Suite,
Param-Miner , das auch sehr gut darin ist, versteckte HTTP-Parameter zu finden, funktioniert nach einem ähnlichen Prinzip. Wir werden Ihnen in einem kommenden Artikel über Burp und seine Plugins mehr darüber erzählen.

Linkfinder
LinkFinder ist ein Python-Skript zum Suchen von Links in JavaScript-Dateien. Nützlich zum Auffinden versteckter oder vergessener Endpunkte / URLs in einer Webanwendung.
Vorteile:
- Schnell;
- Es gibt ein spezielles Plugin für Chrome, das auf LinkFinder basiert.
.
Nachteile:
- Unbequeme endgültige Schlussfolgerung;
- Analysiert kein JavaScript in der Dynamik.
- Eine ganz einfache Logik zum Auffinden von Links: Wenn JavaScript in irgendeiner Weise verschleiert ist oder wenn Links anfänglich fehlen und dynamisch generiert werden, können Sie nichts finden.

Jsparser
JSParser ist ein Python-Skript, das
Tornado und
JSBeautifier verwendet , um relative URLs aus JavaScript-Dateien zu analysieren. Sehr nützlich zum Erkennen von AJAX-Anforderungen und zum Zusammenstellen einer Liste von API-Methoden, mit denen die Anwendung interagiert. Effektiv mit LinkFinder gekoppelt.
Vorteile:
- Schnelles Parsen von Javascript-Dateien.

sqlmap
sqlmap ist wahrscheinlich eines der bekanntesten Tools zur Analyse von Webanwendungen. Sqlmap automatisiert die Suche und den Betrieb von SQL-Injektionen, arbeitet mit mehreren SQL-Dialekten und verfügt über eine Vielzahl unterschiedlicher Techniken, die vom Anführungszeichen „in der Stirn“ reichen und mit komplexen Vektoren für zeitbasierte SQL-Injektionen enden. Darüber hinaus verfügt es über viele weitere Ausnutzungstechniken für verschiedene DBMS. Daher ist es nicht nur als Scanner für SQL-Injektionen nützlich, sondern auch als leistungsstarkes Tool zum Ausnutzen bereits gefundener SQL-Injektionen.
Vorteile:
- Eine große Anzahl verschiedener Techniken und Vektoren;
- Geringe Anzahl von Fehlalarmen;
- Viele Möglichkeiten zur Feinabstimmung, verschiedene Techniken, Zieldatenbank, Manipulationsskripte zur Umgehung der WAF;
- Fähigkeit, Ausgabedaten zu sichern;
- Es gibt viele verschiedene Betriebsoptionen, zum Beispiel für einige Datenbanken - automatisches Hochladen / Herunterladen von Dateien, Erhalten der Fähigkeit, Befehle (RCE) auszuführen, und andere;
- Unterstützung für die direkte Verbindung mit der Datenbank unter Verwendung der während des Angriffs erhaltenen Daten;
- Sie können eine Textdatei mit Burp-Ergebnissen an die Eingabe senden - Sie müssen nicht alle Befehlszeilenattribute manuell erstellen.
Nachteile:
- Es ist beispielsweise schwierig, einige Ihrer Schecks anzupassen, da hierfür nur wenige Unterlagen vorhanden sind.
- Ohne die entsprechenden Einstellungen werden unvollständige Überprüfungen durchgeführt, die irreführend sein können.

NoSQLMap
NoSQLMap ist ein Python-Tool zur Automatisierung der Suche und des Betriebs von NoSQL-Injektionen. Es ist praktisch, es nicht nur in NoSQL-Datenbanken zu verwenden, sondern auch direkt, wenn Webanwendungen mit NoSQL geprüft werden.
Vorteile:
- Wie sqlmap findet es nicht nur potenzielle Schwachstellen, sondern prüft auch die Möglichkeit seiner Ausnutzung für MongoDB und CouchDB.
Nachteile:
- Unterstützt NoSQL für Redis nicht, Cassandra, die Entwicklung geht in diese Richtung.
oxml_xxe
oxml_xxe ist ein Tool zum Einbetten von XXE-XML-Exploits in verschiedene Dateitypen, die das XML-Format in irgendeiner Form verwenden.
Vorteile:
- Es unterstützt viele gängige Formate wie DOCX, ODT, SVG, XML.
Nachteile:
- Nicht vollständig implementierte Unterstützung für PDF, JPEG, GIF;
- Erstellt nur eine Datei. Um dieses Problem zu lösen, können Sie das docem- Tool verwenden, mit dem eine große Anzahl von Nutzdaten an verschiedenen Stellen erstellt werden kann.
Die oben genannten Dienstprogramme testen XXE hervorragend, wenn Dokumente geladen werden, die XML enthalten. Vergessen Sie aber auch nicht, dass XML-Format-Handler in vielen anderen Fällen zu finden sind. Beispielsweise kann XML anstelle von JSON als Datenformat verwendet werden.
Wir empfehlen daher, dass Sie auf das folgende Repository achten, das eine große Anzahl verschiedener Nutzdaten enthält:
PayloadsAllTheThings .
tplmap
tplmap ist ein Python-Tool zum automatischen Erkennen und Ausnutzen von Sicherheitslücken bei der serverseitigen Vorlageninjektion. Es verfügt über ähnliche Einstellungen und Flags wie sqlmap. Es verwendet verschiedene Techniken und Vektoren, einschließlich Blindinjektion, und verfügt auch über Techniken zum Ausführen von Code und zum Laden / Entladen beliebiger Dateien. Darüber hinaus verfügt es in seinem Arsenal über Techniken für ein Dutzend verschiedener Engines für Vorlagen und einige Techniken zum Auffinden von eval () - ähnlichen Code-Injektionen in Python, Ruby, PHP, JavaScript. Öffnet bei erfolgreichem Betrieb eine interaktive Konsole.
Vorteile:
- Eine große Anzahl verschiedener Techniken und Vektoren;
- Unterstützt viele Engines zum Rendern von Vorlagen.
- Viele Betriebstechniken.
Cewl
CeWL ist ein Ruby-Wörterbuchgenerator, der zum Extrahieren eindeutiger Wörter von einer bestimmten Website entwickelt wurde. Er folgt Links auf einer Website bis zu einer bestimmten Tiefe. Das kompilierte Wörterbuch mit eindeutigen Wörtern kann später verwendet werden, um Kennwörter für Dienste oder Brute-Force-Dateien und -Verzeichnisse auf derselben Website zu erzwingen oder empfangene Hashes mit Hashcat oder John the Ripper anzugreifen. Nützlich beim Zusammenstellen einer "gezielten" Liste potenzieller Passwörter.
Vorteile:
Nachteile:
- Sie müssen mit der Tiefe der Suche vorsichtig sein, um keine zusätzliche Domain zu erfassen.
Schwacher Pass
Weakpass ist ein Dienst, der viele Wörterbücher mit eindeutigen Passwörtern enthält. Es ist äußerst nützlich für verschiedene Aufgaben im Zusammenhang mit dem Hacken von Passwörtern, angefangen von einem einfachen Online-Brute-Force-Konto für die
Zieldienste bis hin zu einem Offline-Brute-Force-Empfang von Hashes mit
Hashcat oder
John The Ripper . Bestehend aus ca. 8 Milliarden Passwörtern mit einer Länge von 4 bis 25 Zeichen.
Vorteile:
- Es enthält sowohl bestimmte Wörterbücher als auch Wörterbücher mit den häufigsten Kennwörtern. Sie können ein bestimmtes Wörterbuch für Ihre eigenen Anforderungen auswählen.
- Wörterbücher werden aktualisiert und mit neuen Passwörtern aktualisiert.
- Wörterbücher sind nach Leistung sortiert. Sie können eine Option sowohl für die schnelle Online-Brute-Force als auch für eine gründliche Auswahl von Passwörtern aus einem umfangreichen Wörterbuch mit den neuesten Lecks auswählen.
- Auf Ihrem Gerät befindet sich ein Taschenrechner, der die Brute-Time des Passworts anzeigt.

In einer separaten Gruppe möchten wir Tools für CMS-Prüfungen platzieren: WPScan, JoomScan und AEM-Hacker.
AEM_hacker
AEM-Hacker ist ein Tool zum Erkennen von Schwachstellen in Adobe Experience Manager (AEM) -Anwendungen.
Vorteile:
- Es kann AEM-Anwendungen anhand der Liste der URLs identifizieren, die ihm bei der Eingabe übermittelt wurden.
- Es enthält Skripte zum Abrufen von RCE durch Laden einer JSP-Shell oder Betreiben von SSRF.
Joomscan
JoomScan ist ein Perl-Tool zur Automatisierung der Erkennung von Sicherheitslücken bei der Bereitstellung von Joomla CMS.
Vorteile:
- Kann Konfigurationsfehler und Probleme mit den Administratoreinstellungen finden;
- Listet Versionen von Joomla und verwandten Sicherheitslücken auf, ähnlich für einzelne Komponenten.
- Enthält mehr als 1000 Exploits für Joomla-Komponenten.
- Ausgabe von Abschlussberichten in Text- und HTML-Formaten.

Wpscan
WPScan - ein Tool zum
Crawlen von Websites in WordPress - weist in seinem Arsenal Schwachstellen sowohl für die WordPress-Engine selbst als auch für einige Plugins auf.
Vorteile:
- Kann nicht nur unsichere WordPress-Plugins und -Themen auflisten, sondern auch eine Liste der Benutzer und TimThumb-Dateien abrufen.
- Es kann Brute-Force-Angriffe auf WordPress-Sites ausführen.
Nachteile:
- Ohne die entsprechenden Einstellungen werden unvollständige Überprüfungen durchgeführt, die irreführend sein können.

Im Allgemeinen bevorzugen verschiedene Menschen unterschiedliche Werkzeuge für die Arbeit: Sie sind alle auf ihre Weise gut, und was eine Person mochte, ist möglicherweise nicht für eine andere geeignet. Wenn Sie der Meinung sind, dass wir ein gutes Dienstprogramm zu Unrecht ignoriert haben, schreiben Sie darüber in den Kommentaren!