Überprüfung kostenloser Tools zum Pentesting von Webressourcen und mehr v2

Vor einiger Zeit habe ich darüber geschrieben Dies, aber etwas dürftig und chaotisch. Anschließend habe ich beschlossen, die Liste der Tools im Testbericht zu erweitern, den Artikel zu strukturieren und Kritik zu berücksichtigen (vielen Dank Linke für Ratschläge) und schickte es an einen Wettbewerb auf SecLab (und veröffentlichte es). Link, aber aus offensichtlichen Gründen hat sie niemand gesehen). Der Wettbewerb ist vorbei, die Ergebnisse stehen fest und ich kann ihn (den Artikel) guten Gewissens auf Habré veröffentlichen.

Kostenlose Pentester-Tools für Webanwendungen

In diesem Artikel werde ich über die beliebtesten Tools zum Pentesting (Penetrationstests) von Webanwendungen mit der „Black-Box“-Strategie sprechen.
Dazu schauen wir uns Dienstprogramme an, die bei dieser Art von Tests hilfreich sind. Betrachten Sie die folgenden Produktkategorien:

  1. Netzwerkscanner
  2. Scanner für Web-Skript-Verletzungen
  3. Ausbeutung
  4. Automatisierung von Injektionen
  5. Debugger (Sniffer, lokale Proxys usw.)


Einige Produkte haben einen universellen „Charakter“, daher werde ich sie in die Kategorie einordnen, in der sie einen habenоbesseres Ergebnis (subjektive Meinung).

Netzwerkscanner.

Die Hauptaufgabe besteht darin, verfügbare Netzwerkdienste zu ermitteln, ihre Versionen zu installieren, das Betriebssystem zu bestimmen usw.

NmapÜberprüfung kostenloser Tools zum Pentesting von Webressourcen und mehr v2
Nmap („Network Mapper“) ist ein kostenloses Open-Source-Dienstprogramm zur Netzwerkanalyse und Systemsicherheitsprüfung. Gewalttätige Gegner der Konsole können Zenmap verwenden, eine GUI für Nmap.
Dabei handelt es sich nicht nur um einen „intelligenten“ Scanner, sondern um ein ernsthaft erweiterbares Tool (eines der „ungewöhnlichen Features“ ist das Vorhandensein eines Skripts zum Überprüfen eines Knotens auf das Vorhandensein eines Wurms).Stuxnet" (erwähnt hier). Typisches Anwendungsbeispiel:

nmap -A -T4 localhost

-A zur Erkennung der Betriebssystemversion, zum Scannen und Nachverfolgen von Skripten
-T4 Zeitsteuerungseinstellung (mehr ist schneller, von 0 bis 5)
localhost – Zielhost
Etwas Härteres?

nmap -sS -sU -T4 -A -v -PE -PP -PS21,22,23,25,80,113,31339 -PA80,113,443,10042 -PO --script all localhost

Hierbei handelt es sich um eine Reihe von Optionen aus dem Profil „Langsamer umfassender Scan“ in Zenmap. Die Fertigstellung nimmt recht viel Zeit in Anspruch, liefert aber letztendlich detailliertere Informationen, die über das Zielsystem herausgefunden werden können. Hilfeleitfaden auf Russisch, wenn Sie sich entscheiden, tiefer zu gehen, empfehle ich Ihnen auch, den Artikel zu übersetzen Anfängerleitfaden für Nmap.
Nmap wurde von Zeitschriften und Communities wie Linux Journal, Info World, LinuxQuestions.Org und Codetalker Digest als „Sicherheitsprodukt des Jahres“ ausgezeichnet.
Ein interessanter Punkt: Nmap ist in den Filmen „The Matrix Reloaded“, „Stirb langsam 4“, „Das Bourne Ultimatum“, „Hottabych“ und zu sehen andere.

