Se connecter avec
S'enregistrer | Connectez-vous

Sécurité : WinZip et WinRAR

Peut-on casser un mot de passe avec une carte graphique ?
Par

Les mots de passe ne débloquent pas directement les fichiers chiffrés : il faut générer une clé de déchiffrement à partir du mot de passe et c’est exactement ce que nous avons fait jusqu’ici. Il y a là un goulet d’étranglement pour les attaques par la force brute : vu que la dérivation de clé représente 99 % du processus de récupération, il faut donc des ressources conséquentes pour en venir à bout.

WinZip et WinRAR utilisent tous deux la fonction de hachage cryptographique SHA-1 (Secure Hash Algorithm) pour dériver des clés, mais le mécanisme est différent. WinZip s’appuie sur la fonction PBKDF2 (Password-Based Key Derivation Function 2.0) et emploie l’algorithme SHA-1 à 2002 reprises pour générer une clé. Toutefois celle valeur est constante quelle que soit la longueur du mot de passe (64 caractères maximum), d’où le fait qu’un mot de passe de 10 caractères soit aussi facile à casser avec l’AES-256 qu’avec l’AES-128.

En comparaison, WinRAR utilise son propre système de dérivation de clé. Celui-ci nécessite (longueur du mot de passe x 2 + 11) x 4096 transformations en SHA-1, d’où le fait que les attaques par la force brute sont nettement plus chronophages sur des archives WinRAR.

2 x GeForce GTX 570 en SLI
Attaque par force brute
(combinaisons/seconde)
Parallel Password Recovery Accent Password Recovery
 Compression: Zip
Cryptage : AES-128
495 133
513 936
Compression: Zip
Cryptage : AES-256
496 244
513 880
Compression: RAR Normal
Cryptage : AES-128
13 90414 605

Dans la pratique, on a tout de même autrement plus de chances d’oublier un mot de passe plutôt que de voir une de ses archives protégées tomber dans les mains de quelqu’un ayant beaucoup de temps et de moyens. Quand bien même cette personne aurait une configuration à la pointe, il lui faudrait plus de mille ans pour casser un mot de passe à 9 caractères pour une archive WinZip chiffrée en AES-128. Il est toutefois nettement plus facile de récupérer un mot de passe oublié si l’on sait à quoi il ressemble.

Imaginons par exemple un mot de passe à 10 caractères ASCII dont on connait les caractéristiques suivantes :

  • Commence par e
  • Finit par a
  • Sans majuscules
  • Un point d’exclamation
  • Ne contient aucune des lettres suivantes : B, C, D, Q, T, U, V, W, X, Y, Z

On passe alors de 205 trillions à 1 trillion de combinaisons à essayer, ce qui est réalisable avec une paire de GTX 570. La récupération d’un mot de passe est par contre quasi-impossible avec WinRAR, à moins que celui-ci ne soit très court.