previous up next contents
Previous: 1 A1. Menaces venant Up: Identification dans les systèmes Next: 3 A3. Générateurs pseudo-aléatoires   Contents

Subsections

2 A2. Se méfier des passoires.

En ce qui concerne les logiciels "intégrés", nombre de produits commerciaux s'agrémentent d'utilitaires "de protection". Mais il n'est pas rare que ces utilitaires ne soient en fait que des passoires. Donnons en quelques exemples.

2.1 Dbase

Le générateur de menus déroulants "Dboutils" permet d'ajouter un mot de passe pour protéger certaines options. La Table 13 décrit le code généré pour le mot de passe "confidentialité".


Table 13: Les mots de passe avec DbOutils.
\begin{table}\texttt{@ 11,37 GET mot\_passe}
\par\texttt{READ}
\par\texttt{mot\_...
...le codage du password}
\par\texttt{   RETURN}
\par\texttt{ENDIF}
\par\end{table}


Il y a au moins trois fautes : la conversion automatique en majuscules est une mauvaise idée, car l'alternance majuscules/minuscules augmente la sécurité à peu de frais. Le générateur et le décodeur ne sont pas d'accord sur les caractères IBM : il faudrait -129 et non -127. En outre UPPER convertit "é" en "E", donc il devrait y avoir " " et non CHR(1) comme dernier caractère.

Et, bien entendu, ce codage ne résiste pas beaucoup. Mais il est vrai que la documentation est très discrète, et ne promet pas grand chose non plus.

2.2 WordPerfect

Il n'en est pas de même pour WordPerfect dont la notice affirme péremptoirement : "il n'existe aucun moyen de récupérer un document protégé sans le mot de passe".

Un article [1] avait déjà montré que l'algorithme de chiffrement de la version 4.2 ne résistait pas bien longtemps à une analyse de fréquences, le plus long étant de déterminer la longueur de la clef.

La version 5.0 n'a pas amélioré les choses [4] : les documents sont précédés par un descripteur d'imprimante, qui est chiffré lui aussi, alors qu'une partie en est immuable : ce qui permet de décrypter le document en commençant par trouver la clef, "procédure qui tient au dos d'une large enveloppe"...

2.3 Lock/Unlock de SoftLogic Solution

Terminons par deux utilitaires pour compatibles-PC sous MS-DOS et qui sont vendus "en prime" d'un logiciel de réorganisation de disque ("Optimize").

Écrits en assembleur, Lock/Unlock résistent remarquablement au traçage malgré leur petite taille, car ils écrasent les routines correspondantes (BRK, STEP et INT 03) puis utilisent leurs vecteurs ainsi que l'horloge interne pour gérer les enchaînements au lieu de passer par des appels de procédures. Par ailleurs, l'image sur disque des parties sensibles du code exécutable est chiffrée, et bien entendu leur mise en clair est écrasée avant de rendre la main.

Cela dit, une fois les "pièges" contournés et le programme désassemblé, on se rend compte de ce que les fichiers chiffrés (après un détrompeur pour éviter de chiffrer deux fois de suite) commencent par les 12 octets de la clef, seulement protégés par une suite facilement inversible de permutations et de décalages. Autrement dit, une fois réalisé l'investissement initial (disons trois jours), le procédé est définitivement brisé.


previous up next contents
Previous: 1 A1. Menaces venant Up: Identification dans les systèmes Next: 3 A3. Générateurs pseudo-aléatoires   Contents


douillet@ensait.fr
2002-01-05