Guide étape par étape sur la façon de configurer et
d'installer DVWA sur votre système Kali Linux.
Lorsque vous commencez en tant que testeur de pénétration, vous aurez besoin
d'un laboratoire de pentestage pour tester vos compétences de pénétration. Un tel
système est le Damn Vulnerable Web Application ( DVWA ). DVWA est une
application Web vulnérable développée à l'aide de PHP et MySQL qui permet aux
pirates éthiques de tester leurs compétences de piratage et leurs outils de
sécurité.
C'est également un excellent guide pour les développeurs Web professionnels en
pensant à la sécurité. Ils peuvent l'utiliser pour savoir quelles fonctionnalités d'une
application Web sont faciles à exploiter. Certaines des vulnérabilités Web les plus
courantes démontrées par cette application incluent la contrefaçon de demande de
site croisé ( CSRF ), l'inclusion de fichiers, l'injection SQL, les attaques Bruteforce,
etc.
Pré-requis pour installer DVWA
Cette installation suppose que vous avez déjà effectué la mise en service et
l'exécution du serveur Kali Linux.
Étape 1: Téléchargez Damn Vulnerable Web Application ( DVWA )
Pour commencer, nous devrons cloner le DVWA GitHub dans notre /var/www/html
répertoire. C'est l'emplacement où les fichiers Localhost sont stockés dans les
systèmes Linux. Lancez le terminal et modifiez notre répertoire dans le répertoire
/ var / www / html avec la commande ci-dessous.
$ cd / var / www / html
Sortie d'échantillon:
Une fois dans ce répertoire, nous cloner le référentiel DVWA GitHub avec la
commande ci-dessous.
$ clone sudo git https://github.com/digininja/DVWA
Sortie d'échantillon:
Après le clonage, nous pouvons renommer le dossier DVWA en dvwa. Ce n'est pas
obligatoire, mais cela facilite le travail lors de l'exécution de plusieurs commandes.
$ sudo mv DVWA dvwa
Étape 2: configurer DVWA
Après avoir téléchargé le clonage DVWA dans notre /var/www/html répertoire,
nous devons encore faire quelques configurations mineures. Pour commencer,
définissons les autorisations de lecture, d'écriture et d'exécution dans le répertoire
DVWA. Exécutez la commande ci-dessous.
$ chmod -R 777 dvwa/
Sortie d'échantillon:
Après avoir exécuté la commande avec succès, nous devons configurer l'utilisateur
et le mot de passe nécessaires pour accéder à la base de données. Modifiez le
répertoire pour pointer vers le répertoire de configuration avec la commande ci-
dessous.
$ cd dvwa / config
Lorsque vous exécutez la commande ls pour afficher les fichiers dans le répertoire,
vous verrez le config.inc.php.dist fichier. Il s'agit du fichier d'origine contenant les
configurations par défaut. Nous ne le modifierons pas. Au lieu de cela, nous allons
créer une copie de ce fichier appelé config.inc.php et
l'original config.inc.php.dist le fichier agira comme notre sauvegarde en cas de
problème.
Exécutez la commande ci-dessous.
sudo cp config.inc.php.dist config.inc.php
Sortie d'échantillon:
Exécutez la commande ci-dessous pour ouvrir le fichier nouvellement créé
avec nano éditeur et effectuez les modifications nécessaires, comme indiqué dans
l'image ci-dessous. Nous allons définir db_user en tant qu'utilisateur
et db_password comme pass. N'hésitez pas à utiliser un nom d'utilisateur ou un mot
de passe différent.
$ sudo nano config.inc.php
Sortie d'échantillon:
Enregistrez le fichier (Ctrl + O, alors Enter) et sortie ( Ctrl + X ). C'est ça! Nous
avons terminé la configuration de l'application Web DVWA. Passons à autre chose et
configurons la base de données ( MySQL ).
Étape 3: Installez MySQL sur Kali Linux
Par défaut, MySQL est préinstallé sur Kali Linux. Si ce n'est pas le cas pour vous ou
peut-être que vous avez foiré avec MySQL, nous pouvons aller de l'avant et
l'installer manuellement. Si vous avez travaillé avec des distributions basées sur
Debian, MySQL est disponible en deux paquets:
mysql-server
mysql-client
Dans notre cas, nous devrons installer le serveur mysql. Cependant, il y a un hic. Si
vous essayez d'utiliser la commande apt install mysql-server, vous obtiendrez très
probablement l'erreur "Le serveur mysql de package n'est pas disponible, mais est
mentionné par un autre package. E: Le package 'mysql-server' n'a pas de candidat
d'installation." En effet, le serveur mysql du paquet est référé au serveur mysql par
défaut dans Kali Linux et également dans la dernière version de Debian ( Debian 10
). Par conséquent, utilisez la commande ci-dessous:
sudo apt install default-mysql-server
Échantillon de sortie:
Étape 4: configurer la base de données MySQL
Démarrez le service Mysql avec la commande ci-dessous:
$ sudo service mysql start
Vous pouvez vérifier si le service fonctionne à l'aide du systemctl status commande
ci-dessous.
$ systemctl status mysql
Sortie d'échantillon:
Connectez-vous à la base de données MySQL en utilisant la commande ci-dessous en
tant que root. Si vous avez un autre nom défini pour le superutilisateur dans votre
système, utilisez-le à la place de root.
$ sudo mysql -u root -p
Vous verrez une invite pour saisir le mot de passe. Appuyez simplement sur Entrée
car nous n'avons défini aucun mot de passe. MySQL s'ouvrira, comme indiqué dans
l'image ci-dessous:
Nous allons créer un nouvel utilisateur avec le nom d'utilisateur et le mot de passe
définis dans notre fichier de configuration d'application DVWA. Dans mon cas, le
nom d'utilisateur était ‘user,' et le mot de passe était ‘pass.’ Le serveur que nous
utilisons est Localhost ( 127.0.0.1 ). Utilisez la commande ci-dessous.
create user 'user'@'127.0.0.1' identified by 'pass';
Sortie d'échantillon:
Nous devons accorder ce nouveau privilège d'utilisateur sur la base de données
dvwa. Exécutez la commande ci-dessous.
grant all privileges on dvwa.* to 'user'@'127.0.0.1' identified by
'pass';
Jusqu'à présent, nous avons fini de configurer à la fois l'application DVWA et la base
de données MySQL. Tapez exit pour fermer la base de données.
Étape 5: Installer PHP
PHP est installé dans Kali Linux. Cependant, si vous souhaitez installer une version
particulière, vous pouvez le faire manuellement à partir du terminal. Dans cet
article, nous installerons PHP 7.4 qui est la dernière version à l'écriture de cet
article. Suivez les étapes ci-dessous.
Tout d'abord, mettez à jour votre système et ajoutez le référentiel PPA PHP SURY
en exécutant les commandes ci-dessous.
sudo apt update
sudo apt -y install lsb-release apt-transport-https ca-certificates
sudo wget -O /etc/apt/trusted.gpg.d/php.gpg
https://packages.sury.org/php/apt.gpg
echo "deb https://packages.sury.org/php/ buster main" | sudo tee
/etc/apt/sources.list.d/php.list
Échantillon de sortie:
Après avoir ajouté le référentiel avec succès, utilisez la commande ci-dessous pour
installer PHP 7.4
sudo apt update
sudo apt install php7.4 -y
Échantillon de sortie:
Pour installer des extensions PHP supplémentaires, utilisez la syntaxe ci-dessous où xxx
représente le nom de l'extension.
sudo apt install php7.4-xxx
par exemple
sudo apt install php7.4- { cli, json, imap, bcmath, bz2, intl, gd,
mbstring, mysql, zip }
Échantillon de sortie:
Étape 6: configurer Apache Server
Maintenant, nous devons configurer le serveur. Utilisez la commande ci-dessous pour
modifier votre emplacement sur le terminal pour pointer
vers /etc/php/7.3/apache2 répertoire.
$ cd / etc / php / 7.4 / apache2
REMARQUE:
Au moment d'écrire ce message, j'exécutais la version 7.4 de PHP. Vous devrez
peut-être confirmer votre version et la remplacer sur la commande. Utilisez la
commande ci-dessous pour vérifier la version installée.
$ ls / etc / php
Dans le /etc/php/7.4/apache2, lorsque vous exécutez la commande ls, vous verrez
un fichier appelé php.ini. C'est le fichier que nous modifierons pour configurer
notre serveur localhost. Utilisez la commande ci-dessous pour l'ouvrir à l'aide de
l'éditeur nano.
$ sudo nano php.ini
Faites défiler vers le bas et recherchez ces deux
lignes: allow_url_fopen et allow_url_include. Définissez-les tous les deux comme On.
Enregistrez le fichier (Ctrl + O, alors Enter) et sortie (Ctrl + X).
Démarrez le serveur Apache en utilisant la commande ci-dessous:
$ sudo service apache2 start
Pour vérifier si le service a démarré avec succès, utilisez la commande d'état.
$ état systemctl apache2
Sortie d'échantillon:
Étape 7: accédez à DVWA sur votre navigateur
C'est ça! Nous avons maintenant tout configuré et nous pouvons procéder au
lancement de DVWA. Ouvrez votre navigateur et entrez l'URL:
http://127.0.0.1/dvwa/
Cela ouvrira le setup.php page Web comme indiqué dans l'image:
Vous pouvez voir les erreurs colorées en rouge comme dans l'image ci-dessus. Pas
de panique! Faites défiler vers le bas et cliquez sur le bouton Créer / Réinitialiser
la base de données.
Cela créera et configurera la base de données. Après un certain temps, vous serez
redirigé vers la page de connexion DVWA. Connectez-vous avec ces informations
d'identification:
- admin
– password
Une fois connecté, vous verrez la page principale de DVWA. Sur le panneau de
gauche, nous avons les différents types d'attaques que vous pouvez exploiter et le
bouton de sécurité DVWA qui vous permet de choisir le niveau de sécurité
souhaité - Faible, Moyen, Haut, ou impossible.