Archives de catĂ©gorie : Truecrypt

Stoned Bootkit : Premier Bootkit pour Truecrypt

Stoned BootkitVoici Stoned Bootkit, le premier bootkit visant les OS Windows entièrement chiffré avec Truecrypt.

Stoned remplace le bootloader de Truecrypt par le sien ce qui lui permet de se lancer avant l’OS chiffrĂ© puis de lancĂ© l’OS avec le mot de passe que l’utilisateur rentre. Un attaquant peut donc lancer des programmes avant le dĂ©marrage de Windows et ainsi rendre vulnĂ©rable l’OS chiffrĂ©. Ce bootkit fonctionne avec TC 6.x et presque tous les Windows 32bits de 2000 Ă  la RC de 7. Stoned ne peut fonctionner qu’avec les BIOS traditionnels. Les nouveaux BIOS EFI ne sont pas vulnĂ©rable.

Toutefois Stoned Vienna n’a que 2 de façon de s’installer :

  • Soit un attaquant Ă  les droits administrateurs pour réécrire la MBR afin de s’y installer. Ce qui veut dire que l’OS chiffrĂ© est dĂ©jĂ  compromise.
  • Soit un attaque a un accĂ©s phyique Ă  la machine et peut installer stoned bootkit directement dans la MBR.

Et c’est justement ces 2 contraintes qui ont crĂ©er la polĂ©mique entre Peter Kleissner et l’Ă©quipe de Truecrypt.  Voici toute l’histoire :

Continuer la lecture de Stoned Bootkit : Premier Bootkit pour Truecrypt

Hidden Operating System

truecrypt-iconJe présentais le concept de Hidden Operating System dans ce billet. Je vais à présent faire un tuto pour expliquer comment le mettre en place.

Introduction

Dans le cas d’une utilisation d’un système d’exploitation chiffrĂ© mĂŞme si l’affichage de l’Ă©cran Truecrypt de prĂ©-boot est masquĂ© par un autre message, par exemple « Missing operating system », il suffit de dumper la MBR pour voir que le boot est gĂ©rĂ© par Truecrypt.
Il devient donc possible pour un attaquant de forcer l’utilisateur Ă  rĂ©vĂ©ler le mot de passe du système d’exploitation chiffrĂ© Ă  grand coup de rubber hose cryptanalyse.

Le principe de l’Hidden Operating System, est de cacher le Système contenant des fichiers confidentiel dans un volume cachĂ©. L’ordinateur aura donc 2 OS, dans 2 partitions diffĂ©rentes. Une OS leurre, et une OS confidentiel.

Continuer la lecture de Hidden Operating System

Les FLOPS, les clés et la taille des mots de passe

En matière d’attaque par force brute il faut bien différencier l’attaque sur le mot de passe que tapent l’utilisateur et l’attaque sur la clé qui est issus du mot de passe. L’attaque par force brute consiste à utiliser une très grande puissance de calcul pour essayer toutes les combinaisons possible d’une chaine donnée. Les supercalculateurs quantique n’étant encore que des objets de recherche ils ne feront pas l’objet de cette démonstration.

Comme il a été déjà démontré, une clé s’obtient par le calcul de 3 éléments : Le mot de passe, la salt et des itérations. La présence de SALT empêche l’utilisation de rainbow table, et les itérations permettent de ralentir la génération de la clé. Ce billet ne prendra pas en compte les Itérations et le type de Hash dans le calcul du mot de passe. Cela sera fait dans un prochain billet.

Continuer la lecture de Les FLOPS, les clés et la taille des mots de passe

Rubber-hose cryptanalyse et Hidden Operating System

La rubber-hose cryptanalyse (cryptanalyse de la matraque en caoutchouc) est un euphémisme qui symbolise l’obtention de la clé de chiffrement par un moyen de coercition. Ce terme de rubber-hose a été utilisé pour la première fois en octobre 1990 par J. Marcus Ranum dans le groupe de discussion de référence en cryptologie « sci.crypt » à travers cette phrase à présent célèbre :

“…in which a rubber hose is applied forcefully and frequently to the soles of the feet until the key to the cryptosystem is discovered, a process that can take a surprisingly short time and is quite computationally inexpensive…”

Elle trouve aujourd’hui de nouveaux dĂ©bouchĂ© avec l’essor du chiffrement de disque.

Aussi bien pour le chiffrement de volume que pour le chiffrement complet de disque, des volumes chiffrés peuvent être cachés dans d’autres volumes chiffrés un peu comme pour la stéganographie, on parlera alors de chiffrement stéganographique.

security