IP-ToolsÜberprüfung kostenloser Tools zum Pentesting von Webressourcen und mehr v2
IP-Tools - eine Art Satz verschiedener Netzwerkdienstprogramme mit einer grafischen Benutzeroberfläche, die „speziell“ für Windows-Benutzer ist.
Port-Scanner, gemeinsame Ressourcen (gemeinsame Drucker/Ordner), WhoIs/Finger/Lookup, Telnet-Client und vieles mehr. Einfach ein praktisches, schnelles und funktionelles Werkzeug.

Es macht keinen besonderen Sinn, andere Produkte in Betracht zu ziehen, da es in diesem Bereich viele Dienstprogramme gibt und alle über ähnliche Funktionsprinzipien und Funktionen verfügen. Dennoch bleibt nmap das am häufigsten verwendete.

Scanner für Web-Skript-Verletzungen

Es wird versucht, beliebte Schwachstellen (SQL-Inj, XSS, LFI/RFI usw.) oder Fehler (nicht gelöschte temporäre Dateien, Verzeichnisindizierung usw.) zu finden.

Acunetix Web-Sicherheitslücken-ScannerÜberprüfung kostenloser Tools zum Pentesting von Webressourcen und mehr v2
Acunetix Web-Sicherheitslücken-Scanner — Aus dem Link können Sie ersehen, dass es sich um einen XSS-Scanner handelt, aber das stimmt nicht ganz. Die hier verfügbare kostenlose Version bietet einiges an Funktionalität. Normalerweise verspürt die Person, die diesen Scanner zum ersten Mal ausführt und zum ersten Mal einen Bericht über ihre Ressource erhält, einen leichten Schock, und wenn Sie dies tun, werden Sie verstehen, warum. Dies ist ein sehr leistungsfähiges Produkt zur Analyse aller Arten von Schwachstellen auf einer Website und funktioniert nicht nur mit den üblichen PHP-Websites, sondern auch in anderen Sprachen (obwohl der Unterschied in der Sprache kein Indikator ist). Es macht keinen besonderen Sinn, die Anweisungen zu beschreiben, da der Scanner lediglich die Aktionen des Benutzers „aufnimmt“. Etwas Ähnliches wie „next, next, next, ready“ in einer typischen Softwareinstallation.

NiemandÜberprüfung kostenloser Tools zum Pentesting von Webressourcen und mehr v2
Niemand Dies ist ein Open-Source-Webcrawler (GPL). Eliminiert routinemäßige manuelle Arbeiten. Durchsucht die Zielseite nach nicht gelöschten Skripten (einige test.php, index_.php usw.), Datenbankverwaltungstools (/phpmyadmin/, /pma und dergleichen) usw., d. h. überprüft die Ressource auf die häufigsten Fehler in der Regel durch menschliche Faktoren verursacht.
Wenn es außerdem ein beliebtes Skript findet, prüft es es auf veröffentlichte Exploits (die sich in der Datenbank befinden).
Meldet verfügbare „unerwünschte“ Methoden wie PUT und TRACE
Und so weiter. Es ist sehr praktisch, wenn Sie als Auditor arbeiten und täglich Websites analysieren.
Von den Minuspunkten möchte ich den hohen Prozentsatz an Fehlalarmen hervorheben. Wenn Ihre Site beispielsweise immer den Hauptfehler anstelle eines 404-Fehlers ausgibt (wenn dieser auftreten sollte), sagt der Scanner, dass Ihre Site alle Skripte und alle Schwachstellen aus ihrer Datenbank enthält. In der Praxis kommt das nicht so oft vor, aber tatsächlich hängt viel von der Struktur Ihrer Website ab.
Klassische Verwendung:

./nikto.pl -host localhost

Wenn Sie auf der Site autorisiert werden müssen, können Sie in der Datei nikto.conf ein Cookie setzen, die Variable STATIC-COOKIE.

WiktoÜberprüfung kostenloser Tools zum Pentesting von Webressourcen und mehr v2
Wikto – Nikto für Windows, jedoch mit einigen Ergänzungen, wie z. B. „Fuzzy“-Logik beim Überprüfen des Codes auf Fehler, Verwendung von GHDB, Abrufen von Links und Ressourcenordnern, Echtzeitüberwachung von HTTP-Anfragen/-Antworten. Wikto ist in C# geschrieben und erfordert das .NET Framework.

