Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
cve-2019-6260 | Kitploit
Tools/GitHubGitHub/nikitapbst/cve-2019-6260
Embedded-System-SicherheitSchwachstellenanalyseExploitationHardware-HackingPenetrationstestsHardware-SicherheitBinäranalyseFirmware-Analyse
GitHubnikitapbst/cve-2019-6260

cve-2019-6260

Repository anzeigen
61vor 5 JahrenNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

Ein Test- und Debug-Werkzeug für ASPEED-BMC-AHB-Schnittstellen

Warnung

VERWENDEN SIE DIESES WERKZEUG NICHT, WENN SIE SEIN VERHALTEN IM KONTEXT IHRER ZIELMASCHINE NICHT VERSTANDEN HABEN.

Dieses Werkzeug greift auf Low-Level-Hardware- und Firmware-Schnittstellen Ihrer Maschine zu. Insbesondere impliziert der Vorgang des Sondierens eine Unsicherheit über die Folgen, wenn das Zielgerät nicht das Gerät ist, das wir zu finden hofften.

Die Verwendung dieses Werkzeugs kann zu Instabilität, Abstürzen oder kritischen Fehlern der Zielmaschine führen.

Einführung

ASPEED-BMCs haben mehrere implizite Betriebsmodi:

  1. Entwicklung: BMC-/Host-Firmware-Bring-up
  2. IO-Expander: Der BMC führt keine dedizierte Firmware aus
  3. Provisioniert: Der BMC führt eine dedizierte Firmware aus

Um 1 und 2 zu ermöglichen, stellt der BMC auf mehreren seiner Slave-Schnittstellen Funktionen bereit, die es dem Host erlauben, in den BMC hineinzugreifen und beliebige Operationen in seinem physischen Adressraum durchzuführen.

Die wesentlichen Schnittstellen hängen sowohl am PCIe- als auch am LPC-Bus, da in einem gegebenen Plattformdesign eine von beiden möglicherweise nicht mit der Host-CPU verbunden ist.

Modus 3 wird ebenfalls typischerweise verwendet, aber bei den AST2400- und AST2500-Modellen ist die Hardware beim Kaltstart für die Modi 1 und 2 konfiguriert. Somit liegt es in der Verantwortung der BMC-Firmware-Entwickler, sicherzustellen, dass alle Schnittstellen abgesichert sind, wenn sie die Vertraulichkeit, Integrität und Verfügbarkeit der ruhenden Daten und Laufzeitumgebungen des BMC aufrechterhalten möchten.

Schnittstellen

  • PCIe-VGA-P2A: Eine PCIe-MMIO-Schnittstelle, die über ein 64-kiB-Schiebefenster beliebigen AHB-Zugriff ermöglicht

    • Im SCU können Schreibfilter konfiguriert werden, um die Integrität grobkörniger AHB-Regionen zu schützen. Standardmäßig sind die Schreibfilter nicht aktiviert (alle AHB-Regionen sind beschreibbar).
  • iLPC2AHB: Ein logisches SuperIO-Gerät, das beliebigen AHB-Zugriff ermöglicht

    • Im LPC-Controller ist ein Schreibfilter verfügbar, der den gesamten AHB abdeckt. Standardmäßig ist der Schreibfilter nicht aktiviert (AHB ist beschreibbar).
  • Debug-UART: Eine hardwaregestützte UART-Debug-Shell mit beliebigem AHB-Zugriff

    • Verfügbar entweder auf UART1 oder UART5
  • X-DMA: Beliebiger M-Bus-Zugriff

  • PCIe-BMC-Gerät: Eine Sammlung fester PCIe-MMIO-Schnittstellen, die über 4-kiB-Fenster eingeschränkten AHB-Zugriff ermöglichen

  • LPC2AHB: Eine BMC-gesteuerte Abbildung von LPC-FW-Zyklen auf den AHB

Werkzeugfunktionen

  • Unterstützt derzeit die Verwendung der P2A-, iLPC2AHB-, LPC2AHB- und Debug-UART-Schnittstellen

  • Sondiert die Verfügbarkeit aller Schnittstellen über jede verfügbare Schnittstelle

    • Kann optional den Exit-Status basierend auf Vertraulichkeits- und Integritätsanforderungen setzen. Ideal für die Integration in Plattform-Sicherheitstestsuiten.
  • In-Band-BMC-Konsole vom Host aus

  • Firmware eines laufenden BMC vom Host aus neu flashen oder auslesen

    • Die BMC-CPU wird unmittelbar vor Beginn der Flash-Operationen taktgesperrt und unmittelbar vor einem SoC-Reset nach Abschluss der Flash-Operationen wieder freigegeben.
  • BMC-RAM lesen und schreiben

  • Unterstützt außerdem die Linux-Schnittstelle /dev/mem für die Ausführung auf dem BMC selbst

Kompilieren

Das Werkzeug lässt sich für mehrere Architekturen kompilieren; mindestens die folgenden wurden getestet:

  • x86_64
  • powerpc64, powerpc64le
  • armv6

Das Erstellen erfolgt durch Ausführen von make, während die Kreuzkompilierung durch Setzen von CROSS_COMPILE in der Make-Umgebung erreicht wird, z. B.:

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

Ausführung und Beispielausgabe

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
$
Tool herunterladen