[MAJ] Cryptsetup – Devenez root sans mot de passe !!!

MAJ du 21/11/2016: Les différentes distributions affectées par cette faille de sécurité ont réagi rapidement puisque les paquets de correction sont déjà disponibles. Je vous invite donc à lancer rapidement vos mises à jour système.


La faille découverte par Hector Marco Gisbert, professeur d’informatique dans une université, touche aussi bien toutes les distributions Linux Débian et Ubuntu.

Il y a une vulnérabilité dans Cryptsetup qui ouvrent la partition système lorsque la partition est cryptée avec LUKS (Linux Unified Key Setup). Cette vulnérabilité permet d’obtenir une racine shell initramfs sur les systèmes affectés.

Pour tester si vous êtes impacté, il vous suffit simplement de rester appuyé sur la touche « Entrée  » de votre clavier pendant environ 70 secondes au moment de la demande de mot de passe après le boot. Apparaît alors le shell vous permettant d’effacer tous les disques cryptés ou d’accéder aux partitions non cryptés avec les droits root !!

Le faille est due à une mauvaise manipulation de la vérification de mot de passe dans le fichier de script /scripts/local-top/cryptroot .
Lorsque l’utilisateur dépasse le nombre maximum de tentatives de mot de passe (par défaut 30), la séquence de démarrage se poursuit normalement. Voilà ce que ça donne via l’image ci-après:cryptsetup - faille

Ici on voit le résultat avec une distribution kali linux et un disque crypté.
Le pire c’est que cela ne fonctionne uniquement que si vous avec crypté votre disque dur, sinon aucun problème….enfin pour le moment. Il semblerait que cette attaque soit également disponible à distance.

Cette faille est simple à corriger. Il suffit de modifier le fichier cryptroot de sorte que lorsque le nombre de suppositions de mot de passe a été épuisé, le système arrête la séquence de démarrage et ne parte pas sur le shell.

Les distributions Linux concernées par cette faille vont rapidement se mettre à jour. Pensez donc à surveiller vos mises à jour ou à faire la modification suivante si cela n’est pas possible

 

cryptsetup_fix_CVE-2016-4484.patch
--- A / scripts / local-top / cryptroot 29/07/2016 10: 56: 12,299794095 0200
+++ B / scripts / local / top cryptroot 29/07/2016 11: 00: 57,287794370 0200
 @@ -273,6 +273,7 @@
 
 # Essayez d'obtenir les temps d'un mot de passe satisfaisante $
 count = 0
+ Réussite = 0
 tandis que [$ crypttries 0 -le] || [Count $ -lt $ crypttries]; faire
 export CRYPTTAB_TRIED = "$ count"
 count = $ (($ count + 1))
@@ @@ 350,15 -349,12 
 être
 
 message "cryptsetup: $ crypttarget mis en place avec succès"
+ Success = 1
 pause
 terminé
 
- Si [$ crypttries -gt 0] && [$ count -gt $ crypttries]; puis
 - message "cryptsetup: nombre maximum de tentatives de dépassement pour $ crypttarget"
 - retour 1
 + si [$ succès -eq 0]; puis
 + message "cryptsetup:.. Le nombre maximum de tentatives de dépassement S'il vous plaît redémarrer"
 + while true; faire
 + 100
 + done
 fi
 
 udev_settle

Sébastien

Ingénieur pour l'aviation civile. Passionné d'informatique. Curieux des nouvelles technologies et de la cyber-sécurité.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *