• Aucun résultat trouvé

2 .3 La stéganalyse, détection de stéganographie : difficultés et solutions

Dans le domaine plus connu de la cryptographie, la cryptanalyse a pour but de décrypter un message, ayant été préalablement crypté, sans connaissance de la clé. En ce qui concerne la stéganalyse, le Saint-Graal de la stéganalyse serait, de manière analogue, de tenter d’extraire l’information dissimulée sans connaissance de la clé du stégosystème. Seulement, un rapide calcul de dénombrement permet de comprendre

la difficulté : supposons que nous sommes en possession d’une image de 128×128

pixels parmi lesquels 32 sont porteurs d’informations cachées. Pour extraire le mes-sage de ces 32 pixels, il faut avant toute chose retrouver les bons pixels dans le bon ordre. Or cette configuration offre(1282) !/(1282−31) !≈7.051509 10134combinaisons pos-sibles... L’attaque par force brute pour extraire l’information cachée semble donc vaine. En outre, si l’on suppose que les 32 pixels porteurs d’informations cachées sont

iden-tifiés, il est immédiat de noter que 32!≈2.6313 1035 combinaisons de ces LSB dans un

ordre différent sont possibles. Enfin, le message peut avoir été préalablement crypté avant son insertion, il faut alors faire appel à des méthodes de cryptanalyse pour fina-lement retrouver le sens du message caché.

Ainsi, les objectifs de la stéganalyse sont beaucoup plus modestes que l’extraction du message secret. Il existe deux classes de stéganalyse se différenciant par les objectifs recherchés et les moyens utilisés. Dans le cadre de la stéganalyse active, l’objectif est d’empêcher la communication du message secret en modifiant le support (l’image) suffisamment peu pour en conserver le contenu perceptible mais de façon suffisam-ment importante pour en supprimer le contenu dissimulé. Par exemple, dans le cas de méthodes de stéganographie dans les LSB (par substitution ou par correspondance) écraser tous les bits de poids faible, en les mettant par exemple à 0 ou à 1, efface l’éventuel message dissimulé.

Les travaux présentés s’intéressent uniquement à la stéganalyse passive qui, comme

Comme le montre la figure 2.7, l’apparente indiscernabilité entre images avant et après stéganogra-phie n’est pas révélatrice de la possibilité statistique de détecter la présence du message.

son nom le laisse entendre, ne s’autorise pas la modification du média lors de l’ana-lyse. Le but premier est alors de détecter la présence d’informations cachées ou mieux, d’estimer la taille du message dissimulé : la terminologie de “stéganalyse quantita-tive“ [55,56,57] est alors usuellement utilisée. Détecter la présence d’un message caché dans une image peut-être formalisé de manière générique comme un test d’hypothèses dont le but est de décider entre les deux hypothèses suivantes :

Des explications approfondies sur les tests statistiques d’hypothèses