Dans le cas où des fichiers chiffrés seraient découverts, cacher des fichiers chiffrés dans d’autres fichiers chiffrés permet de ne révéler qu’une partie du secret à l’attaquant. Le propriétaire d’un volume chiffré peut donnée le mot de passe à un attaquant sans pour autant permettre à ce dernier d’accéder au fichier se trouvant dans le véritable volume caché protégé par un autre mot de passe.

Ce concept fait suite aux travaux sur la rubber-hose cryptanalyse (Dreyfus, 1997) qui ont montré qu’un moyen de coercition peut se montrer beaucoup plus efficace est moins cher qu’un parc de calculateur pour obtenir une clé de chiffrement.

A prĂ©sent je vais pousser le raisonnement dans le cas de son utilisation pour cachĂ© un système d’exploitation chiffrĂ© :

Alice est une diplomate qui possède un ordinateur portable sur lequel se trouvent des informations confidentielles. L’ordinateur d’Alice est en Full Disk Encryption et possède 2 systèmes d’exploitation dans 2 partitions chiffrés:

  • Le premier SYSTEM A est le système leurre, c’est celui dont se sert alice la majeure partie de son temps quand elle n’a pas besoin d’accĂ©der aux informations confidentielles.
  • Le second SYSTEM B est le système d’exploitation qui contient les donnĂ©es confidentielles, il est cachĂ© dans la seconde partition chiffrĂ©.

Son ordinateur possède 3 mots de passe :

  • Un mot de passe pour dĂ©marrer sur le SYSTEM A
  • Un mot de passe pour dĂ©marrer sur le SYSTEM B
  • Un mot de passe pour monter la partition chiffrĂ© oĂą est cachĂ© le SYSTEM B

En fonction du mot de passe que rentre Alice au démarrage son ordinateur démarre sur le SYSTEM A ou le SYSTEM B.

Alice est enlever ainsi que son ordinateur par un groupe voulant connaitre les informations que contiens son portable. Alice donne le mot de passe du SYSTEM A, puis Alice donne le mot de passe de la seconde partition chiffré où est caché le SYSTEM B. Son ordinateur apparait au groupe comme ayant uniquement un SYSTEM A chiffré et une partition chiffré. Le SYSTEM B où se trouvent les données confidentielles n’a pas été découvert. Le groupe laisse repartir Alice pensant avoir tout découvert.

Voici comment on pourrait le représenter (issu de la doc Truecrypt):

decoyOS

Et vous l’aurez devinĂ© c’est une fonctionnalitĂ©e disponible dans Truecrypt. Pour mettre en place un Hidden operating system cliquer ici.

DualBoot OS FDE : Windows chiffré + Linux chiffré

truecrypt-iconSuite au billet concernant la mise en place du dual-boot entre windows chiffrĂ© avec Truecrypt et Linux Ubuntu. Je m’attaque Ă  prĂ©sent au chiffrement non seulement des Windows mais aussi de linux ubuntu afin d’obtenir un dual boot windows/linux avec Full Disk Encryption.

Pour Windows je vais de nouveau utiliser Truecrypt, alors que pour Linux Ubuntu je vais utiliser dm-crypt. Ce n’est malheureusement pas exactement du Full Disk Encryption (FDE) parfait car je ne peux pas mĂ©langer la techno de FDE de windows avec celle de linux. Il va rester la partition de boot en claire. Si vous voulez faire du FDE avec linux sans dual-boot, je vous conseil la lecture de ce tuto ou celui-ci dont j’ai dĂ©rivĂ© les procĂ©dures pour obtenir le mien.

Je passe sur la partie explication de la gestion du multi-boot que j’avais dĂ©taillĂ© dans mon prĂ©cĂ©dent billet pour directement m’attaquer au chiffrement de Ubuntu. La principale diffĂ©rence repose dans le formatage et le partitionnement de Ubuntu que je vais installer cette fois ci avec le « Alternate CD » de ubuntu et non pas le CD d’installation classique. Le alternate CD va me permetre de pouvoir installer ubuntu avec des partitions chiffrĂ©es en utilisant les LVM et le tout puissant LUKS.

Continuer la lecture de DualBoot OS FDE : Windows chiffré + Linux chiffré

Truecrypt dual boot : Windows / Linux

truecrypt-iconDans ce tutoriel je vais m’intĂ©resser uniquement Ă  chiffrer Windows et pas Linux. Le chiffrement de Windows et Linux est disponible ici.

Je vais utiliser Windows XP, Windows Vista comme système de chez Microsoft et Ubuntu 9.04 comme linux pour ce dualboot.

Tout d’abord il faut comprendre comment un ordinateur dĂ©marre ?

