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.