Un debug-mode secret découvert dans tous les processeurs AMD
Des 10 dernières années par un hacker

Le , par Katleen Erna, Expert éminent sénior
Un debug-mode secret découvert dans tous les processeurs AMD des 10 dernières années par un hacker

Un hacker spécialisé dans le hardware vient de faire une découverte surprenante. Il a mis le doigt sur rien de moins qu'un debugging mode caché dans tous les processeurs AMD des dix dernières années, depuis le Athlon XP.

La fonctionnalité, protégée par un mot de passe, a surpris un grand nombre d'ingénieurs informatiques, qui ignoraient son existence et pour qui un tel mécanisme aurait pu s'avérer fort utile.

Et pourtant, le constructeur a gardé bien jalousement son secret.

Jusqu'à ce que le pirate Czernobyl vienne fourrer son nez dans ses circuits.

En examinant attentivement le CBID (Central Brain Identifier) d'une puce, il a trouvé des indices lui indiquant la présence éventuelle de modes cachés. Il a ensuite pu lancer les modes grâce à une attaque de force brute pour en casser la clé.

Et ces fonctions de debugging dépasseraient "largement le standard défini des capacités de l'architecture x86".

Pour passer un processeur en mode développeur, il faut entrer le mot de passe 9C5A203A dans le registre EDI du CPU. Ensuite, le debug mode est accessible.

Il semblerait qu'il ai été utilisé pendant le processus de programmation, puis désactivé avant que les puces soient expédiées pour être commercialisées.

Source : Les révélations de Czernobyl

A votre avis, à quoi pourrait servir ce mode caché ? Quelles utilisations en seront faites des possesseurs de machines, mais aussi par les hackers ?


Vous avez aimé cette actualité ? Alors partagez-la avec vos amis en cliquant sur les boutons ci-dessous :


 Poster une réponse

Avatar de jimb2k jimb2k - Membre habitué https://www.developpez.com
le 16/11/2010 à 16:36
Beh il est trop fort ce type là.

Je crois qu'il a passé beaucoup de temps afin de faire une telle découverte
Avatar de ogaby ogaby - Membre actif https://www.developpez.com
le 16/11/2010 à 16:55
Ce mode caché aurait pu (peut-être) aider les ingénieurs de microsoft et de linux pour vérifier l'intégration des processeurs dans les noyaux. Mais bon maintenant c'est un peu tard. Tant pis.
Avatar de Julien Bodin Julien Bodin - Membre éclairé https://www.developpez.com
le 16/11/2010 à 17:33
Pour un novice comme moi, en quoi le ce mode debug aurait pu être utile ?
Avatar de pmithrandir pmithrandir - Membre expert https://www.developpez.com
le 16/11/2010 à 17:41
Citation Envoyé par ogaby  Voir le message
Ce mode caché aurait pu (peut-être) aider les ingénieurs de microsoft et de linux pour vérifier l'intégration des processeurs dans les noyaux. Mais bon maintenant c'est un peu tard. Tant pis.

Je suis sur qu'il y a moyen d'améiorer encore le tout... Acceder a un debug, ca peut permettre de trouver des warning, erreurs intestable avant.
Avatar de baxou087 baxou087 - Membre habitué https://www.developpez.com
le 16/11/2010 à 20:52
Dans un premier temps, BRAVO à ce hacker.

Cependant, je ne sais pas si je suis le seul que ça choque, mais je trouve cela assez troublant. Corrigez moi si je me trompe, mais le fait d'avoir accès à un processeur en mode debugging, c'est donner accès au noms des variables, à leur contenu, mais aussi aux diverses données sensibles des processeurs (à savoir des warnings comme précisés plus haut par pmithrandir).

Je ne doute pas du fait que ce soit utile d'avoir accès à ce debugger, mais n'est-ce pas un danger pour les utilisateurs de machines équipées de processeurs AMD?

Car après tout qu'est-ce qui empêcherais quelqu'un de mal intentionné d'exploiter ces données à de mauvaises fins?

Dans ce cas, ne serait-ce pas la raison pour laquelle AMD le gardait secret?
Avatar de taha1 taha1 - Membre régulier https://www.developpez.com
le 16/11/2010 à 21:21

J'ai un pc équipé d'un AMD 64bit lol (dommage que c'est le seul pc que j'ai sinon j'aurai tenté l'aventure et passer en mode debug , mais comme je suis novice vaut mieux pas jouer avec ça lol )
Avatar de Neko Neko - Membre chevronné https://www.developpez.com
le 16/11/2010 à 23:30
Citation Envoyé par baxou087  Voir le message
Dans un premier temps, BRAVO à ce hacker.

