Cryptanalyse du Chiffrement Damier Alexandre -M2 CCS.

Slides:



Advertisements
Présentations similaires
Probabilités et statistiques au lycée
Advertisements

GESTION DE PORTEFEUILLE chapitre n° 4 C. Bruneau
Thomas G. Dietterich Approximate Statistical Tests for Comparing
Recherche de motifs par méthodes exploratoires: Comparaisons de performances et statistiques sur le score.
RECONNAISSANCE DE FORMES
Les tests d’hypothèses (I)
Comparaison de deux moyennes observées
Inférence statistique
Les TESTS STATISTIQUES
Les TESTS STATISTIQUES
Le publipostage La fonction de fusion permet de créer des documents identiques dans les grandes lignes que l’on personnalise automatiquement à chaque destinataires.
Les Tests dhypothèses. 1)Définition Un test cest une méthode qui permet de prendre une décision à partir des résultats dun échantillon.
Échantillonnage-Estimation
Les tests d’hypothèses
I CRYPTOLOGIE traditionnelle Sommaire 1.Les fondements p. 9 2.Confusion & Diffusion p Cryptages composés p. 39.
La fonction Style Permet de créer des types de texte, par exemple
12 novembre 2012 Grégory Petit
Formation Microsoft® Office Access 2007
Programmes du cycle terminal
Améliorer les performances du chiffrage à flot SYND
Statistiques et Probabilités au lycée
INF L14 Initiation aux statistiques
Créer une animation simple Gif avec ImageReady.
CryptoGraphy
Algorithmique et Programmation
La création de sinistre, la sélection à des fins de consultation, modification ou impression sont accessibles grâce à la barre de menu à gauche de l'écran.
Méthodes de Biostatistique
Algorithmes Branch & Bound
Les Algorithmes Cryptographiques Symétriques
Sécurité WiFi EXPOSE DE RESEAU Rudy LEONARD Prâsad RAMASSAMY
Cryptographie Réalisé par TOUJENI Noura BEN SOUISSI Rania KARAOUD Imen
CONSTRUCTION MECANIQUE DECOUVERTE de SOLIDWORKS
STATISTIQUES – PROBABILITÉS
FICHIERS : Définition : Algorithme général:
Des épreuves pratiques aux TP Des exemples en probabilités
ÉCHANTILLONNAGE AU FIL DES PROGRAMMES Stage : nouveaux programmes de première Novembre 2011.
La régression multiple
Le chiffrement symétrique
Le protocole d’authentification
ANALYSE DE DONNEES TESTS D’ASSOCIATION
Programmation linéaire en nombres entiers
Marquez cette valeur sur le diagramme à points de la question 6. La moyenne réelle des nombres de lettres par mots dans la population de l'ensemble des.
Algorithmes Branch & Bound
Arbres binaires et tables de hachage
REPRESENTATION DE L’INFORMATION
Micro-intro aux stats.
TD4 : « Lois usuelles de statistiques »
STATISTIQUES – PROBABILITÉS
Pr BELKHIR Abdelkader USTHB
Arkhênum Patrimoine du Futur. Répartitions par types d’erreurs mineures.
VOUS PENSIEZ POUVOIR PROTÉGER VOS DONNÉES AVEC LE CHIFFREMENT D’OFFICE ? CRYPTANALYSE DE MICROSOFT OFFICE 2003.
Introduction classique Moderne Future … chiffrement par substitution
Environnement numérique de travail
Probabilités et Statistiques Année 2010/2011
Se perfectionner sur Excel
2008/ Plan du cours 1.Introduction –Contenu du cours 2.Logique mathématique –Calcul propositionnel –Calcul des prédicats –Logique floue et aide à.
Structures de données avancées : LH (Hachage linéaire) D. E ZEGOUR Institut National d ’Informatique.
Principales distributions théoriques
STATISTIQUE INFERENTIELLE LES TESTS STATISTIQUES
17/04/2017.
Chapitre 4 Variables aléatoires discrètes
Systèmes formels 1. Définition d'un SF Morphologie Théorie propre
Post-optimisation, analyse de sensibilité et paramétrage
OBJECTIFS : STOP à la recopie fastidieuse SÆCI « Recherche Structurée » permet de récupérer des informations de documents quelconques d’après leur positionnement.
CONSTRUCTION DE TABLEAUX CROISES SUR LE LOGICIEL MODALISA MET4 – Avril 2005.
Introduction à la cryptographie cours 2: Chiffrement par flot
ECHANTILLONAGE ET ESTIMATION
La sécurité du Wifi Le WEP Le WPA Le 802.1X.
UED SIM – Département OLCI Année Arts & Métiers ParisTech CER ANGERS Probabilités et statistiques Cours n° 2.
Transcription de la présentation:

Cryptanalyse du Chiffrement Damier Alexandre -M2 CCS

Sommaire 1.Introduction 2.Le chiffrement 3.Vulnérabilité 4.Détection 5.Décryptement 6.Trappes ?

