Previous Up Next

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.

  1. Sur quel serveur de virtualisation se trouve votre machine virtuelle ?
    Vos machines virtuelles ont été créées sur le serveur chassiron.insecserv.deule.net.
  2. 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.
  3. 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
    
  4. 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.
  5. 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.

  1. 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.
  2. 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.
  3. 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é :

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 :

  1. 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.
  2. 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.
  3. 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.
  4. 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.

Previous Up Next