GNU/Linux >> Tutoriels Linux >  >> Linux

WebGoat vous apprend à corriger les défauts des applications Web en temps réel

Bonjour, développeurs Web ! Aujourd'hui, nous allons discuter d'une application super utile qui vous apprend des leçons sur la sécurité des applications Web. Dites bonjour à WebGoat , une application Web délibérément non sécurisée développé par OWASP , dans le but d'enseigner comment corriger les défauts courants des applications Web en temps réel grâce à des exercices pratiques. Cette application peut être très utile pour ceux qui souhaitent en savoir plus sur la sécurité des applications et les techniques de test de pénétration.

Mise en garde : WebGoat est PUREMENT À DES FINS ÉDUCATIVES . Cela rend votre système extrêmement vulnérable aux attaquants. Donc, j'insiste pour que vous l'utilisiez dans une machine virtuelle de votre réseau local. Ne connectez pas votre machine de test à Internet. Vous êtes prévenu !

Comment déployer WebGoat

WebGoat peut être déployé à l'aide de Docker ou en tant qu'application autonome. Comme c'est purement à des fins d'apprentissage et d'enseignement, je préfère l'utiliser dans Docker.

Installer Webgoat à l'aide de Docker

Reportez-vous aux liens suivants pour installer Docker si vous ne l'avez pas déjà installé.

  • Comment installer Docker dans CentOS
  • Comment installer Docker dans Ubuntu

Après avoir installé Docker, exécutez la commande suivante pour déployer 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 

Remplacez le fuseau horaire par le vôtre dans la commande ci-dessus.

Cette commande extrait la dernière image du docker WebGoat et démarre les instances WebGoat et webwolf en quelques minutes. Une fois qu'il a démarré, vous verrez une sortie comme ci-dessous.

[...]2017-12-05 11:22:50,132 INFO - FrameworkServlet 'mvc-dispatcher' :initialisation terminée en 533 ms2017-12-05 11:22:50,171 INFO - Initialisation du servlet webgoat principal2017-12- 05 11:22:50,173 INFO - Accédez à http://localhost:8080/WebGoat et bon piratage ! 5 décembre 2017 11:22:50 AM org.apache.coyote.http11.Http11Protocol startINFO :Démarrage de ProtocolHandler ["http-bio-8080"]

Une fois l'image docker lancée, vous pouvez accéder à la page de destination, aux interfaces WebGolf et WebWolf aux URL suivantes.

  • La page de destination - http://localhost
  • Tableau de bord WebGoat - http://localhost:8080/WebGoat
  • Interface WebWolf :http://localhost:9090/WebWolf

Installer Webgoat en tant qu'application autonome

Assurez-vous d'avoir installé Java . Ensuite, téléchargez la dernière version de WebGoat à partir de la page des versions .

Enfin, démarrez WebGoat comme indiqué ci-dessous.

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

Il est maintenant temps de corriger les vulnérabilités. Comme je l'ai mentionné plus tôt, déconnectez Internet avant de commencer à l'utiliser.

Comment corriger les défauts des applications Web en temps réel à l'aide de WebGoat

Ouvrez votre navigateur Web et accédez à http://localhost:8080/WebGoat ou http://IP-address:8080/WebGoat . Vous verrez avec l'écran suivant.

Connectez-vous avec :webgoat/webgoat . Il s'agit de la connexion administrative. Vous pouvez également utiliser un compte d'utilisateur normal :invité/invité .

Maintenant, vous serez redirigé vers la section de présentation de WebGoat où vous trouverez diverses instructions sur la façon de travailler avec WebGoat pour corriger les failles et vulnérabilités courantes d'une application Web.

Comme vous pouvez le constater, il existe de nombreuses catégories de cours dans le volet de gauche. Cliquez sur une catégorie pour voir les leçons incluses.

Par exemple, laissez-moi choisir Injection Flaws -> Command Injection plan de leçon.

Comme vous pouvez le voir, il y a 5 onglets pour la leçon sélectionnée.

  1. Afficher la source - Cela affichera le code source Java sous-jacent.
  2. Afficher la solution - Cela affichera la solution complète de la leçon sélectionnée.
  3. Afficher le plan - Cela montrera les buts et les objectifs de la leçon.
  4. Afficher les conseils - Cela montrera des conseils techniques pour résoudre la leçon.
  5. Recommencer la leçon - Si vous souhaitez recommencer une leçon, vous pouvez utiliser ce lien.

Cliquez sur chaque leçon et essayez de résoudre la leçon et si nécessaire, utilisez les astuces. Si vous ne parvenez pas à résoudre la leçon à l'aide des conseils, consultez la solution pour plus de détails.


Linux
  1. Que faites-vous lorsqu'une application n'est pas packagée pour votre distribution Linux ?

  2. Varnish Cache :Un accélérateur d'applications Web sur CentOS

  3. Une introduction aux pare-feu d'applications Web pour les administrateurs système Linux

  4. Pouvez-vous basculer entre les fenêtres d'une application dans Openbox ?

  5. Pitchfork - l'application Web de l'API Rackspace Cloud

Pourquoi voyez-vous l'erreur :snap "xyz" introuvable ?

20 choses essentielles à savoir si vous êtes sur le serveur Web Nginx

Apache vs Nginx :quel serveur Web vous convient le mieux ?

Qu'est-ce qu'un WAF (Web Application Firewall) ? Types de WAF

Migrer une application .NET depuis Amazon Web Services

Migrer une application Web Java depuis Amazon Web Services