skipfishÜberprüfung kostenloser Tools zum Pentesting von Webressourcen und mehr v2
skipfish - Web-Schwachstellenscanner von Michal Zalewski (bekannt als lcamtuf). Geschrieben in C, plattformübergreifend (Win erfordert Cygwin). Rekursiv (und zwar sehr lange, etwa 20 bis 40 Stunden, obwohl es bei mir zuletzt 96 Stunden funktionierte) durchsucht es die gesamte Website und findet alle möglichen Sicherheitslücken. Es erzeugt auch viel Verkehr (mehrere GB eingehend/ausgehend). Aber alle Mittel sind gut, besonders wenn Sie Zeit und Ressourcen haben.
Typische Verwendung:

./skipfish -o /home/reports www.example.com

Im Ordner „Berichte“ befindet sich ein Bericht im HTML-Format. Beispiel.

w3af Überprüfung kostenloser Tools zum Pentesting von Webressourcen und mehr v2
w3af — Web Application Attack and Audit Framework, Open-Source-Scanner für Web-Schwachstellen. Es verfügt über eine grafische Benutzeroberfläche, aber Sie können von der Konsole aus arbeiten. Genauer gesagt handelt es sich um ein Framework mit eine Menge Plugins.
Über seine Vorteile kann man lange sprechen, es ist besser, es auszuprobieren :] Die typische Arbeit damit besteht darin, ein Profil auszuwählen, ein Ziel festzulegen und es tatsächlich zu starten.

Mantra-Sicherheits-FrameworkÜberprüfung kostenloser Tools zum Pentesting von Webressourcen und mehr v2
Mantra ist ein Traum, der wahr geworden ist. Eine Sammlung kostenloser und offener Informationssicherheitstools, die in einen Webbrowser integriert sind.
Sehr nützlich beim Testen von Webanwendungen in allen Phasen.
Die Nutzung beschränkt sich auf die Installation und den Start des Browsers.

Tatsächlich gibt es in dieser Kategorie viele Dienstprogramme und es ist ziemlich schwierig, eine bestimmte Liste daraus auszuwählen. Meistens bestimmt jeder Pentester selbst, welche Tools er benötigt.

Ausbeutung

Zur automatisierten und komfortableren Ausnutzung von Schwachstellen werden Exploits in Software und Skripte geschrieben, denen lediglich Parameter übergeben werden müssen, um die Sicherheitslücke auszunutzen. Und es gibt Produkte, die die manuelle Suche nach Exploits überflüssig machen und diese sogar spontan anwenden. Diese Kategorie wird nun besprochen.

Metasploit-Framework Überprüfung kostenloser Tools zum Pentesting von Webressourcen und mehr v2
Das Metasploit® Framework - eine Art Monster in unserem Geschäft. Er kann so viel, dass die Anleitung mehrere Artikel umfasst. Wir werden uns die automatische Ausnutzung (nmap + metasploit) ansehen. Das Fazit lautet: Nmap analysiert den von uns benötigten Port, installiert den Dienst und Metasploit versucht, basierend auf der Dienstklasse (FTP, SSH usw.) Exploits darauf anzuwenden. Anstelle einer Textanleitung werde ich ein Video einfügen, das zum Thema Autopwn sehr beliebt ist

Oder wir können einfach den Betrieb des benötigten Exploits automatisieren. Z.B:

msf > use auxiliary/admin/cisco/vpn_3000_ftp_bypass
msf auxiliary(vpn_3000_ftp_bypass) > set RHOST [TARGET IP] msf auxiliary(vpn_3000_ftp_bypass) > run

Tatsächlich sind die Fähigkeiten dieses Frameworks sehr umfangreich. Wenn Sie sich also dazu entschließen, tiefer zu gehen, gehen Sie zu Link

