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
cve-2019-6260 — Outil de débogage matériel bas niveau et d'évaluation de sécurité pour les interfaces AHB des BMC ASPEED. Sonde les interfaces PCIe, LPC et UART pour lire/écrire le firmware, la RAM et la mémoire du BMC pour les tests de sécurité de la plateforme. | Kitploit
Outils/GitHubGitHub/nikitapbst/cve-2019-6260
Sécurité des Systèmes EmbarquésAnalyse des VulnérabilitésExploitationHacking MatérielTests d'IntrusionSécurité MatérielleAnalyse de BinairesAnalyse de Micrologiciel
GitHubnikitapbst/cve-2019-6260

cve-2019-6260

Outil de débogage matériel bas niveau et d'évaluation de sécurité pour les interfaces AHB des BMC ASPEED. Sonde les interfaces PCIe, LPC et UART pour lire/écrire le firmware, la RAM et la mémoire du BMC pour les tests de sécurité de la plateforme.

61il y a 5 ansPas encore vérifié

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
Voir le dépôt

Un outil de test et de débogage pour les interfaces AHB des BMC ASPEED

Avertissement

N'UTILISEZ PAS CET OUTIL SI VOUS N'AVEZ PAS COMPRIS SES COMPORTEMENTS DANS LE CONTEXTE DE VOTRE MACHINE CIBLE.

Cet outil manipule des interfaces matérielles et micrologicielles bas niveau de votre machine. En particulier, l'acte de sondage implique une incertitude quant aux conséquences si le périphérique cible n'est pas celui que nous espérions trouver.

L'utilisation de cet outil peut entraîner une instabilité, des plantages ou des défaillances critiques de la machine cible.

Introduction

Les BMC ASPEED disposent de plusieurs modes de fonctionnement implicites :

  1. Développement : mise au point du firmware du BMC / de l'hôte
  2. IO-Expander : le BMC n'exécute pas de firmware dédié
  3. Provisionné : le BMC exécute un firmware dédié

Pour répondre aux modes 1 et 2, le BMC expose des fonctionnalités sur plusieurs de ses interfaces esclaves qui permettent à l'hôte d'accéder au BMC et d'effectuer des opérations arbitraires dans son espace d'adressage physique.

Les interfaces significatives sont rattachées aux bus PCIe et LPC, car l'un ou l'autre peut ne pas être connecté au CPU hôte dans une conception de plateforme donnée.

Le mode 3 est également généralement utilisé, mais pour les AST2400 et AST2500, le matériel est configuré pour les modes 1 et 2 au démarrage à froid. La responsabilité incombe donc aux développeurs de firmware BMC de s'assurer que toutes les interfaces sont sécurisées s'ils souhaitent maintenir la confidentialité, l'intégrité et la disponibilité des données au repos et des environnements d'exécution du BMC.

Interfaces

  • PCIe VGA P2A : une interface PCIe MMIO offrant un accès AHB arbitraire via une fenêtre glissante de 64 ko

    • Des filtres d'écriture peuvent être configurés dans le SCU pour protéger l'intégrité de régions AHB à granularité grossière. Par défaut, les filtres d'écriture ne sont pas activés (toutes les régions AHB sont accessibles en écriture).
  • iLPC2AHB : un périphérique logique SuperIO offrant un accès AHB arbitraire

    • Un filtre d'écriture couvrant l'intégralité de l'AHB est exposé dans le contrôleur LPC. Par défaut, le filtre d'écriture n'est pas activé (l'AHB est accessible en écriture).
  • Debug UART : un shell de débogage UART fourni par le matériel avec accès AHB arbitraire

    • Disponible sur l'une des UART1 ou UART5
  • X-DMA : accès arbitraire au bus M

  • Périphérique BMC PCIe : une collection d'interfaces PCIe MMIO fixes offrant un accès AHB restreint via des fenêtres de 4 ko

  • LPC2AHB : un mappage contrôlé par le BMC des cycles FW LPC sur l'AHB

