> Tech > Hachage des mots de passe et MSCHAP

Hachage des mots de passe et MSCHAP

Tech - Par Renaud ROSSET - Publié le 24 juin 2010
email

Dans " Protégez vos mots de passe " de décembre 1998, j'expliquais comment les OS de Microsoft stockent des dérivés de mots de passe plutôt que des mots de passe en clair. Ces dérivés résultent d'une fonction de chiffrement unidirectionnelle : NT introduit le mot de passe dans la fonction

Hachage des mots de passe et MSCHAP

et celle-ci produit un hachage,
chaîne d’octets dérivée que la fonction associe au mot de passe. Dans ce processus
de chiffrement, un client NT demande une connexion avec le serveur. Le serveur
répond par une question (challenge) de 8 octets aléatoires.
Le client hache le mot de passe de l’utilisateur, crypte la question du serveur
avec ce hachage et renvoie la question cryptée au serveur. (Le client envoie deux
réponses au serveur : l’une d’elles utilise le hachage de LAN Manager et l’autre
le hachage NT plus fort). Le serveur compare alors le hachage de la réponse du
client avec le hachage du client dans la base de données SAM. Si le hachage de
la réponse du client correspond au hachage de la SAM du client sur le serveur,
l’authentification est réussie.
PPTP et les services de réseau (tels que le partage de fichiers et d’imprimantes)
dépendent du processus de hachage de mot de passe pour la sécurité. C’est cette
dépendance qui conduit aux faiblesses de la sécurité de l’OS.C’est, en effet,
la compatibilité amont de NT avec LAN Manager qui est à  la source des problèmes
de sécurité de NT, car ce processus affaiblit considérablement les mots de passe
même bien choisis. La fonction de hachage de LAN Manager ne supporte pas les lettres
minuscules et divise les mots de passe de 14 caractères maximum en deux moitiés
de 7 octets, avant de les hacher. (LAN Manager utilise chacune des deux moitiés
pour crypter une constante de 8 octets via le DES (Data Encryption Standard).

LAN Manager concatène les deux valeurs, produisant un hachage de 16 octets). L’absence
de support des minuscules par LAN Manager et la division du mot de passe font
des mots de passe NT des cibles faciles à  atteindre et accélèrent les tentatives
de percement des mots de passe, par dictionnaire ou par la force, qu’utilisent
les programmes comme L0phtCrack. Bien que disposant d’une autre méthode de hachage
plus forte, l’OS n’a que la résistance de son maillon le plus faible.

Un client DUN peut utiliser plusieurs protocoles pour s’authentifier envers un
serveur PPTP, mais MSCHAP (Microsoft Challenge Handshake Authentification Protocol)
est le seul qui supporte le chiffrement consécutif du trafic de réseau. MSCHAP
utilise lui aussi un processus de chiffrement par question/réponse. Mais MSCHAP
1.0 est faible car il utilise des clés de chiffrement courtes en deux parties
du processus d’authentification. MSCHAP commence à  ajouter 5 octets nuls au hachage
LAN Manager de 16 octets du client. Ensuite il divise en trois les 21 octets résultant.

Enfin, il utilise chaque morceau de 7 octets du hachage LAN Manager pour chiffrer
trois fois la question de 8 octets du serveur, produisant une réponse de 24 octets.
La méthode de chiffrement de MSCHAP utilise à  répétition des clés de chiffrement
courtes et complète le hachage du mot de passe du client par des constantes.
Les hackers peuvent profiter des faiblesses du processus de chiffrement de MSCHAP
pour calculer le mot de passe original d’un client comme cela a été prouvé par
le programme de LHI conçu pour renifler les questions/réponses de PPTP et percer
les mots de passe. (La version actuelle du renifleur PPTP de LHI tourne sur Solaris).MSCHAP
n’authentifie que le client, pas le serveur.
Cette vulnérabilité permet à  un hacker de se faire passer pour le serveur PPTP
autorisé et de lancer plusieurs attaques. Par exemple un serveur malin peut renvoyer
une erreur de mot de passe expiré au client qui appelle, ce qui invite les utilisateurs,
à  leur insu, à  créer un nouveau mot de passe et à  l’envoyer au hacker. L’absence
d’authentification du serveur, propre à  MSCHAP, permet diverses attaques dites
 » man-in-the-middle  » (usurpateur).Microsoft a traité ces vulnérabilités dans
la mise à  jour PPTP3 du Service Pack 3 de NT 4.0, que comprend le SP4.
Dans cette correction, Microsoft a introduit MSCHAP 2.0. D’après Microsoft MSCHAP
2.0 utilise des questions du serveur et du client pour donner à  NT une authentification
mutuelle. De plus MSCHAP 2.0 ne supporte pas les changements de mots de passe
que permettait MSCHAP 1.0. Ces modifications rendent l’usurpation du serveur PPTP
(notamment l’astuce du mot de passe expiré) plus difficiles pour les hackers.
De plus MSCHAP 2.0 n’envoie pas le hachage LAN Manager dans des échanges question/réponse,
ce qui rend obsolète la version actuelle du renifleur PPTP.

Téléchargez cette ressource

Préparer l’entreprise aux technologies interconnectées

Préparer l’entreprise aux technologies interconnectées

Avec la « quatrième révolution industrielle », les environnements hyperconnectés entraînent de nouveaux risques en matière de sécurité. Découvrez, dans ce guide Kaspersky, comment faire face à cette nouvelle ère de vulnérabilité.

Tech - Par Renaud ROSSET - Publié le 24 juin 2010