Cahier 2016 groupe n°8 : Différence entre versions
(→Cassage mot de passe WPA-PSK par force brute) |
(→Tests d'intrusion) |
||
Ligne 164 : | Ligne 164 : | ||
[[Fichier:KeyfoundWPA.png|600px]] | [[Fichier:KeyfoundWPA.png|600px]] | ||
+ | |||
+ | === Réalisations === |
Version du 17 novembre 2016 à 14:14
Sommaire
Cahier des charges
Mise en réseau commutateur 6006
Configuration du commutateur 6006
Connexion au commutateur via liaison console et configuration
Pour la configuration des VLANS sur le commutateur, on commence par définir et nommer ces vlans via vlan database, par exemple pour le vlan 16 :
vlan database vlan 16 name wifi
Une fois les VLAN définis, on peut les associer aux différents ports du commutateur, les commandes CISCO sont (ici par exemple pour le VLAN2) :
interface GigabitEthernet 4/1 switchport switchport access vlan2 end
Pour finir on désactive le mode shutdown sur les ports que l'on a définie.
On a donc :
- 10 VLAN sur les ports Gigabitethernet 4/1 à 4/10 pour les élèves, les vlans sont les vlan2 à vlan11
- 1 VLAN (vlan12) pour les machines virtuelles défini sur le port 4/13
- 4 ports en mode TRUNK pour les accès aux routeurs,équipements wifi et Bounding Linux 4/47,4/48 et 5/47, 5/48
Travail Commun
Réalisation d'un site web sécurisé
Installation du système de la machine virtuelle Xen (zabeth17)
Xen étant un logiciel de (para)virtualisation de type hyperviseur, il permet de faire tourner plusieurs systèmes d'exploitation (OS) sur une même ressource matérielle (PC, Serveur,…).
Nous allons donc créer notre machine virtuelle, Batman, sur le serveur Cordouan à l'aide de Xen.
- Connexion sur le dom0 du serveur Cordouan en ssh
ssh root@cordouan.insecserv.cordouan.deule.net
- Création de l'image de la machine virtuelle
xen-create-image --hostname=Batman --dist=jessie --dir=/usr/local/xen --ip=193.48.57.168
- Modification du fichier de configuration correspondant à notre machine
xl create /etc/xen/Batman
- Connexion sur la machine virtuelle
xl console Batman //xl list (pour voir la liste des machines disponibles)
Cependant, il faut éviter de se connecter sur la VM avec la commande précédente car génère souvent des problèmes d'écriture en ligne de commandes.
Le mieux est de se connecter en ssh sur le serveur de l'école weppes:
ssh login@weppes (mot de passe demandé) ssh root@ip_VM
Après avoir créé notre VM,nous avons obtenu le mot de passe propre à notre système.
Ensuite, nous créons les systèmes de fichiers de la machine virtuelle afin que les répertoires var et home soient des partitions LVM de l'hôte
La démarche est la suivante :
- Création des partitions sdb1 et sdc1
- Formatage des partitions
- Montage du volume à modifier
- Recopie des des fichiers de /var dans un fichier /tmp
- Démontage du volume
- Montage de tous les systèmes de fichiers dans fstab
Commandes:
lvcreate -L 10G /dev/virtual/ima5-batman-home -v lvcreate -L 10G /dev/virtual/ima5-batman-var -v
ensuite nous les ajoutons dans le fichier de configuration.
Services Internet
Réservation du nom de domaine
Nous avons réservé un nom de domaine sur le registrar http://www.gandi.net : docteurgru.net et installé les paquetages nécessaires pour la réalisation du TP, à savoir apache2 et bind9
apt-get install apache2 apt-get install bind9
Afin de vérifier si tout se passe correctement, on utilise la commande host sur notre VM pour voir si le DNS effectue la résolution.
Sécurisation du serveur DNS par DNSSEC
Dans cette partie, nous allons sécuriser le DNS.
Après avoir créé le fichier de zone dans /etc/bind/docteurgru.net (c'est dans ce fichier où se trouve les enregistrements d'un domaine. Ces enregistrements établissent le lien entre les adresses IP et les noms) photo
- Dans le fichier named.conf.options, nous rajoutons l'option dnssec-enable yes
- Ensuite nous générons les clefs asymétriques de signature de clefs de zone et pour les enregistrements en utilisant l'utilitaire dnssec-keygen. Sous Debian le générateur d'aléa est faible, on utilisera l'option -r /dev/urandom
dnssec-keygen -a RSASHA1 -b 2048 -f KSK -n ZONE <nom_de_zone> dnssec-keygen -a RSASHA1 -b 1024 -n ZONE <nom_de_zone>
- Nous avons renommé les 2 paires de clés et les avons inclus dans le fichier de zone, en ayant pris le soin d'incrémenter la version
$include /etc/bind/<nom_de_zone>.dnssec/<nom_de_zone>-ksk.key $include /etc/bind/<nom_de_zone>.dnssec/<nom_de_zone>-zsk.key
- Après toutes ces manipulations,nous avons effectué des tests afin de s'assurer s'il était bien configuré à l'aide de l'outil "ZoneCheck" en renseignant docteurgru.net dans la case Domaine
Tests d'intrusion
Cassage de clef WEP d'un point d'accès Wifi
Dans cette partie du projet, nous devons nous connecter à un point d'accès wi-fi protégé par clé WEP.
Pour cela, nous avons tout d'abord téléchargé et installé les paquetages aircrack-ng sur notre eeePC.
Une fois les composants installés, nous nous sommes servis d'une clé réseau wifi connecté en USB pour analyser les accés disponibles alentours. Nous avons commencé par passer la carte Wi-fi en mode monitoring :
airmon-ng start wlan0
Nous avons ensuite analyser les points d'accés alentours à l'aide de :
airodump-ng mon0
Nous choisissons le réseau cracotte07 pour notre attaque.
Nous allons désormais faire en sorte de n'observer que notre cible, à l'aide de:
airodump-ng --essid cracotte07 --channel 13 -w dmp mon0
On lance ensuite aircrack à l'aide de :
aircrack-ng dmp-01.cap
Ce qui permet de trouver la clé WEP :
Cassage mot de passe WPA-PSK par force brute
Nous allons désormais casser le mot de passe d'un point d'accés Wi-Fi sécurisé en WPA2.
L'approche est différente de celle de la clé WEP car ici seules des techniques de force brute peuvent être utilisées. La seule donnée qui donne l'information entre le client et le point d'accès et la poignée de main (handshake en anglais).
Le moyen de casser la clé est ici d'utiliser un dictionnaire. Le sujet suppose que la clé comporte 8 chiffres, nous allons donc créer un dictionnaire comportant toutes les clés possédant 8 chiffres imaginables puis nous casserons le mot de passe par force brute.
Nous commençons par créer notre dictionnaire à l'aide de crunch :
crunch 8 8 0123456789 > dico.txt
Comme précédemment pour le crackage WEP, on passe l'interface en mode monitoring (voir ci-dessus).
On scanne ensuite les réseaux alentours, en précisant cette fois que l'on ne s'intéresse qu'aux réseaux protégés en WPA
airodump-ng --encrypt wpa mon0
On choisit ensuite un réseau pour l'attaque. Une fois de plus nous attaquons cracotte07 (qui est cette fois protégé en WPA2).
airodump-ng --encrypt wpa --bssid 04:DA:D2:9C:50:56 -w dmp mon0
Puis nous lançons aicrack, en spécificant cette fois l'utilisation du dictionnaire créé précédemment:
aircrack-ng -w dico.txt dmp-01.cap
L'attaque se lance donc :
Vu la puissance relativement faible de l'eeePC, la vitesse de calcul n'est pas très élevé et la recherche de la clé est très longue. Nous avons donc relancé l'attaque depuis une machine Zabeth disposant de plus de ressources.
Nous obtenons finalement la clé :