Fonctionnalités de l'outil

  • Prend actuellement en charge l'utilisation des interfaces P2A, iLPC2AHB, LPC2AHB et Debug UART

  • Sonde la disponibilité de toutes les interfaces via toute interface disponible

    • Peut éventuellement définir le code de sortie en fonction des exigences de confidentialité et d'intégrité. Idéal pour l'intégration dans des suites de tests de sécurité de plateforme.
  • Console BMC intégrée depuis l'hôte

  • Reflasher ou vider le firmware d'un BMC en cours d'exécution depuis l'hôte

    • Le CPU du BMC est désactivé par horloge immédiatement avant le début des opérations de flash, et réactivé immédiatement avant une réinitialisation du SoC après l'achèvement des opérations de flash.
  • Lecture et écriture de la RAM du BMC

  • Prend également en charge l'interface Linux /dev/mem pour une exécution sur le BMC lui-même

Compilation

L'outil compile pour plusieurs architectures, et au moins les suivantes ont été testées :

  • x86_64
  • powerpc64, powerpc64le
  • armv6

La compilation consiste à lancer make, tandis que la compilation croisée s'effectue en définissant CROSS_COMPILE dans l'environnement make, par exemple :

root@kitploit:~
$ make CROSS_COMPILE=powerpc64le-linux-gnu-

Exécution et exemple de sortie

root@kitploit:~
$ ./doit
Not enough arguments
Usage:

./doit probe [INTERFACE [IP PORT USERNAME PASSWORD]]
./doit ilpc read ADDRESS
./doit ilpc write ADDRESS VALUE
./doit p2a vga read ADDRESS
./doit p2a vga write ADDRESS VALUE
./doit debug read ADDRESS INTERFACE [IP PORT USERNAME PASSWORD]
./doit debug write ADDRESS VALUE INTERFACE [IP PORT USERNAME PASSWORD]
./doit devmem read ADDRESS
./doit devmem write ADDRESS VALUE
./doit console HOST_UART BMC_UART BAUD USER PASSWORD
./doit read firmware
./doit read ram
./doit write firmware
./doit replace ram MATCH REPLACE
./doit reset TYPE [INTERFACE [IP PORT USERNAME PASSWORD]]
./doit sfc fmc read ADDRESS LENGTH [INTERFACE [IP PORT USERNAME PASSWORD]]
./doit sfc fmc erase ADDRESS LENGTH [INTERFACE [IP PORT USERNAME PASSWORD]]
./doit sfc fmc write ADDRESS LENGTH [INTERFACE [IP PORT USERNAME PASSWORD]]
root@kitploit:~
$ ./doit probe --require confidentiality digi,portserver-ts-16 <IP> <PORT> <USER> <PASSWORD>
Connecting to Digi Portserver TS 16 at <IP>:23
Logging into Digi Portserver TS
Configuring binary mode on port 4
Resetting port 4
Connecting to BMC console at <IP>:2104
Entering debug mode
Initialised Debug UART AHB interface
Performing interface discovery via Debug UART
Exiting debug mode
Have SuperIO: Yes
iLPC2AHB Bridge: Read-only
Have VGA PCIe device: Yes
Have MMIO on VGA device: Yes
P2A write filter state:
0x00000000-0x0fffffff (Firmware): Read-write
0x10000000-0x1fffffff (SoC IO): Read-write
0x20000000-0x3fffffff (Flashes): Read-write
0x40000000-0x5fffffff (Reserved): Read-write
0x60000000-0x7fffffff (LPC Host): Read-write
0x80000000-0xffffffff (DRAM): Read-write
Have X-DMA on VGA device: Yes
Have BMC PCIe device: No
X-DMA is unconstrained: No
Have debug UART: Yes
Debug UART enabled on: UART5
$ echo $?
1
$
Télécharger l’outil