Sicherheitstests - Hacken von Webanwendungen
Es gibt verschiedene Methoden / Ansätze, die wir als Referenz für die Durchführung eines Angriffs verwenden können.
Webanwendung - PenTesting-Methoden
Bei der Entwicklung eines Angriffsmodells können die folgenden Standards berücksichtigt werden.
In der folgenden Liste ist OWASP am aktivsten und es gibt eine Reihe von Mitwirkenden. Wir werden uns auf OWASP-Techniken konzentrieren, die jedes Entwicklungsteam vor dem Entwerfen einer Web-App berücksichtigt.
PTES - Penetration Testing Execution Standard
OSSTMM - Open Source-Handbuch für Sicherheitstestmethoden
OWASP-Testtechniken - Öffnen Sie das Sicherheitsprotokoll für Webanwendungen
OWASP Top 10
Das Open Web Application Security Protocol-Team hat die zehn häufigsten Sicherheitslücken veröffentlicht, die in den letzten Jahren im Web häufiger aufgetreten sind. Nachfolgend finden Sie eine Liste der Sicherheitslücken, die in einer webbasierten Anwendung häufiger auftreten.
Anwendung - Hands On
Lassen Sie uns mit einer Beispielanwendung arbeiten, um jede der Techniken zu verstehen. Wir werden den Angriff auf 'WebGoat' durchführen, die J2EE-Anwendung, die explizit mit Sicherheitslücken für Lernzwecke entwickelt wurde.
Die vollständigen Details zum Webgoat-Projekt finden Sie hier https://www.owasp.org/index.php/Category:OWASP_WebGoat_Project. Navigieren Sie zum Herunterladen der WebGoat-Anwendung zuhttps://github.com/WebGoat/WebGoat/wiki/Installation-(WebGoat-6.0) und gehe zum Download-Bereich.
Stellen Sie zum Installieren der heruntergeladenen Anwendung zunächst sicher, dass auf Port 8080 keine Anwendung ausgeführt wird. Sie kann nur mit einem einzigen Befehl installiert werden: java -jar WebGoat-6.0.1-war-exec.jar. Weitere Informationen finden Sie unter WebGoat-Installation
Nach der Installation sollten wir in der Lage sein, auf die Anwendung zuzugreifen, indem wir zu navigieren http://localhost:8080/WebGoat/attack und die Seite wird wie unten gezeigt angezeigt.
Wir können die Anmeldeinformationen von Gast oder Administrator verwenden, die auf der Anmeldeseite angezeigt werden.
Web-Proxy
Um den Datenverkehr zwischen Client (Browser) und Server (System, in dem in unserem Fall die Webgoat-Anwendung gehostet wird) abzufangen, müssen wir einen Webproxy verwenden. Wir werden Burp Proxy verwenden, das von heruntergeladen werden kannhttps://portswigger.net/burp/download.html
Es ist ausreichend, wenn Sie die kostenlose Version der Burp Suite wie unten gezeigt herunterladen.
Burp Suite konfigurieren
Burp Suite ist ein Webproxy, der jedes Informationspaket abfangen kann, das vom Browser und vom Webserver gesendet und empfangen wird. Dies hilft uns, den Inhalt zu ändern, bevor der Client die Informationen an den Webserver sendet.
Step 1- Die App ist auf Port 8080 installiert und Burp ist auf Port 8181 installiert, wie unten gezeigt. Starten Sie die Burp-Suite und nehmen Sie die folgenden Einstellungen vor, um sie wie unten gezeigt in Port 8181 aufzurufen.
Step 2- Wir sollten sicherstellen, dass der Burp Port # 8080 abhört, auf dem die Anwendung installiert ist, damit die Burp-Suite den Datenverkehr abfangen kann. Diese Einstellungen sollten wie unten gezeigt auf der Registerkarte Bereich der Burp Suite vorgenommen werden.
Step 3- Nehmen Sie dann die Proxy-Einstellungen Ihres Browsers vor, um den Port 8181 (Burp Suite-Port) abzuhören. Daher haben wir den Web-Proxy so konfiguriert, dass der Datenverkehr zwischen dem Client (Browser) und dem Server (Webserver) wie unten gezeigt abgefangen wird.
Step 4 - Der Schnappschuss der Konfiguration wird unten mit Hilfe eines einfachen Workflow-Diagramms gezeigt, wie unten gezeigt