ArmitageÜberprüfung kostenloser Tools zum Pentesting von Webressourcen und mehr v2
Armitage — OVA der Cyberpunk-Genre-GUI für Metasploit. Visualisiert das Ziel, empfiehlt Exploits und stellt erweiterte Funktionen des Frameworks bereit. Im Allgemeinen für diejenigen, die möchten, dass alles schön und eindrucksvoll aussieht.
Screencast:

Tenable Nessus®Überprüfung kostenloser Tools zum Pentesting von Webressourcen und mehr v2
Tenable Nessus® Schwachstellenscanner - kann viele Dinge tun, aber eine der Fähigkeiten, die wir von ihm benötigen, ist die Bestimmung, welche Dienste Exploits haben. Kostenlose Version des Produkts „Nur für Zuhause“

Использование:

  • Heruntergeladen (für Ihr System), installiert, registriert (der Schlüssel wird an Ihre E-Mail gesendet).
  • Server gestartet, Benutzer zum Nessus Server Manager hinzugefügt (Schaltfläche „Benutzer verwalten“)
  • Wir gehen zur Adresse
    https://localhost:8834/

    und holen Sie sich den Flash-Client im Browser

  • Scans -> Hinzufügen -> Füllen Sie die Felder aus (indem Sie das für uns geeignete Scanprofil auswählen) und klicken Sie auf Scannen

Nach einiger Zeit wird der Scanbericht auf der Registerkarte „Berichte“ angezeigt
Um die praktische Anfälligkeit von Diensten für Exploits zu überprüfen, können Sie das oben beschriebene Metasploit Framework verwenden oder versuchen, einen Exploit zu finden (z. B. auf Explot-db, Paketsturm, Explot-Suche usw.) und verwenden Sie es manuell dagegen sein System
IMHO: zu sperrig. Ich habe ihn zu einem der führenden Unternehmen in dieser Richtung der Softwarebranche gemacht.

Automatisierung von Injektionen

Viele der Web-App-Sec-Scanner suchen nach Injektionen, sind aber immer noch nur allgemeine Scanner. Und es gibt Dienstprogramme, die sich speziell mit der Suche und Nutzung von Injektionen befassen. Wir werden jetzt darüber sprechen.

sqlmapÜberprüfung kostenloser Tools zum Pentesting von Webressourcen und mehr v2
sqlmap – Open-Source-Dienstprogramm zum Suchen und Ausnutzen von SQL-Injections. Unterstützt Datenbankserver wie: MySQL, Oracle, PostgreSQL, Microsoft SQL Server, Microsoft Access, SQLite, Firebird, Sybase, SAP MaxDB.
Die typische Verwendung läuft auf die folgende Zeile hinaus:

python sqlmap.py -u "http://example.com/index.php?action=news&id=1"
Es gibt genügend Handbücher, auch auf Russisch. Die Software erleichtert die Arbeit eines Pentesters in diesem Bereich erheblich.
Ich füge eine offizielle Videodemonstration hinzu:

bsqlbf-v2
bsqlbf-v2 – ein Perl-Skript, ein Brute Forcer für „blinde“ SQL-Injektionen. Es funktioniert sowohl mit ganzzahligen Werten in der URL als auch mit Zeichenfolgenwerten.
Unterstützte Datenbank:

  • MS-SQL
  • MySQL
  • PostgreSQL
  • Oracle

Anwendungsbeispiel:

./bsqlbf-v2-3.pl -url www.somehost.com/blah.php?u=5 -blind u -sql "select table_name from imformation_schema.tables limit 1 offset 0" -database 1 -type 1

-URL www.somehost.com/blah.php?u=5 — Verknüpfung mit Parametern
-blind du — Parameter für die Injektion (standardmäßig wird der letzte aus der Adressleiste übernommen)
-sql „Tabellenname aus imformation_schema.tables auswählen, Limit 1 Offset 0“ — unsere willkürliche Anfrage an die Datenbank
-Datenbank 1 — Datenbankserver: MSSQL
-Typ 1 – Art des Angriffs, „blinde“ Injektion, basierend auf True- und Error-Antworten (z. B. Syntaxfehler).

