30.11.2012 Views

technique - Zenk - Security

technique - Zenk - Security

technique - Zenk - Security

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

i<br />

AES<br />

Le but est de sensibiliser les utilisateurs<br />

de FDE des menaces pesant sur la<br />

confidentialité de leurs données et de la<br />

réalité d'une telle attaque.<br />

Principe<br />

Les manipulations présentées au cours de<br />

cet article ont été réalisées avec Truecrypt<br />

V6.2. Ce FDE a été certifié CSPN par la<br />

DCSII dans sa version 6.0a. Truecrypt<br />

permet de faire du chiffrement à la volée<br />

avec :<br />

• un disque dur (ou une partition),<br />

• un conteneur (exemple pris dans cet<br />

article),<br />

• l'ensemble d'un système d'exploitation.<br />

Lorsque l'on souhaite accéder à des<br />

données chiffrées dans un conteneur (ou<br />

Clés d’entête<br />

KE 1 KE 2<br />

Entête non chiffré<br />

+ Master Key<br />

+ Secondary Key<br />

+ ...<br />

AES<br />

Entête<br />

TrueCrypt<br />

Figure 1. Synoptique chiffrement AES-XTS d'un entête Truecrypt<br />

Figure 2. Formule du nombre de clés<br />

possibles<br />

∂ i<br />

PBKDF20<br />

Mot de passe<br />

un disque), on est invité à saisir son mot<br />

de passe. Une fois saisi, le mot de passe<br />

est utilisé dans une fonction de dérivation<br />

de clef (PBKDF2). Cette fonction génère<br />

deux clés (nommé HeaderKeys HK) à<br />

partir d'un mot de passe et d'un sel. HK<br />

serviront à chiffrer/déchiffrer l'en-tête<br />

du conteneur contenant, les clefs de<br />

chiffrements des données (nommées<br />

MasterKey et SecondaryKey : MK, SK ).<br />

Le chiffrement utilisé dans cet article est<br />

AES avec le mode XTS cf. Figure 1. C'est<br />

l'utilisation de ce mode particulier qui<br />

nécessite la présence de deux clés.<br />

Une fois que MK et SK ont été<br />

récupérées, elles se trouvent en RAM tant<br />

que le conteneur est en cours d'utilisation.<br />

Une fois que le volume est démonté, MK et<br />

Figure 3. Injection de MK et SK et remplacement de l'entête<br />

Salt<br />

Volume de creation d’enête<br />

Enête Données chiffrées<br />

Remplacement<br />

de l’enête cible<br />

Conteneur cible<br />

Injecton de MK<br />

et SK<br />

Entête Données chiffrées cible<br />

LA RAM<br />

Listing 1. Erreur du BOSD généré<br />

par crash dump<br />

*** STOP: 0x000000E2 (0x00000000,<br />

0x00000000,0x00000000,<br />

0x00000000)<br />

The end-user manually<br />

generated the crashdump.<br />

Listing 2. Clés récupérées en RAM<br />

606433e1479ba65d746e2d2bbd6a1034<br />

3cab8a95f649e42dd7006e780afeb13c<br />

dfea3045db773064d3c2299d8ebc10fd<br />

5ab4140a570c256b53dee55623125108<br />

000102030405060708090a0b0c0d0e0f<br />

101112131415161718191a1b1c1d1e1f<br />

SK sont effacées définitivement de la RAM<br />

grâce à la fonction Burn(). Cette fonction<br />

est chargée d’effacer proprement les<br />

données en RAM pour empêcher de les<br />

récupérer une fois le conteneur démonté.<br />

Le principe de l’attaque, est de<br />

récupérer l’ensemble des clés de<br />

chiffrement en RAM (en contournant cette<br />

fonction burn()) et de retrouver parmi elles<br />

MK et SK. Le nombre de combinaison<br />

possible λ est définit par la formule décrite<br />

dans la Figure 2. Ce nombre dépend du<br />

nombre d'arrangement composé de p<br />

clés parmi les n clés récupérées ainsi que<br />

du nombre d'algorithmes de chiffrements<br />

et de système de fichier disponibles par le<br />

FDE. Pour XTS, MK ne peut pas prendre la<br />

place de SK et vice versa c'est pour cela<br />

que l'on utilise la formule de l'arrangement<br />

au lieu de celle des combinaisons. Si<br />

on prend un cas défavorable (en récupérant<br />

10 clés en RAM), cela fait 1440<br />

Entête de<br />

sauvegrade<br />

Entête de<br />

sauvegrade<br />

1/2010 HAKIN9<br />

65

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!