Empreinte digitale d'appareil
Une empreinte digitale d'appareil (aussi appelée empreinte digitale d'ordinateur ou empreinte digitale de navigateur ; en anglais, device fingerprint, machine fingerprint ou browser fingerprint) est une information collectée sur un dispositif informatique distant à des fins d'identification.
Ces empreintes digitales peuvent être utilisées pour identifier totalement ou partiellement un internaute ou un appareil même lorsque les témoins (cookies) sont désactivés.
Des informations de base sur la configuration des navigateurs web sont recueillies depuis longtemps par les services d'audience d'un site web dans le but de mesurer avec précision le trafic humain sur le web et détecter les différentes formes de fraude au clic. Avec l'aide de langages de script côté client (client side scripting), une collecte d'informations beaucoup plus précises est maintenant possible[1] - [2]. La conversion de ces informations dans une chaîne de bits produit une empreinte digitale d'appareil. En 2010, l'Electronic Frontier Foundation (EFF) a mesuré que l'entropie de l'empreinte d'un navigateur était d'au moins 18,1 bits[3], et c'était avant que les progrès du canvas fingerprinting ajoute un autre 5,7 bits à cette entropie.
Comparaison avec les empreintes digitales humaines
L'utilisation des mots empreinte digitale pour désigner les informations qui caractérisent un appareil est un peu trompeuse. Dans leur sens premier, les mots empreinte digitale désignent les empreintes digitales humaines. Or, ces empreintes sont uniques et stables dans le temps. C'est-à-dire que deux personnes ne peuvent pas avoir les mêmes empreintes (diversité) et ces empreintes ne changent pas dans le temps (stabilité). Les empreintes digitales d'appareil n'ont pas ces caractéristiques :
- diversité : une diversité parfaite exigerait que deux appareils n'aient pas la même empreinte ; en pratique, un grand nombre d'appareils ont exactement les mêmes données de configuration, et donc la même empreinte. Cela est particulièrement vrai dans le cas des systèmes d'exploitation installés en usine ; une façon d'augmenter la diversité est d'utiliser un langage de script pour récolter un plus grand nombre de paramètres de l'appareil ; par contre, cela réduit la stabilité, car il y a alors un plus grand nombre de paramètres qui peuvent changer au fil du temps ;
- stabilité : une stabilité parfaite nécessiterait que les empreintes digitales restent les mêmes au fil du temps ; cependant, par définition, les préférences de configuration d'un appareil ne sont pas inviolables ; par exemple, si un paramètre mesuré est l'activation ou la désactivation des témoins (cookies), un simple changement de ce paramètre est suffisant pour changer l'empreinte digitale de l'appareil ; une façon d'augmenter la stabilité est de réduire le nombre de paramètres à ceux qui sont très peu susceptibles de changer ; cependant, cela réduira la diversité.
En pratique, la diversité et la stabilité parfaites ne sont pas atteignables, et l'amélioration de l'un a tendance à avoir une incidence défavorable sur l'autre.
Collecte passive ou active
La collecte de l'empreinte de l'appareil peut se faire de façon passive ou active.
La collecte passive se fait sans interrogation évidente de l'appareil client. Une telle collecte repose sur la lecture de données fournies par l'appareil dans ses communications telles que la configuration TCP/IP de l'appareil, les paramètres du système d'exploitation, les paramètres de la connexion sans fil[4], et le décalage de l'horloge[5].
La collecte active suppose que l'utilisateur accepte des requêtes invasives. La méthode la plus efficace de collecte active est l'installation d'un programme exécutable directement sur l'appareil. Un tel programme peut avoir accès à des attributs qui ne sont généralement pas disponibles par d'autres moyens, tels que l'adresse MAC, ou d'autres numéros de série uniques attribués à l'appareil. Ces données sont utiles pour identifier des appareils dans des activités de gestion des droits numériques. Un inconvénient d'un programme installé sur l'appareil est qu'il est facile de le falsifier.
Empreintes des couches du modèle OSI
La collecte passive d'attributs de l'appareil peut se faire sur plusieurs couches du modèle OSI. Les différents protocoles de réseau transmettent des paquets ou des en-têtes desquels on peut extraire les paramètres de configuration d'un ordinateur. Triés par couche, voici quelques exemples de ces protocoles :
Facteurs limitatifs
La collecte active dans les navigateurs repose sur la disponibilité de JavaScript ou d'un langage de script semblable sur l'ordinateur de l'utilisateur. Deux catégories d'appareils ont des capacités limitées à cet égard : les appareils mobiles et les appareils munis d'un logiciel de protection de la vie privée.
Un appareil peut être muni de plusieurs navigateurs, ou même de plusieurs systèmes d'exploitation. Comme ces navigateurs et ces systèmes d'exploitation ont des paramètres différents, un utilisateur peut changer d'empreinte en changeant de navigateur ou de système d'exploitation.
Firefox pour ordinateurs (version 67 ou supérieure) est doté de contre-mesures à la prise d'empreinte, à activer dans les options du logiciel[9].
Utilisations
Les empreintes digitales d'appareil sont de plus en plus utilisées par les sites web pour identifier les internautes.
Certains fournisseurs de services (par exemple, des institutions financières ou des fournisseurs de services de courrier électronique) mémorisent les empreintes des ordinateurs fréquemment utilisés par leurs clients. Par la suite, lorsque quelqu'un tente de se connecter au service à partir d'un autre ordinateur, les fournisseurs demandent des preuves supplémentaires d'identité à la personne essayant de se connecter pour s'assurer qu'il ne s'agit pas d'un fraudeur. De même, lorsque vous cochez une mention semblable à Je réutiliserai fréquemment cet ordinateur pour me connecter à ce service, vous demandez à votre fournisseur de mémoriser l'empreinte de votre ordinateur et de se méfier de communications qui proviendraient d'un autre ordinateur. Lorsque vous vous connecterez à partir d'un autre ordinateur, ne soyez pas surpris que votre fournisseur vous demande des preuves supplémentaires d'identité.
Des régies publicitaires utilisent aussi des empreintes d'appareil pour reconnaitre un internaute sur plusieurs sites, amasser de l'information sur ses intérêts et lui proposer de la publicité ciblée. Certaines personnes considèrent qu'il s'agit là d'une violation de la vie privée parce que des informations sont accumulées sur les internautes à leur insu. D'autres personnes ne s'inquiètent pas de cette pratique et considèrent même que la pratique est désirable étant donné qu'elle leur permet d'obtenir de la publicité ciblée sur leurs intérêts.
Des webmestres utilisent les empreintes d'appareil pour reconnaître des internautes qui visitent fréquemment leurs sites même si ces internautes ont effacé leurs témoins (cookies) pour passer inaperçus.
Références
- (en) Cet article est partiellement ou en totalité issu de l’article de Wikipédia en anglais intitulé « Device fingerprint » (voir la liste des auteurs).
- « BrowserSpy », gemal.dk (consulté le )
- « IE "default behaviors [sic]" browser information disclosure tests: clientCaps », Mypage.direct.ca (consulté le )
- Peter Eckersley, « How Unique Is Your Web Browser? », sur eff.org, Electronic Frontier Foundation, (consulté le )
- « Wireless Device Driver Fingerprinting » [PDF] (consulté le )
- « Remote Physical Device Detection », Cs.washington.edu (consulté le )
- « Chatter on the Wire: A look at DHCP traffic » [PDF] (consulté le )
- TCP/IP stack fingerprinting
- « Chatter on the Wire: A look at excessive network traffic and what it can mean to network security. » [PDF] (consulté le )
- « Firefox annonce une nouvelle version encore plus rapide », sur blog.mozilla.org, (consulté le )