Aller au contenu

Attaque par sondage

Un article de Wikipédia, l'encyclopédie libre.

En cryptanalyse, une attaque par sondage est ce que l'on qualifie d'attaque invasive, c'est-à-dire que la mise en œuvre de celle-ci peut détériorer, voire détruire le circuit (cryptoprocesseur) à analyser.

Le principe d'une attaque par sondage (appelée probing attack) est d'espionner l'activité électrique d'un composant électronique du circuit en positionnant une sonde suffisamment proche dudit composant. Dans la littérature scientifique, mesurer l'évolution de l'état d'une équipotentielle d'un bus (un « fil ») est un exemple typique d'attaque par sondage.

En récoltant des données de cette manière, l'attaquant peut être en mesure de déduire tout ou une partie du secret du circuit cryptographique.

Mise en pratique

[modifier | modifier le code]

Dans cette section, nous faisons l'hypothèse que l'attaquant veut espionner un bus de données (avec des données chiffrées qui y circulent), afin d'établir un ensemble de textes chiffrés, facilitant ainsi la cryptanalyse.

Peu de laboratoires peuvent se permettre de mettre en place ce type d'attaque, car elle exige du matériel très perfectionné et coûteux.

Tout d'abord il faut préparer le circuit à analyser. Il faut souvent le tremper dans l'acétone, puis « gratter » sa surface (généralement couverte d'un enduit chimique) pour mettre à nu les couches supérieures de métal (métal 6 ou 7 pour les smartcards). Dans les recommandations des procédés de fabrication submicroniques des constructeurs, il est dit de mettre les bus le plus « haut » possible parmi les couches matérielles. Cela permet à l'attaquant de ne pas avoir à pénétrer trop profondément dans le circuit, et rend ainsi possible le sondage. En effet, si les bus étaient placés au niveau du métal 3 par exemple, il faudrait traverser 4 couches de métal pour espionner, avec une très forte probabilité de détruire le cryptoprocesseur avant même de commencer véritablement la manipulation.

Une fois les préparatifs terminés, le sondage peut commencer. Pour cela il faut approcher très près de l'équipotentielle à espionner une pointe métallique (typiquement en tungstène) qui réagit au passage d'un bit sur celle-ci (en fait un changement ou non d'état). Avec un oscilloscope suffisamment précis et un chronométrage très rigoureux, on peut ainsi déterminer les bits transitants par le bus. À noter tout de même qu'il n'est pas (à l'heure actuelle) envisageable d'espionner plusieurs équipotentielles simultanément : cette technique est trop complexe à mettre en place.

Pour l'instant ce type d'attaque a un intérêt essentiellement théorique, car supposer que l'attaquant dispose d'un tel contrôle de l'environnement est une hypothèse extrêmement forte (possibilité de manipuler le matériel comme il l'entend, accès à du matériel de mesure très coûteux, etc.).