Microsoft a intégré dans Windows Update la mise à jour d'un driver pour les très nombreux périphériques USB qui utilisent des puces FTDI FT232. Mais cette mise à jour imposée par le constructeur a pour effet de rendre inopérantes les puces contrefaites, également très répandues sur le marché noir.

Ce n'est certainement pas volontaire de la part de Microsoft, mais ça ouvre tout un nouveau champ d'exploration dans la lutte contre le piratage, non pas de logiciels, mais de matériels. Avec des effets potentiellement très négatifs pour les simples consommateurs qui n'y sont pour rien.

Le site Hack A Day rapporte en effet que le service Windows Update de la firme de Redmond a intégré le driver le plus récent fourni par le fabricant de puces électroniques FTDI, pour mettre automatiquement à jour les drivers des puces FT232. Ca ne vous dit probablement rien, mais il s'agit de puces extrêmement répandues dans les appareils électroniques avec port USB, présentes notamment dans les circuits Arduino, qui permettent de piloter l'interface USB. Or selon Hack A Day, ces puces font aussi partie des plus contrefaites au monde (en particulier, bien sûr, dans les copies et produits à bas prix chinois), sans que ceux qui achètent des circuits électroniques aient la moindre idée qu'ils intègrent des circuits contrefaits.

Une astuce peu protocolaire

Le protocole USB fait que chaque périphérique USB s'identifie auprès du système d'exploitation par une paire VID/PID. Le VID (Vendor ID) est un identifiant de 16 bits spécifique à chaque constructeur, qui doit utiliser le même pour tous ses produits. Et le PID (Product ID) est un identifiant du périphérique lui-même, choisi par le constructeur et déclaré par le produit. Ainsi, tous les produits avec le même VID/PID utiliseront le même driver.

Pour leurs contrefaçons, les constructeurs utilisent le VID attribué par USB.org à FTDI, et le PID attribué à la puce FT232. 

Mais pour lutter contre ces contrefaçons, le constructeur a mis à jour au mois d'août dernier le pilote, qui a pour effet de reprogrammer la mémoire interne du circuit qui contient le PID. Il a exploité une faille des puces FT232 contrefaites pour leur imposer d'utiliser désormais le PID 0, qui ne peut pas être reconnu par les systèmes d'exploitation Windows, Mac ou Linux. Une fois le PID modifié pour utiliser PID 0, le périphérique ne peut plus être reconnu par l'ordinateur, et il est bon pour la casse — Hack A Day prévient qu'il est toutefois possible de corriger le PID en utilisant un outil de configuration FT232 fourni par FTDI sur un système Windows XP ou Linux, où la mise à jour n'est pas imposée, mais la puce redevient inopérante dès que l'appareil est branché sur un système à jour.

Comme le note Ars Technica, le constructeur avait assorti son driver publié au moins d'août d'une modification de ses conditions d'utilisation, pour prévenir du risque. "L'utilisation du Logiciel en tant que pilote, ou l'installation du Logiciel sur un composant qui n'est pas un composant FTDI authentique, dont les composants contrefaits, PEUT ENDOMMAGER IRREMEDIABLEMENT CE COMPOSANT", disait le contrat en grosses lettres. Mais la licence ainsi modifiée était noyée dans les fichiers de mises à jour. Et en passant par Windows Update, elle n'était plus visible du tout, sauf à être extrêmement précautionneux et à confirmer chaque mise à jour une à une, en vérifiant les licences de chaque sur les sites des constructeurs respectifs.


Si vous avez aimé cet article, vous aimerez les suivants : ne les manquez pas en vous abonnant à Numerama sur Google News.