GNU/Linux >> LINUX-Kenntnisse >  >> Linux

WebGoat lehrt Sie, Fehler in Webanwendungen in Echtzeit zu beheben

Guten Tag, Webentwickler! Heute werden wir über eine äußerst nützliche Anwendung sprechen, die Ihnen Lektionen über die Sicherheit von Webanwendungen beibringt. Begrüßen Sie WebGoat , eine absichtlich unsichere Webanwendung entwickelt von OWASP , mit der Absicht zu vermitteln, wie man häufige Webanwendungsfehler in Echtzeit mit praktischen Übungen behebt. Diese Anwendung kann für diejenigen sehr nützlich sein, die mehr über Anwendungssicherheit und Penetrationstesttechniken erfahren möchten.

Ein Wort der Vorsicht: WebGoat ist REIN FÜR BILDUNGSZWECKE . Es macht Ihr System extrem anfällig für Angreifer. Ich bestehe also darauf, dass Sie es in einer virtuellen Maschine in Ihrem lokalen Netzwerk verwenden. Verbinden Sie Ihr Prüfgerät nicht mit dem Internet. Sie wurden gewarnt!

So stellen Sie WebGoat bereit

WebGoat kann entweder mit Docker oder als eigenständige Anwendung bereitgestellt werden. Da es nur zu Lern- und Bildungszwecken dient, verwende ich es lieber in Docker.

Installieren Sie Webgoat mit Docker

Verwenden Sie die folgenden Links, um Docker zu installieren, falls Sie es noch nicht installiert haben.

  • So installieren Sie Docker in CentOS
  • So installieren Sie Docker in Ubuntu

Führen Sie nach der Installation von Docker den folgenden Befehl aus, um WebGoat bereitzustellen.

$ docker run -it -p 127.0.0.1:80:8888 -p 127.0.0.1:8080:8080 -p 127.0.0.1:9090:9090 -e TZ=Asia/Kolkata webgoat/goatandwolf:v8.2.2

Ersetzen Sie im obigen Befehl die Zeitzone durch Ihre eigene.

Dieser Befehl zieht das neueste WebGoat-Docker-Image und startet die WebGoat- und Webwolf-Instanzen in wenigen Minuten. Sobald es gestartet ist, sehen Sie eine Ausgabe wie unten.

[...]
2017-12-05 11:22:50,132 INFO - FrameworkServlet 'mvc-dispatcher': initialization completed in 533 ms
2017-12-05 11:22:50,171 INFO - Initializing main webgoat servlet
2017-12-05 11:22:50,173 INFO - Browse to http://localhost:8080/WebGoat and happy hacking!
Dec 05, 2017 11:22:50 AM org.apache.coyote.http11.Http11Protocol start
INFO: Starting ProtocolHandler ["http-bio-8080"]

Nachdem das Docker-Image gestartet wurde, können Sie unter den folgenden URLs auf die Zielseite, die WebGolf- und die WebWolf-Oberfläche zugreifen.

  • Die Zielseite - http://localhost
  • WebGoat-Dashboard – http://localhost:8080/WebGoat
  • WebWolf-Schnittstelle - http://localhost:9090/WebWolf

Installieren Sie Webgoat als eigenständige Anwendung

Stellen Sie sicher, dass Sie Java installiert haben . Laden Sie dann die neueste WebGoat-Version von der Versionsseite herunter .

Starten Sie schließlich WebGoat wie unten gezeigt.

$ java -Dfile.encoding=UTF-8 -jar webgoat-server-8.2.2.jar [--server.port=8080] [--server.address=localhost] [--hsqldb.port=9001]
$ java -Dfile.encoding=UTF-8 -jar webwolf-8.2.2.jar [--server.port=9090] [--server.address=localhost] [--hsqldb.port=9001]

Jetzt ist es an der Zeit, die Schwachstellen zu beheben. Trennen Sie, wie bereits erwähnt, das Internet, bevor Sie es verwenden.

So beheben Sie Fehler in Webanwendungen in Echtzeit mit WebGoat

Öffnen Sie Ihren Webbrowser und navigieren Sie zu http://localhost:8080/WebGoat oder http://IP-Adresse:8080/WebGoat . Sie werden mit dem folgenden Bildschirm sehen.

Melden Sie sich an mit:webgoat/webgoat . Dies ist das administrative Login. Sie können auch das normale Benutzerkonto verwenden:Gast/Gast .

Jetzt landen Sie im Übersichtsbereich von WebGoat, wo Sie verschiedene Anweisungen zur Arbeit mit WebGoat finden, um häufige Fehler und Schwachstellen einer Webanwendung zu beheben.

Wie Sie sehen können, gibt es im linken Bereich viele Unterrichtskategorien. Klicken Sie auf eine Kategorie, um die enthaltenen Lektionen anzuzeigen.

Lassen Sie mich beispielsweise Injection Flaws -> Command Injection auswählen Unterrichtsplan.

Wie Sie sehen können, gibt es 5 Registerkarten für die ausgewählte Lektion.

  1. Quelle anzeigen - Dies zeigt den zugrunde liegenden Java-Quellcode.
  2. Lösung anzeigen - Dies zeigt die vollständige Lösung der ausgewählten Lektion.
  3. Plan anzeigen - Dies zeigt die Ziele des Unterrichts.
  4. Hinweise anzeigen - Dies zeigt technische Hinweise zum Lösen der Lektion.
  5. Lektion neu starten - Wenn Sie eine Lektion neu starten möchten, können Sie diesen Link verwenden.

Klicken Sie auf jede Lektion und versuchen Sie, die Lektion zu lösen, und verwenden Sie gegebenenfalls die Hinweise. Wenn Sie die Lektion nicht mithilfe der Hinweise lösen können, sehen Sie sich die Lösung an, um vollständige Details zu erhalten.


Linux
  1. Was tun Sie, wenn eine Anwendung nicht für Ihre Linux-Distribution gepackt ist?

  2. Varnish Cache:Ein Web Application Accelerator auf CentOS

  3. Apache vs. Nginx:Welchen Webserver sollten Sie wählen?

  4. Eine Einführung in Web Application Firewalls für Linux-Systemadministratoren

  5. Pitchfork – die Rackspace Cloud API-Webanwendung

Warum sehen Sie den Fehler:Snap „xyz“ nicht gefunden?

20 wichtige Dinge, die Sie wissen sollten, wenn Sie sich auf einem Nginx-Webserver befinden

Apache vs. Nginx:Welcher Webserver ist der beste für Sie?

Was ist eine WAF (Web Application Firewall)? Arten von WAFs

Migrieren Sie eine .NET-Anwendung von Amazon Web Services

Migrieren Sie eine Java-Webanwendung von Amazon Web Services