Introduction Chiffrement allant de XOR (le plus faible) à RC4 avec une clé de 128 bits Le XOR est un opérateur logique qui correspond à un « OU exclusif » Même principe que le cryptage de Vigenère, puis on effectue un XOR, bit par bit. L'algorithme est complètement symétrique. Exemple

Introduction Chiffrement allant de XOR (le plus faible) à RC4 avec une clé de 128 bits Chiffrement présent jusqu’à Office % des particuliers et près de 80% des licences professionnelles En 2005, Hongjun Wu met en évidence une faiblesse dans l’utilisation de RC4 128 de la suite Office Les clés restent les mêmes pour toutes les versions modifiées !

Le chiffrement Via un mot de passe Outils -> Options -> Onglet Sécurité -> Options avancées XOR utilisé par défaut si on ne clique pas sur Paramètres avancés Ce que font la plupart des utilisateurs ! XOR est un algorithme simple et facile mais pitoyable en terme de sécurité (utilisation d’un dérivé du mot de passe) Le cas XOR …

Le chiffrement Plusieurs options proposées (comme la signature numérique) Différentes longueurs de clés Celui censé offrir la meilleure sécurité est RC4 avec clé de 128 bits C’est celui que nous allons cryptanalyser Algorithme RC4

Le chiffrement Chiffrement de type flot Le texte clair M est combiné à une séquence aléatoire Sig produite par l’expansion de la clé K pour produire le texte chiffré C C t = M t  Sig t Chiffrement symétrique M t = C t  Sig t Algorithme RC4