Quand l’ordinateur est allumĂ©, le bios recherche un disque dur sur lequel dĂ©marrer pour transfĂ©rer la suite de la procĂ©dure de dĂ©marrage au secteur d’amorçage. Ce secteur ce situe dans la première zone adressage du disque dur appeler la MBR (Master Boot Record) qui fait 512 octet. Cette zone contient entre autre 2 donnĂ©es très importante :

  • La table des partitions.
  • La routine d’amorçage du système d’exploitation (par exemple : GRUB pour linux).

Continuer la lecture de Truecrypt dual boot : Windows / Linux

Détecter truecrypt : TCHunt vs FI TOOLS

truecrypt-icon

Un des points fort d’un logiciels de chiffrement de disque (outre sa capacitĂ© Ă  chiffrer) rĂ©side dans son aptitude Ă  masquer le fait qu’un fichier alĂ©atoire est un fichier chiffrĂ©.

En Janvier 2009, des petits gars fortiche en math ont montrĂ© avec leur première alpha de TCHunt que les fichiers chiffrer par Truecrypt pouvait ĂŞtre dĂ©tectĂ©. Toutefois en janvier, l’alpha TCHunt dĂ©celait encore trop de faux positif. L’idĂ©e fut reprise fin avril 2009 par Forensic Innovation et leurs outils de recherche de fichier FI Tools. Mais c’est avec l’apparition dĂ©but mai 2009 de la première version stable de TCHunt que la compĂ©tition commença rĂ©ellement. Est ce que ces logiciels annoncent la fin du dĂ©nie plausible ? Nous allons le voir.

Aussi mystérieux l’un que l’autre sur la façon dont ils fonctionnent j’ai voulus savoir quels était leurs performances réelles. Pour ce faire, j’ai créé 6 fichiers avec Truecrypt de tailles différentes, avec des hash différent, des algorithmes de chiffrement différent, des mots de passe différents, des noms différents, des extensions différentes, et enfin des emplacements sur le disque différent.

Continuer la lecture de Détecter truecrypt : TCHunt vs FI TOOLS

Windows 7 en FDE avec Truecrypt 6.x

truecrypt-icon

Update : Avec truecrypt 6.3, plus besoin de cette astuce.

Les dĂ©veloppeurs de truecrypt ont annoncĂ©s que truecrypt ne sera officiellement compatible avec windows 7 pas avant que ce dernier arrive dans le commerce. Ce qui celons les dernières rumeurs devrait arriver vers novembre-dĂ©cembre 2009. Mais en pratique Truecrypt est dĂ©jĂ  compatible avec Windows 7 RC1 (ce qui n’Ă©tait pas vrai avec Windows 7 beta). Et c’est vrai aussi bien en « Whole Disk Encryption » qu’en « Encryption System Partition ».

Simplement en « System Partition », seulement la partition système où windows 7 est installé est chiffrée, la partition de boot de 100mo que Windows 7 créer  lors de son installation pour stocker ses fichiers de boot, WinRE et bitlocker ne sera pas chiffré. Ce qui peut permettre à un attaquant de modifié les fichiers de boot de Windows 7 et donc insérer du code malicieux une fois que vous avez démarré sur windows 7.

Si vous ne voulez ou pouvez pas faire de « whole disk encryption » alors, il faut fusionner lors de l’installation de Windows la partition de boot avec la partition système ainsi :

  1. DĂ©marrer l’installation normalement
  2. Choisir le type d’installation PersonnalisĂ©e.
  3. Au moment de choisir le partitionnement, cliquez sur « Options des lecteurs » (avancées).
  4. Cliquez sur Nouveau et choisissez la taille maximum. Cliquez sur OK.
  5. Un Ă©cran va vous dire que Windows peut crĂ©er des partition, blablaba. Cliquez sur OK. Vous allez voir que 2 partions sont crĂ©er, une de 100 mo et une autre qui prend tout l’espace disponible.
  6. Supprimer la plus grosse mais ne toucher pas a celle de 100 Mo.
  7. SĂ©lectionnez la partition de 100 Mo puis cliquez sur « Étendre » et choisissez d’utiliser tout l’espace disponible. Cliquez sur OK au message d’avertissement.
  8. A prĂ©sent, il n’y a plus qu’une seule partition sur laquelle vous pouvez installer votre Windows.
  9. Finissez l’installation de Windows, puis chiffrer votre partition comme d’habitude.

Source de l’astuce ici.

Les tests ont été effectué avec :

  • VirtualBox 2.2.2,
  • Windows7 RC1 (7100) fr 64bits
  • Truecrypt 6.2

Update 18/08/09 : Après vĂ©rification l’astuce est aussi valable pour Windows 7 x86 et x64 RTM 🙂 C’est Ă  dire Windows 7 final.