Wie können Sie als Betreiber einer Webanwendung sicherstellen, dass Ihre Website vor Online-Bedrohungen geschützt ist? Dass keine sensiblen Informationen nach außen dringen?
Ein interessanter Bericht von Symantec zeigt, dass 1 von 10 Websites einen oder mehrere bösartige Codes enthielt.
Und wenn Sie WordPress verwenden, dann zeigt ein anderer Bericht von SUCURI, dass 49,8 % der gescannten Websites veraltet waren.
Wenn Sie eine Cloud-basierte Sicherheitslösung verwenden, dann gehört das regelmäßige Scannen auf Sicherheitslücken höchstwahrscheinlich zum Plan. Wenn nicht, müssen Sie einen Routine-Scan durchführen und die notwendigen Maßnahmen ergreifen, um die Risiken zu minimieren.
Es gibt zwei Arten von Scannern.
Kommerzielle – bieten Ihnen die Möglichkeit, die Überprüfung zu automatisieren, um kontinuierliche Sicherheit, Berichte, Warnungen, detaillierte Anweisungen zur Risikominderung usw. zu gewährleisten. Einige der bekannten Namen in der Branche sind:
- Acunetix
- Detectify
- Qualys
Open Source/kostenlos – Sie können die Software herunterladen und bei Bedarf einen Sicherheitsscan durchführen. Nicht alle sind in der Lage, eine so breite Palette von Sicherheitslücken abzudecken wie ein kommerzieller Scanner.
Schauen wir uns den folgenden Open-Source-Web-Schwachstellen-Scanner an.
dirsearch
‘dirsearch‘ ist ein beliebtes Tool zur Aufzählung von Verzeichnissen und Dateien im Web, mit dem Sie versteckte Verzeichnisse und Dateien auf einem Webserver aufspüren können.
Es ist ein in Python geschriebenes Befehlszeilentool, das häufig von Penetrationstestern verwendet wird, um Fehlkonfigurationen und sensible Dateien zu identifizieren, die nicht öffentlich zugänglich sein sollten.
Funktionen
- Brute-Forcing von Verzeichnissen
- Benutzerdefinierte Wortlisten
- Unterstützung von HTTP-Methoden
- Erkennung von Erweiterungen (kann nach Dateien mit bestimmten Erweiterungen wie .php, .txt, .html usw. suchen)
- Gleichzeitige Anfragen zur Beschleunigung des Aufzählungsprozesses.
- Filterung nach positiven/negativen Übereinstimmungen
- verwendet den rekursiven Modus, um nach Dateien zu suchen.
Er sendet eine Reihe von HTTP-Anfragen an den Ziel-Webserver und versucht dann, auf eine vordefinierte Liste von gemeinsamen Verzeichnissen zuzugreifen.
Wenn eine Datei gefunden wird, meldet dirsearch diese, was bedeutet, dass die Datei möglicherweise für die Öffentlichkeit zugänglich ist.
reNgine
reNgine ist ein fortschrittliches Tool zur Erkennung von Webanwendungen, das Penetrationstestern dabei hilft, potenzielle Schwachstellen und die Angriffsfläche von Webanwendungen zu identifizieren.
Es bietet über seine Engines eine hochgradig anpassbare und leistungsstarke Scan-Funktion, mit der die Benutzer den Scan-Prozess nach ihren Bedürfnissen konfigurieren und feinabstimmen können.
Funktionen
- Hochgradig konfigurierbare Scan-Engines
- Korrelation von Daten
- Kontinuierliche Überwachung, um sicherzustellen, dass die Sicherheitslage der Anwendung auf dem neuesten Stand bleibt.
- Datenbankgestützte Aufklärungsdaten für den Zugriff und die Analyse der Ergebnisse, wann immer der Benutzer dies wünscht.
- Einfache Benutzeroberfläche
Und mit der Funktion Sub-Scan & Deeper Correlation können Benutzer bestimmte Teile der Anwendung oder einzelne Komponenten separat scannen.
w3af
w3af (Web Application Attack & Audit Framework) ist ein Open-Source-Projekt, das Ende 2006 ins Leben gerufen wurde. w3af ist in Python geschrieben und ermöglicht es Benutzern, verschiedene Sicherheitsprobleme zu entdecken und auszunutzen, darunter auch OWASPs.
Das Hauptziel von w3af ist es, Sicherheitstester und Entwickler bei der Verbesserung der Sicherheit von Webanwendungen zu unterstützen.
Und hier finden Sie eine Liste der Sicherheitslücken, die w3af scannen kann.
Funktionen
- Benutzer können Plugins und Skripte für ihre speziellen Anforderungen erstellen.
- Es kann auch im HTTP-Proxy-Modus arbeiten, der es Benutzern ermöglicht, HTTP-Transaktionen abzufangen und zu verändern.
- Generieren Sie detaillierte Berichte über die identifizierten Schwachstellen und die während des Testprozesses durchgeführten Schritte.
Das Programm basiert auf einer Plugin-Architektur, und Sie können sich hier alle verfügbaren Plugins ansehen.
Nikto
Nikto ist ein Open-Source-Scanner (GPL), der vollständige Tests von Webservern durchführt, um Sicherheitsschwachstellen und Konfigurationsprobleme zu identifizieren.
Nikto identifiziert Webserver und Software, die auf dem Zielserver ausgeführt werden, so dass Administratoren einen besseren Überblick über die Einrichtung ihres Systems erhalten.
Funktionen
- Unterstützung für SSL und vollständigen HTTP-Proxy.
- Anpassbare Berichte mithilfe einer Vorlagen-Engine.
- Möglichkeit, mehrere Ports auf einem Server oder mehrere Server über eine Eingabedatei zu scannen
- Scan-Tuning, um ganze Klassen von Schwachstellenprüfungen ein- oder auszuschließen.
- Verbesserte Reduzierung von Fehlalarmen durch verschiedene Methoden wie Header, Seiteninhalte und Hashing von Inhalten.
- Host-Authentifizierung mit Basic- und NTLM-Methoden.
Nikto ist nicht als unauffälliges Tool konzipiert, da es darauf abzielt, Webserver so schnell wie möglich zu testen. Seine Aktivitäten sind oft in Protokolldateien oder in IPS/IDS-Systemen sichtbar. Aber es unterstützt die Anti-IDS-Methoden von LibWhisker, mit denen Benutzer ihre IDS-Systeme testen oder versuchen können, die Erkennung in bestimmten Szenarien zu umgehen.
Und hier finden Sie einen Artikel darüber, wie Sie den Nikto-Scanner verwenden können, um Schwachstellen in Webservern zu finden. Sie können diese Seite gerne besuchen.
Wfuzz
Wfuzz (Web Fuzzer) ist ein Tool zur Anwendungsbewertung für Penetrationstests. Sie können die Daten in der HTTP-Anfrage für jedes beliebige Feld fuzzen, um die Webanwendungen auszunutzen und zu überprüfen.
Es unterstützt auch Brute-Force-Angriffe, indem es Benutzern erlaubt, mehrere Werte für bestimmte Parameter zu testen. Dies kann besonders nützlich sein, um schwache Anmeldedaten oder sensible Informationen zu entdecken, die durch falsche Konfigurationen offengelegt werden könnten.
Funktionen
- Payload-Anpassung & Fuzzing-Funktionen, die verschiedene Teile von HTTP-Anfragen, einschließlich Parameter, Header und Cookies, fuzzen, um Schwachstellen bei der Eingabevalidierung zu erkennen.
- Wfuzz ist als modulares Framework aufgebaut. So wird es für Entwickler einfach sein, benutzerdefinierte Plugins zu erstellen und zu integrieren.
- HTTP-Header- und Authentifizierungstests
- Wfuzz kann mit anderen Sicherheitstools wie der Burp Suite integriert werden. Es ermöglicht Benutzern, frühere HTTP-Anfragen und -Antworten anderer Tools zu nutzen.
Es kann auch Verzeichnis- und Datei-Fuzzing durchführen, um sensible Dateien und andere Ressourcen auf dem Webserver zu identifizieren.
OWASP ZAP
OWASP ZAP (Zed Attack Proxy) ist ein beliebter Open-Source-Sicherheitsscanner für Webanwendungen und ein Tool für Penetrationstests. Es ist kostenlos und wird von der OWASP-Community aktiv gepflegt, was es zu einer zuverlässigen Wahl für die Sicherung von Webanwendungen macht.
Es handelt sich um ein plattformübergreifendes Java-basiertes Tool, das sogar auf dem Raspberry Pi läuft. ZAP wird zwischen einen Browser und eine Webanwendung geschaltet, um Nachrichten abzufangen und zu untersuchen.
Funktionen
- ZAP verfügt über eine Spidering-Funktion, mit der sich alle zugänglichen Endpunkte innerhalb der Ziel-Webanwendung identifizieren und aufzeichnen lassen.
- Automatisiertes Scannen
- ZAP unterstützt manuelle Tests durch die Bereitstellung eines interaktiven Proxys. Benutzer können Anfragen zwischen dem Client und dem Server abfangen und ändern.
- ZAP unterstützt Fuzzier-Plugins für Fuzz-Tests verschiedener Eingaben der Zielanwendung, um potenzielle Schwachstellen zu entdecken.
Außerdem kann es über seine API in den Entwicklungs- und Testprozess integriert werden. Wir empfehlen Ihnen, sich die OWASP ZAP-Tutorial-Videos anzusehen, um den Einstieg zu finden.
Wapiti
Wapiti ist ein weiterer leistungsstarker Schwachstellen-Scanner für Webanwendungen, mit dem Sie die Sicherheit Ihrer Websites bewerten können.
Er arbeitet als “Blackbox”-Scanner – das heißt, er benötigt keinen Zugriff auf den Quellcode der Anwendung. Stattdessen analysiert er die eingesetzte Webanwendung, indem er ihre Webseiten durchforstet und nach potenziellen Schwachstellen sucht.
Funktionen
- Die Abdeckung von Schwachstellen umfasst die Erkennung von File Disclosure, XXE (XML eXternal Entity) Injection, CRLF Injection, Open Redirects und mehr.
- HTTP-Methoden und Payload-Injektion
- Unterstützt HTTP/HTTPS/ SOCKS5-Proxys und ermöglicht die Authentifizierung über Basic, Digest, NTLM oder GET/POST auf Anmeldeformularen.
- Benutzer können die Überprüfung von SSL-Zertifikaten während des Scans aktivieren oder deaktivieren.
- Importiert Cookies von Chrome- oder Firefox-Browsern und unterstützt MITM-Proxys, um das Ziel mit dem Browser des Benutzers zu erkunden.
Wapiti bietet mehrere Optionen, um das Verhalten des Crawlers zu steuern, z. B. das Überspringen bestimmter Parameternamen während des Angriffs, die Einstellung einer maximalen Zeit für den Scanvorgang, das Hinzufügen benutzerdefinierter HTTP-Header und mehr.
Vega
Vega wurde von Subgraph entwickelt – ein in Java geschriebenes, plattformübergreifendes Tool zum Auffinden von XSS, SQLi, RFI und vielen anderen Schwachstellen. Der integrierte automatische Scanner ist für schnelle und effiziente Sicherheitstests konzipiert.
Er kann Webanwendungen durchforsten, nach verschiedenen Schwachstellen scannen und dem Benutzer die Ergebnisse mitteilen.
Funktionen
- Die Funktion Intercepting Proxy kann SSL-Abfragen für HTTP-Websites durchführen und den verschlüsselten Datenverkehr analysieren.
- Unterstützung mehrerer Plattformen
- Der Proxy kann so konfiguriert werden, dass er Angriffsmodule ausführt, während der Benutzer auf der Zielseite surft.
Wenn Sie Entwickler sind, können Sie die Vega-API nutzen, um neue Angriffsmodule zu erstellen.
SQLmap
SQLmap ist ein Open-Source-Pentesting-Tool, das den Prozess der Erkennung und Ausnutzung von SQL-Injection-Schwachstellen in Webanwendungen automatisiert.
Dieses Tool wertet die Antworten der Anwendung und die konstruierten Anfragen aus, um potenzielle Injektionspunkte zu finden.
Funktionen
- DBMS-Unterstützung, einschließlich MySQL, Oracle, PostgreSQL, SQLite und viele andere.
- Aufzählung von Datenbankinformationen
- Unterstützt verschiedene SQL-Injektionstechniken wie boolesche, zeitbasierte, fehlerbasierte und UNION-Abfrage-basierte.
- Direkte Datenbankverbindung
- Passwort-Hash-Knacken
- Daten-Dumping
- Willkürliche Befehlsausführung auf einem zugrunde liegenden Betriebssystem für unterstützte Systeme.
Außerdem kann es Informationen über das verwendete DBMS extrahieren, wie z.B. Typ, Version und Konfigurationsdetails. Dies hilft den Testern, die Umgebung zu verstehen, mit der sie zu tun haben.
Grabber
Grabber ist ein einfacher und portabler Scanner, der zum Aufspüren von Sicherheitslücken in kleinen Websites wie Kontaktanzeigen und Foren entwickelt wurde, aber nicht für große Anwendungen geeignet ist.
Funktionen
- JavaScript-Quellcode-Analysator
- Cross-Site-Scripting, SQL-Injection, Blind SQL-Injection
- Testen von PHP-Anwendungen mit PHP-SAT
Grabber identifiziert nur die Schwachstellen und bietet keine Lösungen an. Nach der Erkennung generiert es eine Datei mit der Sitzungs-ID und den Zeitstempeln für eine spätere statistische Analyse.
Fazit
Web-Sicherheit ist für jedes Online-Geschäft von entscheidender Bedeutung, und ich hoffe, dass die oben aufgeführten kostenlosen/offenen Schwachstellen-Scanner Ihnen dabei helfen, Risiken zu finden, damit Sie sie entschärfen können, bevor jemand sie ausnutzt. Wenn Sie mehr über Penetrationstests erfahren möchten, sollten Sie sich diesen Online-Kurs ansehen.
Lesen Sie auch die besten Tipps, um häufige Sicherheitslücken im Internet zu vermeiden.