Cependant, je ne sais pas si je suis le seul que ça choque, mais je trouve cela assez troublant. Corrigez moi si je me trompe, mais le fait d'avoir accès à un processeur en mode debugging, c'est donner accès au noms des variables, à leur contenu, mais aussi aux diverses données sensibles des processeurs (à savoir des warnings comme précisés plus haut par pmithrandir).

Je ne doute pas du fait que ce soit utile d'avoir accès à ce debugger, mais n'est-ce pas un danger pour les utilisateurs de machines équipées de processeurs AMD?

Car après tout qu'est-ce qui empêcherais quelqu'un de mal intentionné d'exploiter ces données à de mauvaises fins?

Dans ce cas, ne serait-ce pas la raison pour laquelle AMD le gardait secret?

je peux me tromper, mais un processeur, ça bosse avec des registres et de la mémoire, en aucun cas avec des variables proprement dites dans le sens où ya pas de nom. Juste des adresses.
De même un processeur n'émet pas de warning. Soit ça marche, soit il émet une interruption.

Par contre ce mode débug permet peut être d'écrire ou lire dans des zones mémoire où un programme donné tournant en mode user ne devrait pas avoir accès. Voir donc bypasser l'OS. Mais ça ne semble pas être le cas puisque comme écrit ce mode debug n'est accessible qu'en ring 0.
Avatar de Joker-eph Joker-eph - Membre confirmé https://www.developpez.com
le 17/11/2010 à 1:59
Citation Envoyé par pmithrandir  Voir le message
Je suis sur qu'il y a moyen d'améiorer encore le tout... Acceder a un debug, ca peut permettre de trouver des warning, erreurs intestable avant.


On peut avoir un exemple parceque je ne vois pas bien là ? On peut déjà détecter les overflows et les divisions par zéro, tu vois quoi comme erreurs/warnings sur les opérations assembleurs ?
Avatar de Joker-eph Joker-eph - Membre confirmé https://www.developpez.com
le 17/11/2010 à 2:00
Citation Envoyé par baxou087  Voir le message
Cependant, je ne sais pas si je suis le seul que ça choque, mais je trouve cela assez troublant. Corrigez moi si je me trompe, mais le fait d'avoir accès à un processeur en mode debugging, c'est donner accès au noms des variables, à leur contenu, mais aussi aux diverses données sensibles des processeurs (à savoir des warnings comme précisés plus haut par pmithrandir).

Ne confonds-tu pas avec les débogueurs logiciels ? Ça n'as pas grand chose à voir... Un programme doit être compilé spécialement pour embarquer des infos exploitable par un débogueur. On est complètement à un autre niveau quand on parle d'instructions processeur.

Par contre des instructions matérielles de breakpoints pourraient aider à améliorer les débogueurs existants, surtout en terme de performance.
Avatar de pmithrandir pmithrandir - Membre expert https://www.developpez.com
le 17/11/2010 à 6:10
Citation Envoyé par Joker-eph  Voir le message
On peut avoir un exemple parceque je ne vois pas bien là ? On peut déjà détecter les overflows et les divisions par zéro, tu vois quoi comme erreurs/warnings sur les opérations assembleurs ?

Je dis juste que si un mode d'introspection existe qui permet de tracer plus précisément des actions que l'on ne pouvait que supposer auparavant, on devrait je pense avoir des bonnes surprises dans les prochains mois.

Je ne pourrais jamais croire que des développeurs a l'aveugle ont fait aussi bien que si ils avaient pu y voir plus clair.

Exemple imagé.
On supposait pour le driver précédent d'après la doc que arrivé à un point A, on avait le choix entre le chemin 1 et le chemin 2. Le chemin 1 paraissait plus indiqué. Finalement, on s'aperçoit que le chemin 2 fait la même chose en moitié moins d'instruction... bingo.

Après, ca parait quand même étonnant que AMD n'ait pas communiqué sur ce module, quel était le risque si ce n'est améliorer les drivers existants ?
Offres d'emploi IT
Ingénieur intégration, validation, qualification du système de drone H/F
Safran - Ile de France - Éragny (95610)
Consultant sap finance/controlling H/F
Safran - Ile de France - Vélizy-Villacoublay (78140)
Ingénieur conception en électronique de puissance H/F
Safran - Ile de France - Moissy-Cramayel (77550)

Voir plus d'offres Voir la carte des offres IT
Contacter le responsable de la rubrique Accueil