6 Corrigé du DS du 13 janvier 2017
Tous documents autorisés. Répondez directement sur l’énoncé.
Vous trouverez la correction sur le site web habituel.
6.1 Exercice système d’exploitation
Supposons que vous avez oublié le mot de passe administrateur de votre machine virtuelle dumbo.
Nous allons essayer de ré-initialiser ce mot de passe.
Procédons par étapes.
-
Sur quel serveur de virtualisation se trouve votre machine virtuelle ?
Vos machines virtuelles ont été créées sur le serveur
chassiron.insecserv.deule.net.
- Le disque virtuel de votre machine virtuelle se trouve dans le répertoire
/usr/local/xen/domains/dumbo/disk.img. Donnez une idée de grandeur de la taille de ce fichier.
Le disque virtuel doit contenir tous les fichiers d’une distribution Debian.
Soit quelques gigaoctets. Pour une distribution jessie, 4Go peuvent suffire.
- L’option -o loop permet à l’utilitaire mount de monter des fichiers
comme des partitions. Donnez la ligne de commande permettant de monter le disque virtuel
sur le répertoire /mnt.
mount -o loop -t ext4 /usr/local/xen/domains/dumbo/disk.img /mnt
- Une fois le montage effectué, quel fichier faut-il modifier pour changer le mot de
passe administrateur de la machine virtuelle ? Donnez le chemin complet du fichier.
Il faut modifier l’entrée root du fichier /mnt/etc/shadow.
- Sachant que le mot de passe est crypté, comment pouvez-vous faire pour remplacer
l’ancien mot de passe oublié par un nouveau mot de passe connu ?
Le plus simple est de prendre le mot de passe encrypté d’une machine dont on connait
le mot de passe en clair.
6.2 Exercice de configuration réseau
Il vous est demandé de configurer l’interface réseau d’une machine virtuelle déjà créée
et installée dans un réseau local associé au réseau IPv4 192.168.53.192/26.
Répondez aux questions suivantes.
-
Trouvez l’adresse IPv4 du routeur sachant qu’il possède la dernière adresse IPv4
utilisable du réseau.
La dernière adresse disponible est 192.168.53.254.
- Donnez le masque réseau avec la notation classique, c’est à dire celle des adresses IPv4.
Un masque avec 26 bits à 1 s’écrit de façon classique 255.255.255.192.
- Avec les éléments ci-dessus, donnez une configuration IP valide pour eth0 à saisir
dans le fichier interfaces (répertoire /etc/network) sur la machine virtuelle. La
machine virtuelle doit pouvoir contacter des machines à l’extérieur de son réseau local.
Un exemple de configuration IP valide pour la machine virtuelle est :
iface eth0 inet static
address 192.168.53.193
netmask 255.255.255.192
gateway 192.168.53.254
6.3 Exercice de cassage de clef WiFi
Nous allons considérer un protocole d’identification basé sur celui de WPA
(WiFi Protected Access) mais extrêmement simplifié :
-
La clef d’identification est sur un seul octet.
- Les adresses MAC sont aussi sur un seul octet.
- Les paquets contiennent les champs suivants :
-
le type de paquet sur un octet (0xaa pour les
paquets d’identification) ;
- l’adresse MAC du point d’accès ;
- l’adresse MAC de la station source ;
- l’adresse MAC de la station destination ;
- les données.
- L’identification se fait en trois échanges :
-
la station donne sa valeur aléatoire sur un octet ;
- le point d’accès donne sa valeur aléatoire sur un octet et un code
calculé en gardant les deux octets de poids faible de la multiplication des
adresses MAC, des valeurs aléatoires, de la clef d’identification et de la
constante 0x5555 ;
- la station vérifie le code envoyé par le point d’accès et transmet son
propre code calculé de façon similaire mais en utilisant la constante 0xaaaa
à la place de 0x5555. Le point d’accès peut alors identifier la station.
Un analyseur réseau est utilisé pour capturer les trois premiers échanges de
l’identification entre une station et le point d’accès.
-
paquet 1
- : aa a5 3f 00 d3 ;
- paquet 2
- : aa a5 00 3f 27 6f e6 ;
- paquet 3
- : aa a5 3f 00 df cc ;
Répondez aux questions suivantes :
-
Quelle est l’adresse du point d’accès ? Quelle valeur aléatoire transmet-il
à la station ?
L’adresse du point d’accès est donnée par le second octet des paquets : 0xa5.
La valeur aléatoire du point d’accès est le premier octet des données du
second paquet : 0x27.
- Quelle est l’adresse de la station ? Quelle valeur aléatoire transmet-elle
au point d’accès ?
L’adresse de la station est donnée, par exemple, par le troisième octet du
premier paquet : 0x3f. La valeur aléatoire de la station est le
premier octet des données du premier paquet : 0xd3.
- Quel est le code calculé par la station ?
Ce code est visible dans les deux derniers octets de données du troisième paquet : 0xdfcc.
- A partir du code de la station, trouvez la clef d’identification. Donnez la en hexa-décimal.
Une solution pour trouver la clef consiste à tester les 256 possibilités.
C’est à dire calculer l’expression suivante pour clef de 0 à 255 :
long int code=(MAC_STATION*MAC_AP*ALEA_STATION*ALEA_AP*clef*0xaaaa)&0xffff;
Quand code est égal à 0xdfcc vous avez trouvé la
bonne valeur de clef. Soit 82 dans le cas présent.