sont données dans l’annexeA. (

H0: Z=C le média Z est sain

H1: Z=S le média Z est stéganographié. (2.8)

Notons enfin qu’il a été récemment proposé des méthodes de stéganalyse dont le but est d’estimer la clé utilisée pour insérer le message. Ces quelques méthodes ont été

appliquées pour la stéganographie des images dans le domaine spatial [58,59,19] et

dans un domaine transformé [60]. Ces méthodes reposent sur l’hypothèse forte que

plusieurs médias -de même taille- stéganographiés avec la même clé sont disponibles

lors de la stéganographie. La même supposition a été utilisée dans [61] pour montrer

qu’il est -au moins théoriquement- possible de localiser les pixels ayant été modifiés par l’insertion d’un message. Dans ce dernier cas, le principe est simplement de ne pas analyser chacune des images mais chacun des pixels de même localisation dans les images (de taille identique). Bien que ces méthodes soient intéressantes elles ne seront pas étudiées dans ce manuscrit. En effet, il semble d’une part peu probable que de nombreux médias stéganographiés avec la même clé et de taille identique soient disponibles. D’autre part, la détection statistique d’informations cachées est un travail suffisamment difficile pour que ce manuscrit y soit entièrement consacré.

Image originale Image stéganograhiée par Image stéganograhiée par substitution de LSB correspondance de LSB

Plan de bit i=3 Plan de bit i=3 Plan de bit i=3

Plan de bit i=2 Plan de bit i=2 Plan de bit i=2

Plan de bit i=1 Plan de bit i=1 Plan de bit i=1 (a) Image originale et stéganographiée avec un taux d’insertion R=0.7

Figure 2.7: Décomposition des plans de bits d’une image en niveaux de gris avant et après stéganographie : les changements opérés par l’insertion d’un message ne sont ob-servables que dans le(s) plan(s) des bits de poids faible. L’image utilisée dans cet exemple étant générée par ordinateur, les bits de poids faibles sont structurés mais cela n’est pas valable pour une image naturelle, comme l’illustre la figure2.3.

Dans la suite de ce manuscrit, le terme de stéganalyse sera utilisé pour désigner uniquement les méthodes statistiques permettant la détection d’informations cachées ; celle-ci peut en effet se faire différemment, notamment par :

– l’analyse sensorielle du média, méthode qui demeure anecdotique ; – la comparaison avec le fichier original, lorsque ce dernier est disponible ;

– l’analyse de signature dont le but est de détecter les médias stéganographiés par des informations annexes en général liées à l’implémentation informatique. L’image1.1, issue de [1], a par exemple été détectée par le fait que F5 introduit par défaut un commentaire dans les méta-données JPG ;

Dans cette section 2.3 les méthodes de détection existantes sont synthétiquement

présentées. N’ayant pas volonté à l’exhaustivité, cette section pourra être complétée par les ouvrages [18,19,22].

2.3.1 Stéganalyses universelles ou aveugles

Lors du renouveau de la stéganographie et de la stéganalyse (à la fin des années 90),

différentes attaques de stégosystèmes ont été répertoriées dans [53] selon les

informa-tions disponibles lors de l’analyse (connaissance du message, de l’image de couverture, de la clé, etc. . . ). Les deux méthodes de stéganalyse, qui sont effectivement étudiées, se distinguent par la connaissance ou non du stégosystème. Dans cette section, nous nous intéresserons aux méthodes de stéganalyse universelles ou aveugles pour lesquelles le stégosystème n’est pas connu. Le problème de décision est alors proche de celui

dé-fini de façon générique par l’équation (2.8). Comme nous le verrons plus en détails

dans la section2.4, le problème de la stéganalyse universelle tel qu’il est explicité par la relation (2.8) ne peut être résolu formellement en utilisant les résultats classiques issus de la théorie de la décision statistique. Malgré cela, les méthodes de stéganalyse universelle sont sans conteste les plus populaires actuellement.

Ne pouvant exploiter la théorie de la décision statistique, les techniques de stégana-lyse universelle s’appuient largement sur les méthodes d’apprentissage supervisé. Ces méthodes reposent sur l’extraction de caractéristiques et fonctionnent en deux temps ; lors de la phase d’apprentissage, une large base de données est utilisée pour extraire les caractéristiques de chacun des médias associés à une classe préalablement connue (stéganographié ou non). Un classifieur est ensuite utilisé pour discriminer le plus précisément possible les deux classes d’objets à partir des caractéristiques extraites. À la suite de cette première phase d’apprentissage, le détecteur est opérationnel. Dans la seconde phase de test, des médias sont fournis au détecteur qui doit décider de la classe à laquelle chacun d’eux appartient. En général, l’utilisateur connaît la classe des images qui ont été fournies au détecteur et peut ensuite juger des performances de ce dernier en comparant les résultats de la classification avec les résultats corrects. Après cette seconde phase de test le détecteur peut être amélioré ou mis en situation opérationnelle de détection.

L’amélioration ou “réglage” des détecteurs universels peut se faire en redéfinissant les caractéristiques utilisées ou en modifiant les paramètres de la méthode de classification. Mesurer les performances des mé-thodes de classification par ap-prentissage supervisé ne peut se faire que par benchmarking, i. e. à travers des résultats empiriques sur de larges bases de données

L’intérêt pratique et les bonnes performances obtenues empiriquement par les dé-tecteurs universels, par apprentissage, restent sujet à caution compte-tenu des limites théoriques de la méthodologie.

Tout d’abord, dans toutes les applications des méthodes d’apprentissage (supervisé ou non-supervisé), le choix des caractéristiques pertinentes pour la classification est crucial. Pour la stéganalyse, ce choix est davantage guidé par l’intuition ou l’observa-tion de changements induits par la stéganographie que par les propriétés intrinsèques des images naturelles. Ne pouvant donc pas disposer d’une modélisation statistique précise de ces caractéristiques, il n’est pas possible de fixer a priori les probabilités d’erreurs de classification. La seule possibilité de connaître les performances des mé-thodes de stéganalyse universelle et de maîtriser les erreurs de classification est l’ex-périmentation numérique sur une large base de données (que l’on souhaite la plus représentative possible de l’ensemble des données potentiellement analysables). Il a

d’ailleurs été montré expérimentalement dans [62] que les résultats obtenus par les

principaux algorithmes de stéganalyse universelle dépendent fortement de la base de données utilisée.

En outre, la méthode d’apprentissage et de classification doit, elle aussi, être choi-sie empiriquement ; en effet, il n’existe pas de résultat théorique permettant de prédire quelle méthode offrira les meilleures performances pour un problème donné (en terme de minimisation d’erreurs de classification par exemple). Trois méthodes de classifica-tion sont usuellement utilisées dans le domaine de la stéganalyse dont les fondements

théoriques sont brièvement expliqués dans la section A.5de l’annexe A.

Historique-ment, le premier algorithme de stéganalyse universelle proposé par H.Farid [49] est

basé sur l’analyse discriminante linéaire de Fisher, ou FLD de l’anglais Fisher Linear

d’ou-vrir la voie de la stéganalyse universelle, l’utilisation de la FLD dans le domaine

de la stéganalyse demeure cependant très minoritaire [64, 65]. Les méthodes à base

de réseaux de neurones, ou NN de l’anglais “Neural Network”, ont été utilisées plus

largement [50, 66,67]. Dans le domaine de la stéganalyse universelle, les méthodes

de classification très majoritairement utilisées sont incontestablement les Séparateurs à Vastes Marges, ou SVM de l’anglais Support Vector Machine, issus des travaux de

V.Vapnik [68,69]. Devant les bonnes performances des techniques de stéganalyse

uni-verselle basées sur les SVM [70, 71, 72, 73, 74, 75, 31], il a également été proposé d’utiliser ces méthodes d’apprentissage pour faire de la régression. Suivant la métho-dologie initialement proposée dans [76], le but recherché est de faire de la stéganalyse quantitative [55,57] i. e. d’estimer la taille du message dissimulé.

Selon les caractéristiques utilisées pour l’apprentissage et la classification, les mé-thodes de stéganalyses universelle sus-décrites ont été utilisées indifféremment pour détecter la présence d’informations dissimulées dans le domaine spatial ou dans un domaine transformé.

Un second type de stéganalyse universelle a été étudié dans une moindre mesure.

En reprenant la définition 2.1 d’un stégosystème, il est supposé que l’image

stéga-nographiée S = (s1, . . . , sN)T peut-être définie comme une combinaison linéaire de l’image saine C = (c1, . . . , cN)T et d’un “bruit” W(M) = w(m1), . . . , w(ml), 0, . . .T

représentant l’impact d’insertion du message M. Pour chaque pixel (ou plus largement

pour chaque échantillon) indexé par k, avec par convention p(`) =k, on a la relation :

sk=ck+∆w(m`), (2.9)

où le paramètre de pondération ∆ représente la “puissance d’insertion”, comme

pré-cédemment décrit pour l’insertion par étalement de spectre dans l’équation (2.7). La

stéganalyse consiste alors à séparer, à partir de S, les composantes C et M. Supposons que i images stéganographiées (S(1), . . . , S(i))T créées à partir de la même image de couverture C et du même message M sont disponibles lors de l’analyse. En regroupant le k-ième pixel de chaque image sk= (s(1)k , . . . , s(i)k )T, l’équation (2.9) peut être ré-écrite algébriquement par : sk=ARkA=     1 ∆(1) .. . ... 1 ∆(i)     et Rk= ck w(m`) ! . (2.10)

Le problème décrit par (2.10) est alors celui de la séparation de sources en aveugle, le but étant alors d’extraire le message, qui peut être résolu avec les méthodes classiques

du domaine [77]. Parmi ces méthodes, l’analyse en composantes indépendantes (ou

ICA, Independent Composant Analysis en anglais) a été utilisée, dans [78] notamment,

pour la stéganalyse universelle. Notons néanmoins qu’en pratique, ces stéganalyses demeurent plutôt adaptées à la détection d’informations cachées par étalement de

spectre [37, 38], elle-même davantage utilisée pour l’insertion de tatouages

numéri-ques.

Par ailleurs l’approche de stéganalyse par séparation aveugle de sources possède plu-sieurs limites théoriques. D’une part le problème ne peut être résolu que si les distri-butions statistiques des stégo-objets sont stationnaires (ce qui en pratique est difficile-ment vérifiable pour des images). D’autre part l’insertion d’informations doit pouvoir être représentée par une matrice de mélange (matrice notée A dans le présent cas) ce qui implique une relation linéaire. Si l’insertion d’informations n’est plus linéaire (ce qui est le cas par exemple pour les méthodes par substitution ou correspondance de LSB), la séparation aveugle de sources, et donc l’extraction du message, devient beaucoup plus complexe. Enfin, bien qu’intéressant d’un point de vue théorique, ce

problème ne trouve que peu d’applications pratiques car il semble assez peu réaliste de supposer que i stégo-médias générés à partir de la même image de couverture et du même message sont disponibles.

Les méthodes de stéganalyse universelle sortent légèrement du cadre d’étude de ce manuscrit, aussi le lecteur intéressé pourra compléter cette présentation succincte par la lecture de [79].

2.3.2 Stéganalyses adaptées à un stégosystème

Dans cette section, nous nous intéresserons davantage aux méthodes de stéganalyse spécifiquement dédiées à un schéma d’insertion ; dans la terminologie usuelle ces mé-thodes sont dites spécifiques (la dénomination initiale de “Chosen stego attack” issue

de [53] n’est plus guère utilisée). Le problème de détection sous-jacent à la

stégana-lyse adaptée à un stégosystème est différent de celui défini dans (2.8) ; il s’agit ici de décider entre les deux hypothèses suivantes :

(

H0: Z=C le média Z est sain

H1: Z=E(M, C, K) le média Z est stéganographié avec la méthode E. (2.11)

Une grande partie des méthodes de stéganalyse adaptées ont pour but de détecter la présence d’informations insérées par substitution de LSB. En effet, bien que des

méthodes d’insertions plus évoluées existent (voir section 2.2.1), la substitution de

LSB demeure certainement la méthode d’insertion la plus populaire.

2.3.3 Stéganalyses adaptées à la stéganographie par substitution de

LSB

Les méthodes de stéganalyse adaptées à la substitution de LSB exploitent toutes, de différentes façons, la particularité des modifications engendrées par ce type

d’inser-tion d’informad’inser-tions. Comme expliqué dans la secd’inser-tion2.2.1, un pixel dont la valeur est

paire ne peut être qu’incrémenté alors qu’à l’inverse un pixel dont la valeur est im-paire ne peut être que décrémenté. Cet impact “asymétrique” engendré par l’insertion d’informations par substitutions de LSB a été exploité à de nombreuse reprises dans la littérature, de façons différentes, pour permettre de détecter la présence d’informa-tions cachées dans un média analysé Z.

La classification des méthodes de stéganalyse adaptées à la substi-tution de LSB est due à A. Ker,