Archives de catégorie : Chiffrement

Les Westmere ou les futurs monstres de l’AES ?

intel_core_i5_1Contrairement à ce que je disais il y a quelques billet, le i5 et i7 actuel (Lynnfield – 45nm) ne possèdent pas d’instruction améliorant la cryptographie. Ce sera uniquement avec les processeurs se basant sur l’architecture Westmere (32nm) prévu pour fin 2009, début 2010 que 6 instruction AES seront intégrés au processeur.

Outre ces instructions lié a l’AES, Intel à ajouté une nouvelle instruction supportant le Carry-Less Multiplication (CLMUL) qui permet d’améliorer les performances des applications utilisant les algorithme de chiffrement par bloc. Nommé PCLMULQDQ ces instruction vont permettre d’optimiser le calcul de formule  lié à la théorie des cors finie de ce bon vieux Evariste Gallois très utilisé en cryptographie (cocorico).

Continuer la lecture de Les Westmere ou les futurs monstres de l’AES ?

AES et Lynnfield

core i5C’est aujourd’hui que le NDA sur les nouveaux Lynnfield i5 se terminait. J’étais impatient de voir l’amélioration des performance de chiffrement/déchiffrement du nouveaux bébé d’Intel.

Mais les principaux site français sont complètement passé à coté et ils n’ont pas ou presque tester les fonction de chiffrement/déchiffrement du i5. Seul pcinpact à fait un test sur l’AES et encore avec un soft qui n’utilise qu’un coeur… :(.

Toutefois, les US se sont donné la peine de faire des vrais test AES. Et pour l’instant le seul que j’ai trouvé qui utilise TC est un test de pcgameshardware disponible ici.

Continuer la lecture de AES et Lynnfield

Performance bruteforce MD5

2-hacker-3d-solutions-securite-5036L’été est souvent une période propice aux développements libre en tout genre. Je parlais la semaine dernière de la course qu’il existe entre les différent bruteforcer. Je vais essayer de répondre a la question : « Quel compléxité et quel taille pour mon mot de passe ». Je vais m’appuyer essentiellement sur le MD5 pour répondre à cette question.

Le plus gros du travail de bruteforce GPU se fait actuellement sur 2 algorithmes : SHA1 et MD5. Les autres étant moins utilisé font l’objet de moins de recherche mais il existe quand même des bruteforcer pour eux.

Continuer la lecture de Performance bruteforce MD5

Question sur le chiffrement de disque

Voici un petit résumé de quelques questions sur le chiffrement de disque.

Question : Qu’est ce que le chiffrement de disque ?

Réponse : Le chiffrement de disque est une méthode de protection de données pour les supports de stockage possédant un système de secteur adressable (par exemple, un disque dur, une clé USB, un SSD). Le chiffrement de disque permet de chiffrer soit l’ensemble du disque dur (FDE, Full Disk Encryption) soit seulement des partitions ou des volumes. Le chiffrement de disque rend les données protégées même si elles sont lues directement à partir du disque sans passer par l’OS car chaque bit du disque ou de la partition est chiffré.

Question : Dans quel but utiliser le chiffrement de disque ?

Réponse : Il existe 2 familles de chiffrement de disque : Le chiffrement de volume et le chiffrement complet de disque.

Le chiffrement de volume à pour but d’empêcher un attaquant :

  • L’accès à certaine donnée.

Le chiffrement complet de disque (FDE) a pour but d’empêcher un attaquant :

  • L’accès à toutes les données y compris le système d’exploitation.

Continuer la lecture de Question sur le chiffrement de disque

Où en sont les GPU brute forcer ?

cudaAprès avoir essayé d’extrapoler le temps nécessaire pour casser un mot de passe avec des supercalculateur dans ce billet, puis dans celui-ci avec PBKDF2. Je vais à présent m’intéresser dans cet article à essayer de définir le temps réel qu’il faut aujourd’hui pour une machine du commerce de milieu-haut de gamme pour casser des mots de passe MD5 à l’aide de la puissance de la carte graphique et donc le GPGPU.

Voila maintenant un peu plus d’un 1 an (mai 2008) que le premier brute forcer se servant de la puissance des GPU et de l’API CUDA de NVIDIA est apparut. Ce brut forcer possède le doux nom MD5-GPU et pour la petite histoire il a été écris par un Français : Benjamin Vernoux (cocorico). Avec une 8800GT, la version 0.1 de MD5-GPU générait une puissance de 60Mhash/s, la version 0.2 qui suivit dans le même mois atteignait déjà 200MHash/s.

Continuer la lecture de Où en sont les GPU brute forcer ?

PBKDF2 et génération des clés de chiffrement de disque

Dans mon billet sur les flops et le temps pour casser un password par brute force. Je prenais uniquement en compte la puissance en FLOPS sans prendre en compte le type de hash et les itérations. J’ai récemment parlé dans un billet du temps nécessaire à un supercalculateur pour casser un mot de passe issus d’une fonction de hash. En partant du postulat : 1 FLOPS = 1 hash. A présent je vais essayer de calculer le temps nécessaire à ce même supercalculateur pour casser une clé réalisé non pas seulement un hash mais avec une fonction de type PBKDF2.

Le PBKDF2 (Password-Based Key Derivation Function) est une fonction de dérivation de clé qui est implémenté dans la majorité des logiciel de chiffrement de disque. C’est aujourd’hui la meilleure référence en matière de sécurité pour la création de clé de chiffrement. Il est basé sur ces éléments :

  • Un algorithme de HMAC (SHA512, RIPEMD, WHIRLPOOL,etc)
  • Un mot de passe
  • De la Salt pour luter contre une attaque rainbow table
  • Des itérations pour ralentir la génération de clé

Ces itérations sont très importantes car elles permettent d’accroitre considérablement le temps nécessaire au test de toutes les combinaisons d’un mot de passe. Et c’est sur cela que ce billet va se concentrer.

Je vais reprendre l’excellent travail d’explication du fonctionnement de Truecrypt de Bjorn Edstrom et ses fonctions en python. Dans un premier temps je vais chercher à générer une clé PBKDF2-PKCS#5, puis dans un second temps je vais chercher à calculer le temps qu’il faut pour la générer la clés en fonctions des différents éléments la composant.

Continuer la lecture de PBKDF2 et génération des clés de chiffrement de disque

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

L’AES optimisé dans les Intel Westmere

Je viens de tomber sur une news concernant les premiers test réalisé sur la future génération de processeur Intel les i3 et i5. Du fait d’un moteur de chiffrement AES embarqué au processeur, les performance en chiffrement/déchiffrement sont considérablement amélioré. Le FDE se rapproche doucement mais surement 🙂

corei3aes

L’article ici.Je viens de tomber sur une news concernant les premiers test réalisé sur la future génération de processeur Intel Westmere les futur i3 et i5 en 32nm. Du fait d’un moteur de chiffrement AES embarqué au processeur, les performance en chiffrement/déchiffrement sont considérablement amélioré. Le FDE se rapproche doucement mais surement 🙂

corei3aes

L’article ici.

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

TCHunt sort en version 1.3

TCHunt 1.3 est la dernière version du bébé des petits malin de 16systems. Pour l’anecdote elle est sortie le 4 juillet, jours de la fête nationale aux USA. Si vous ne savez pas ce que c’est lisez ça.

Toujours pas de changelog, mais on peut noter que l’interface graphique continue de se simplifier avec l’ajout d’une fonction d’export et de sauvegarde des résultant en HTML respectant l’ISO 8601.Quelques screenshot de la version US marqué 1.2, mais c’est bien la 1.3.

Continuer la lecture de TCHunt sort en version 1.3