Debugger

Diese Tools werden hauptsächlich von Entwicklern verwendet, wenn sie Probleme mit den Ergebnissen der Ausführung ihres Codes haben. Aber diese Richtung ist auch für Pentests nützlich, wenn wir die benötigten Daten im Handumdrehen ersetzen, analysieren können, was als Reaktion auf unsere Eingabeparameter kommt (z. B. beim Fuzzing) usw.

Burp Suite
Burp Suite – eine Reihe von Dienstprogrammen, die bei Penetrationstests helfen. Es steht im Internet gute Bewertung auf Russisch von Raz0r (allerdings für 2008).
Die kostenlose Version beinhaltet:

  • Burp Proxy ist ein lokaler Proxy, der es Ihnen ermöglicht, bereits generierte Anfragen vom Browser zu ändern
  • Burp Spider – Spinne, sucht nach vorhandenen Dateien und Verzeichnissen
  • Burp Repeater – manuelles Senden von HTTP-Anfragen
  • Burp Sequencer – Analyse von Zufallswerten in Formularen
  • Burp Decoder ist ein Standard-Encoder-Decoder (HTML, Base64, Hex usw.), von dem es Tausende gibt und der schnell in jeder Sprache geschrieben werden kann
  • Burp Comparer – String-Vergleichskomponente

Im Prinzip löst dieses Paket nahezu alle Probleme in diesem Bereich.

FiedlerÜberprüfung kostenloser Tools zum Pentesting von Webressourcen und mehr v2
Fiedler — Fiddler ist ein Debugging-Proxy, der den gesamten HTTP(S)-Verkehr protokolliert. Ermöglicht Ihnen, diesen Datenverkehr zu untersuchen, Haltepunkte festzulegen und mit ein- oder ausgehenden Daten zu „spielen“.

Es gibt auch Firesheep, Monster Wireshark und andere, die Wahl liegt beim Benutzer.

Abschluss

Natürlich hat jeder Pentester sein eigenes Arsenal und seine eigenen Dienstprogramme, da es einfach viele davon gibt. Ich habe versucht, einige der bequemsten und beliebtesten aufzulisten. Damit sich aber jeder mit anderen Dienstprogrammen in dieser Richtung vertraut machen kann, werde ich unten Links bereitstellen.

Verschiedene Top-/Listen von Scannern und Dienstprogrammen

Linux-Distributionen, die bereits eine Reihe verschiedener Pentest-Dienstprogramme enthalten

upd: BurpSuite-Dokumentation auf Russisch vom Team „Hack4Sec“ (hinzugefügt Anton Kuzmin)

PS Wir können über XSpider nicht schweigen. Beteiligt sich nicht an der Rezension, obwohl es sich um Shareware handelt (ich habe es herausgefunden, als ich den Artikel an SecLab gesendet habe, eigentlich aus diesem Grund (kein Wissen und Fehlen der neuesten Version 7.8) und habe es nicht in den Artikel aufgenommen). Und theoretisch war eine Rezension davon geplant (ich habe dafür schwierige Tests vorbereitet), aber ich weiß nicht, ob die Welt es sehen wird.

PPS Einiges Material aus dem Artikel wird für den vorgesehenen Zweck in einem kommenden Bericht unter verwendet CodeFest 2012 im QA-Bereich, der hier nicht erwähnte Tools enthält (natürlich kostenlos), sowie den Algorithmus, in welcher Reihenfolge was verwendet werden soll, welches Ergebnis zu erwarten ist, welche Konfigurationen zu verwenden sind und alle möglichen Tipps und Tricks wann arbeite (ich denke fast jeden Tag an den Bericht, ich werde versuchen, Ihnen das Beste zum Thema Thema zu erzählen)
Zu diesem Artikel gab es übrigens eine Lektion unter Offene InfoSec-Tage (Tag auf Habré, Webseite), kann Kühe ausrauben Schau mal Materialien.

Source: habr.com

Kommentar hinzufügen