Windows | Windows Server | Active directory | Exchange | SharePoint | SCCM | SCOM | Hyper-V | App-V
ACCUEIL Facebook Twitter Linked In Viadeo Flux RSS
Actualités suivantes

Actualités précédentes
Nouvel outil de diagnostic sur Office 365
Nombreux départ à Microsoft
Cortana aura du retard sur Android
Que vaut vraiment la Microsoft Surface 3?
Microsoft tente de réduire l'écart avec Sony


Publié le : 12/10/2010 08:27:17
Mise à jour le : 08/10/2010 11:32:36
Catégories :


Version imprimable

Auteur(s)

Comment Stuxnet a usurpé une signature Microsoft…


Pour se cacher, le ver a utilisé son propre pilote de périphérique. Une technique classique, mais cette fois, signée par Microsoft !

Cyril Voisin, chef du programme sécurité chez l'éditeur, nous aide à voir y plus clair dans cette étrange usurpation.

Quel est le système de signature utilisé par Microsoft ?  Nous utilisons la cryptographie asymétrique. C'est-à-dire que nous disposons d’une paire de clés, l’une publique et l’autre privée. En tant que constructeur, nous sommes le seul à connaître cette dernière. La première, au contraire, doit, par définition, pouvoir être connue de tous. Pour cela, le constructeur demande un certificat numérique auprès d’une autorité de certification, qui publie ce document liant la clé publique à l’identité du constructeur. Le principe de cette cryptographie asymétrique est que ce que l’on chiffre avec une des clés de la paire doit être déchiffré avec l’autre clé. Sachant qu’il est impossible (c'est-à-dire irréalisable de manière pratique) de découvrir la clé privée à partir de la seule connaissance de la clé publique.

Comment les constructeurs font-il signer leurs pilotes ?  Pour réaliser une signature, le constructeur fait une empreinte du pilote (un hash, c’est-à-dire un résumé qui change massivement à la moindre modification d’un seul bit dans le driver) qu’il chiffre avec sa clé privée (qu’il est le seul à connaître). Pour vérifier qu'un driver vient bien de chez le constructeur, il faut d'un part en calculer le hash et parallèlement, déchiffrer la signature avec la clé publique. Si les deux résultats (hash du driver et déchiffrement de la signature) sont égaux, c'est que le driver n’a pas été modifié (ce qui aurait changé le hash) et qu'il vient bien du constructeur (car pour tomber sur le bon hash en déchiffrant la signature à l’aide de la clé publique, il faut que celui-ci ait à l’origine été chiffré par la clé privée correspondant à la clé publique).

Comment produire une vraie fausse signature ?   En volant la clé privée, ou en trompant le constructeur pour s’immiscer dans son processus de signature (et lui faire signer n’importe quoi), ou encore en découvrant la clé privée si sa longueur est trop faible, par exemple… (Source : 01 net)