Le chiffrement Clé de chiffrement généré par le logiciel Obtenue à partir du mot de passe de l’utilisateur et d’un vecteur d’initialisation (IV généré aléatoirement par Word) K= F ( H ( IV || mot de passe ) F fonction de dérivation, K la clé de chiffrement, H la fonction de hachage (SHA1) et || l’opérateur de concaténation. Algorithme RC4

Le chiffrement L’utilisation d’un même mot de passe pour plusieurs documents n’affaiblit pas la clé… hachage avec IV censé être généré aléatoirement à chaque fois ! Algorithme RC4

Vulnérabilité Microsoft Word viole une règle fondamentale en cryptologie Utilisation du même IV pour différentes versions d’un document Obtention de messages parallèles Profondeur de parallélisme : nombre de messages parallèles relativement à une même suite chiffrante. Principe général

Vulnérabilité Création de deux fichiers « message1.doc » et « message2.doc » Word avec une modification Mot de passe « protection » Nous allons ici utiliser Hackman 9.0 qui est un éditeur hexadécimal, un désassembleur et un débuggeur tout en un Analyse technique

Vulnérabilité premiers octets identiques ! Donc même suite chiffrante, donc même IV ! Analyse technique

Vulnérabilité Comparaison des IV Après le marqueur Analyse technique

Vulnérabilité Word positionne toujours le début du texte à l’offset 0xA00 IV visible après le marqueur La taille des données (nombres de caractères) se détermine en lisant les valeurs x et y situées respectivement aux offsets 0x21D et 0x21C. T (en octets) = (x-8) * y Données toujours accessibles en clairs même avec l’option « chiffrer les propriétés du document » Structure d’un document Word

Détection C 1 = M 1  Sig 1 C 2 = M 2  Sig 2 ( C 1  C 2 ) = ( M 1  M 2 )  ( Sig 1  Sig 2 ) M 1  M 2 possède un profil statistique aisément identifiable La valeur Sig 1  Sig 2 aura un profil statistique aléatoire Des messages parallèles… Principe général

Détection Deux cas de figure pour déterminer si M 1 et M 2 sont parallèles (H 0 ) : Les textes ne sont pas parallèles et donc le texte chiffré exhibe un profil statistique totalement aléatoire (H 1 ) : Les textes sont parallèles et donc Sig 1 et Sig 2 du fait de la mauvaise gestion de la clé. ( C 1  C 2 ) = ( M 1  M 2 ) On bâtit alors un test d’hypothèses simples pour décider du parallélisme Des messages parallèles… Principe général

Détection Estimateur Z =  i=0..n ( C 1 i  C 2 i  1 ) n étant la taille commune entre C 1 et C 2 C k i représente le bit i du message k L’estimateur Z compte le nombre de bits valant 0 dans le texte ( C1  C2 ) Z suit une loi Binomiale de paramètre n et p, où p est la probabilité pour que les bits de ( C1  C2 ) valent 0. Des messages parallèles… Algorithme de détection

Détection Cette loi binomiale peut être approximée lorsque Z   par : Une loi normale de paramètres np et ( np ( 1-p )) 1/2 (Théorème central limite) Sous H 0 (messages non parallèles), Z suit la loi N( n/2,  n/2 ) Sous H 1 (messages parallèles), Z suit la loi N ( np, ( np ( 1-p )) 1/2 ) avec p > 1/2 Des messages parallèles… Algorithme de détection

Détection Le test est alors simple, on choisit un seuil S défini par les probabilités d’erreur que l’on se fixe et la décision s’établit comme suit : Si Z<S alors les textes ne sont pas parallèles Si Z>S les textes sont parallèles Les différentes expériences montrent des pics très importants de l’estimateur Z pour les textes parallèles. La détection est ainsi aisée par la simple présence d’un pic Des messages parallèles… Algorithme de détection

Détection Cela ne permet pas de distinguer plusieurs groupes différents de textes parallèles Mais le parallélisme est une relation d’équivalence, tout groupe de messages parallèles sera une classe d’ équivalence pour cette relation On compare alors deux à deux nos N textes chiffrés et extrayons les groupes de messages parallèles. Des messages parallèles… Algorithme de détection

Détection À venir… Des messages parallèles… Résultats

Décryptement Exemple connu Construction d’un corpus LettreFréqLettreFréqLettreFréq a8,40j0,31s8,08 b1,08k0,05t7,07 c3,03l6,01u5,74 d4,18m2,96v1,32 e17,26n7,13w0,04 f1,12o5,26x0,45 g1,27p3,01y0,30 h0,92q0,99z0,12 i7,34r6,55

Décryptement Plus généralement, les n-grammes Construction d’un corpus 3-gFréq3-gFréq3-gFréq ENT0,90EME0,47ESD0,35 LES0,80ELA0,44TDE0,35 EDE0,63RES0,43 DES0,61MEN0,42 QUE0,60ESE0,42 AIT0,54DEL0,40 LLE0,51ANT0,40 SDE0,51TIO0,38 ION0,48PAR0,36

Décryptement Pour répondre à nos besoin un tel corpus doit être : Suffisamment représentatif de la langue cible De taille raisonnable pour permettre un traitement rapide Nous définissons alors une variable aléatoire discrète X et nous appelons P i la probabilité que notre événement soit égal à l’élément x i de notre corpus En réalité, il faudra également prendre en compte certains éléments de ponctuations, espacement, … Construction d’un corpus

Décryptement C 1, C 2, …, C p les textes chiffrés que l’on se donne x 1, x 2, …, x N les n-grammes de notre corpus Pour chaque n-gramme Cg 1 du premier texte chiffré C 1  Hypothèse sur la valeur du n-gramme Mg 1 du texte clair Calcul du n-gramme chiffrant k  Mg 1  Cg 1 A partir de ce n-gramme chiffrant, calcul des Mg i  k  Cg i Principe du décryptement

Décryptement Réitération du procédé pour chaque élément du corpus Constitution pour chaque n-gramme des textes N p-uplets (Mg 1, …, Mg i,…, Mg p ) Ce sont autant de possibilités pour les textes en clair M 1, …, M p Association aux N p-uplets trouvés les N p-uplets de probabilités (P(Mg 1 ), …, P(Mg i ),…, P(Mg p )) Principe du décryptement

Décryptement Il nous faut alors maximiser le p-uplet de probabilités Choix d’un bon estimateur Z dépendant de la nature des textes Z est fonction positive strictement croissante du vecteur de probabilités Principe du décryptement

Décryptement Pour chaque n-gramme Cg 1 de C 1 faire : Z   Pour m 1  {x 0, x 1, …, x N } faire l’hypothèse Mg 1  m 1 Calculer k  m 1  Cg 1 Pour i  {2, …, p} Calculer m i  k  Cg i Calculer P(m i ) Fin pour Si Z[P(m 1 ), …, P(m i ),…, P(m p )] > Z Z  Z[P(m 1 ), …, P(m i ),…, P(m p )] Pour i  {1, …, p} Mg i  m i Fin pour Fin si Fin pour Algorithme général

Décryptement De nombreux choix possibles de la fonction du cumul des fréquences Utilisation de Z +   i=1..p f i a où f i est la fréquence des n-grammes trouvés Le choix de a dépend de la nature du texte Pour des textes riches en noms propres et termes techniques rare, le choix optimal est a  0.3 Optimisations et paramètres optimaux – Choix de Z

Décryptement Méthode d’extraction sans recouvrement Exemple d’extraction de 4-grammes Méthode d’extraction avec recouvrement Exemple d’extraction de 4-grammes Ainsi les n-grammes clairs trouvés se chevauchent (n-1 caractères communs entres deux n-grammes consécutifs) Optimisations et paramètres optimaux – n-grammes

Décryptement À venir… Résultats expérimentaux

Trappes ? Obtention des textes parallèles par les fichiers temporaires de Word Création de fichiers temporaires à chaque modification de document Utilisation de PC inspector file recovery

Trappes ? Vulnérabilité partagée entre l’OS et le l’application Deux failles indépendantes non critiques  faille critique Méthode classique pour l’implémentation de trappes Vulnérabilité présente version après version