Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
rosenbridge — Backdoors matériels dans les CPU x86 | Kitploit
Outils/GitHubGitHub/xoreaxeaxeax/rosenbridge
Escalade de PrivilègesAnalyse des VulnérabilitésExploitationRétro-ingénierieFuzzingHacking MatérielSécurité MatérielleSécurité Matériel et IoTAnalyse de BinairesArticles et RechercheApprentissage et Éducation
2.6k2268il y a 8 ansVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager
GitHub
xoreaxeaxeax/rosenbridge

rosenbridge

Backdoors matériels dans les CPU x86

Voir le dépôt

project:rosenbridge

: portes dérobées matérielles dans les CPU x86

github.com/xoreaxeaxeax/rosenbridge // domas // @xoreaxeaxeax

Aperçu

project:rosenbridge révèle une porte dérobée matérielle dans certains processeurs x86 de bureau, portables et embarqués.

La porte dérobée permet au code de l'anneau 3 (espace utilisateur) de contourner les protections du processeur pour lire et écrire librement les données de l'anneau 0 (noyau). Bien que la porte dérobée soit généralement désactivée (nécessitant une exécution en anneau 0 pour l'activer), nous avons constaté qu'elle est activée par défaut sur certains systèmes.

Ce dépôt contient des utilitaires pour vérifier si votre processeur est affecté, fermer la porte dérobée si elle est présente, ainsi que les recherches et outils utilisés pour découvrir et analyser la porte dérobée.

La porte dérobée

La porte dérobée rosenbridge est un petit cœur non-x86 intégré aux côtés du cœur x86 principal dans le CPU. Elle est activée par un bit de contrôle de registre spécifique au modèle, puis basculée avec une instruction de lancement. Le cœur intégré reçoit ensuite des commandes, enveloppées dans une instruction x86 spécialement formatée. Le cœur exécute ces commandes (que nous appelons le 'jeu d'instructions profondément intégré'), en contournant toutes les protections mémoire et les vérifications de privilèges.

Bien que la porte dérobée devrait nécessiter un accès au niveau du noyau pour être activée, il a été observé qu'elle est activée par défaut sur certains systèmes, permettant à tout code non privilégié de modifier le noyau.

La porte dérobée rosenbridge est totalement distincte des autres coprocesseurs connus publiquement sur les CPU x86, tels que le Management Engine ou le Platform Security Processor ; elle est plus profondément intégrée que tout coprocesseur connu, ayant accès non seulement à toute la mémoire du CPU, mais aussi à son fichier de registres et à son pipeline d'exécution.

Systèmes affectés

On pense que seuls les CPU VIA C3 sont affectés par ce problème. Les processeurs de la série C sont commercialisés pour l'automatisation industrielle, les points de vente, les guichets automatiques et le matériel de santé, ainsi que pour une variété d'ordinateurs de bureau et portables grand public.

Perspectives

La portée de cette vulnérabilité est limitée ; les générations de CPU postérieures au C3 ne contiennent plus cette fonctionnalité.

Ce travail est publié en tant qu'étude de cas et expérience de pensée, illustrant comment des portes dérobées pourraient apparaître dans des processeurs de plus en plus complexes, et comment les chercheurs et les utilisateurs finaux pourraient identifier ces fonctionnalités. Les outils et recherches proposés ici fournissent le point de départ pour des recherches toujours plus approfondies sur les vulnérabilités des processeurs.

Vérifier votre CPU

Pour vérifier si votre CPU est affecté :

root@kitploit:~
git clone https://github.com/xoreaxeaxeax/rosenbridge
cd rosenbridge/util
make
sudo modprobe msr
sudo ./bin/check

L'utilitaire fourni doit être exécuté sur du bare metal (pas dans une machine virtuelle) et est dans un état alpha. Il peut planter, provoquer une panique ou bloquer les systèmes ne contenant pas la porte dérobée.

Les utilitaires fournis ici sont conçus autour d'une famille et d'un cœur de processeur spécifiques ; malheureusement, les outils manqueront la porte dérobée si elle a été ne serait-ce que légèrement modifiée par rapport à la forme étudiée.

Fermeture de la porte dérobée

Certains systèmes ont la porte dérobée activée par défaut, permettant à du code non privilégié d'obtenir un accès au niveau du noyau sans autorisation. Si les étapes de 'Vérifier votre CPU' indiquent que votre CPU est vulnérable, vous pouvez installer un script pour fermer la porte dérobée tôt dans le processus de démarrage :

root@kitploit:~
cd fix
make
sudo make install
reboot

Notez que, même avec cela, un attaquant ayant un accès au niveau du noyau peut toujours réactiver la porte dérobée. Ce script est fourni comme une ébauche pour corriger le problème pendant le processus de démarrage, mais nécessitera une adaptation pour différents systèmes.

Outils et techniques

L'utilitaire sandsifter est largement utilisé dans cette recherche pour découvrir des instructions inconnues.

  • asm

    Un assembleur pour le jeu d'instructions profondément intégré (DEIS). Il convertit les programmes écrits en assembleur rosenbridge personnalisé en instructions x86 qui, lorsqu'elles sont exécutées après l'instruction de lancement, enverront les commandes au cœur CPU caché.

  • esc

    Une preuve de concept d'utilisation de la porte dérobée rosenbridge pour l'escalade de privilèges.

  • fix

    Une ébauche pour fermer la vulnérabilité sur les systèmes affectés, dans la mesure du possible via des mises à jour de registres spécifiques au modèle.

  • fuzz

    Une collection d'utilitaires utilisés pour fuzzer à la fois les cœurs x86 et rosenbridge, afin d'isoler l'instruction de lancement et l'instruction de pont inconnues, et de résoudre le format d'instruction du cœur rosenbridge.

    • deis

      Le fuzzer utilisé pour explorer les effets et les capacités du cœur CPU caché.

    • exit

      On pense que, sur certains processeurs, une séquence de sortie est nécessaire pour revenir au cœur x86 à la fin d'une séquence DEIS. Ce répertoire contient les utilitaires utilisés pour rechercher la séquence de sortie dans les premières étapes de la recherche, mais a été abandonné lorsqu'un processeur a été trouvé ne nécessitant aucune séquence de ce type.

    • manager

      Une collection d'utilitaires Python conçus pour surveiller et gérer les tâches de fuzzing réparties sur un réseau de workers.

    • wrap

      Une version allégée du fuzzer sandsifter, utilisée pour identifier l'instruction de pont qui enverra les commandes du cœur x86 au cœur rosenbridge caché.

  • kern

    Une collection d'utilitaires d'aide utilisés pour surveiller la mémoire du noyau et les registres pour les modifications causées par les instructions DEIS fuzzées.

  • lock

    Utilitaires pour verrouiller ou déverrouiller la porte dérobée rosenbridge.

  • proc

    Un outil pour identifier des motifs à partir des journaux de fuzzing afin d'identifier des classes de comportements d'instructions DEIS.

  • test

    Un outil utilisé au début de la recherche, pour tenter d'identifier l'architecture du cœur caché en exécutant des instructions RISC connues.

  • util

    Un outil en état alpha pour détecter si un processeur est affecté par rosenbridge.

Références

(TODO : lien vers le livre blanc)

(TODO : lien vers les diapositives)

Avertissement

Les détails et implications présentés dans ce travail sont les inférences et opinions des auteurs, dérivées de la recherche décrite. La recherche est effectuée et fournie dans le but d'identifier et de corriger une vulnérabilité de sécurité perçue sur les CPU décrits. Les processeurs VIA sont réputés pour leur faible consommation d'énergie et leur excellence dans les conceptions embarquées; nous croyons que la fonctionnalité décrite a été créée de bonne foi comme une fonctionnalité utile pour le marché embarqué, et a été involontairement laissée activée sur certaines générations précoces du processeur. Aucune intention malveillante n'est implicite.

Auteur

project:rosenbridge est un effort de recherche de Christopher Domas (@xoreaxeaxeax).

Télécharger l’outil