GNU/Linux >> Linux Esercitazione >  >> Linux

WebGoat ti insegna a correggere i difetti delle applicazioni Web in tempo reale

Buon giorno, sviluppatori web! Oggi parleremo di un'applicazione super utile che ti insegna lezioni sulla sicurezza delle applicazioni web. Saluta WebGoat , un'applicazione web deliberatamente non sicura sviluppato da OWASP , con l'intento di insegnare come correggere i difetti comuni delle applicazioni Web in tempo reale con esercizi pratici. Questa applicazione può essere molto utile per coloro che desiderano conoscere la sicurezza delle applicazioni e le tecniche di test di penetrazione.

Un avvertimento: WebGoat è PURAMENTE A SCOPO EDUCATIVO . Rende il tuo sistema estremamente vulnerabile agli aggressori. Quindi, insisto che tu lo usi in una macchina virtuale nella tua rete locale. Non connettere la tua macchina di prova a Internet. Sei stato avvisato!

Come distribuire WebGoat

WebGoat può essere distribuito utilizzando Docker o come applicazione autonoma. Dal momento che è puramente per scopi di apprendimento e didattici, preferisco usarlo in Docker.

Installa Webgoat utilizzando Docker

Fare riferimento ai seguenti collegamenti per installare Docker se non l'hai già installato.

  • Come installare Docker in CentOS
  • Come installare Docker in Ubuntu

Dopo aver installato Docker, esegui il comando seguente per distribuire WebGoat.

$ 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

Sostituisci il fuso orario con il tuo nel comando precedente.

Questo comando estrarrà l'ultima immagine Docker WebGoat e avvierà le istanze WebGoat e webwolf in pochi minuti. Una volta avviato, vedrai un output simile a quello di seguito.

[...]
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"]

Dopo l'avvio dell'immagine Docker, puoi accedere alla pagina di destinazione, alle interfacce WebGolf e WebWolf ai seguenti URL.

  • La pagina di destinazione - http://localhost
  • Dashboard WebGoat - http://localhost:8080/WebGoat
  • Interfaccia WebWolf - http://localhost:9090/WebWolf

Installa Webgoat come applicazione autonoma

Assicurati di aver installato Java . Quindi, scarica l'ultima versione di WebGoat dalla pagina dei rilasci .

Infine, avvia WebGoat come mostrato di seguito.

$ 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]

Ora è il momento di correggere le vulnerabilità. Come accennato in precedenza, disconnetti Internet prima di iniziare a usarlo.

Come correggere i difetti delle applicazioni Web in tempo reale utilizzando WebGoat

Apri la tua navigazione web e vai a http://localhost:8080/WebGoat o http://indirizzo-IP:8080/WebGoat . Vedrai con la seguente schermata.

Accedi con:webgoat/webgoat . Questo è il login amministrativo. Puoi anche utilizzare un normale account utente:ospite/ospite .

Ora verrai indirizzato alla sezione panoramica di WebGoat, dove troverai varie istruzioni su come lavorare con WebGoat per correggere difetti e vulnerabilità comuni di un'applicazione web.

Come puoi vedere, ci sono molte categorie di lezioni nel riquadro di sinistra. Clicca su una categoria per visualizzare le lezioni incluse.

Ad esempio, fammi scegliere Injection Flaws -> Command Injection programma delle lezioni.

Come puoi vedere, ci sono 5 schede per la lezione selezionata.

  1. Mostra sorgente - Questo mostrerà il codice sorgente Java sottostante.
  2. Mostra soluzione - Questo mostrerà la soluzione completa della lezione selezionata.
  3. Mostra piano - Questo mostrerà gli obiettivi e gli obiettivi della lezione.
  4. Mostra suggerimenti - Questo mostrerà suggerimenti tecnici per risolvere la lezione.
  5. Riavvia la lezione - Se vuoi riavviare una lezione puoi usare questo link.

Fare clic su ciascuna lezione e provare a risolvere la lezione e, se necessario, utilizzare i suggerimenti. Se non riesci a risolvere la lezione utilizzando i suggerimenti, visualizza la soluzione per i dettagli completi.


Linux
  1. Cosa fai quando un'applicazione non è inclusa nel pacchetto per la tua distribuzione Linux?

  2. Apache vs Nginx:quale server Web dovresti scegliere

  3. Puoi passare da una finestra all'altra all'interno di un'applicazione in Openbox?

  4. Pitchfork - l'applicazione web dell'API Rackspace Cloud

  5. Come posso mostrare le immagini al di fuori della directory radice web nella mia applicazione php?

Perché viene visualizzato l'errore:snap "xyz" non trovato?

20 cose essenziali da sapere se sei su Nginx Web Server

Apache vs Nginx:quale server Web è il migliore per te?

Che cos'è un WAF (Web Application Firewall)? Tipi di WAF

Migrare un'applicazione .NET da Amazon Web Services

Migrare un'applicazione Web Java da Amazon Web Services