Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
cve-2019-6260 — ASPEED BMC AHB 인터페이스를 위한 저수준 하드웨어 디버깅 및 보안 평가 도구입니다. 플랫폼 보안 테스트를 위해 PCIe, LPC 및 UART 인터페이스를 프로브하여 펌웨어, RAM 및 BMC 메모리를 읽고 씁니다. | Kitploit
도구/GitHubGitHub/nikitapbst/cve-2019-6260
Embedded Systems SecurityVulnerability AnalysisExploitationHardware HackingPenetration TestingHardware SecurityBinary AnalysisFirmware Analysis
GitHubnikitapbst/cve-2019-6260

cve-2019-6260

ASPEED BMC AHB 인터페이스를 위한 저수준 하드웨어 디버깅 및 보안 평가 도구입니다. 플랫폼 보안 테스트를 위해 PCIe, LPC 및 UART 인터페이스를 프로브하여 펌웨어, RAM 및 BMC 메모리를 읽고 씁니다.

저장소 보기
6145년 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

ASPEED BMC AHB 인터페이스를 위한 테스트 및 디버그 도구

경고

이 도구의 동작을 대상 머신의 맥락에서 이해하지 못했다면 사용하지 마십시오.

이 도구는 머신의 저수준 하드웨어 및 펌웨어 인터페이스를 조작합니다. 특히, 프로빙(probe) 작업은 대상 장치가 우리가 찾고자 하는 장치가 아닐 경우 그 결과에 대한 불확실성을 수반합니다.

이 도구의 사용은 대상 머신의 불안정성, 충돌 또는 심각한 오류를 초래할 수 있습니다.

소개

ASPEED BMC는 여러 가지 암시적(implicit) 운영 모드를 가지고 있습니다:

  1. 개발(Development): BMC/호스트 펌웨어 부트업(bring-up)
  2. IO 확장기(IO-Expander): BMC가 전용 펌웨어를 실행하지 않음
  3. 프로비저닝(Provisioned): BMC가 전용 펌웨어를 실행함

1번과 2번 모드를 지원하기 위해, BMC는 여러 슬레이브 인터페이스에서 호스트가 BMC 내부로 접근하여 물리적 주소 공간에서 임의의 작업을 수행할 수 있는 기능을 노출합니다.

중요한 인터페이스는 PCIe와 LPC 버스 모두에 연결되어 있으며, 특정 플랫폼 설계에서 어느 쪽이 호스트 CPU에 연결되지 않을 수도 있습니다.

3번 모드도 일반적으로 사용되지만, AST2400 및 AST2500의 경우 콜드 부트 시 하드웨어는 1번과 2번 모드로 구성됩니다. 따라서 BMC 펌웨어 개발자는 BMC의 저장 데이터 및 런타임 환경의 기밀성, 무결성, 가용성을 유지하려면 모든 인터페이스를 보호해야 할 책임이 있습니다.

인터페이스

  • PCIe VGA P2A: 64KiB 슬라이딩 윈도우를 통해 임의의 AHB 접근을 제공하는 PCIe MMIO 인터페이스

    • SCU에서 쓰기 필터를 구성하여 coarse-grained AHB 영역의 무결성을 보호할 수 있습니다. 기본적으로 쓰기 필터는 활성화되어 있지 않습니다(모든 AHB 영역에 쓰기 가능).
  • iLPC2AHB: 임의의 AHB 접근을 제공하는 SuperIO 논리 장치

    • LPC 컨트롤러에는 전체 AHB를 포괄하는 쓰기 필터가 노출되어 있습니다. 기본적으로 쓰기 필터는 활성화되어 있지 않습니다(AHB에 쓰기 가능).
  • 디버그 UART: 임의의 AHB 접근이 가능한 하드웨어 제공 UART 디버그 셸

    • UART1 또는 UART5 중 하나에서 사용 가능
  • X-DMA: 임의의 M-Bus 접근

  • PCIe BMC 장치: 4KiB 윈도우를 통해 제한된 AHB 접근을 제공하는 고정 PCIe MMIO 인터페이스 모음

  • LPC2AHB: LPC FW 사이클을 AHB에 매핑하는 BMC 제어 매핑

도구 기능

  • 현재 P2A, iLPC2AHB, LPC2AHB 및 디버그 UART 인터페이스 사용 지원

  • 사용 가능한 모든 인터페이스를 통해 모든 인터페이스의 가용성을 프로빙(probe)

    • 기밀성 및 무결성 요구 사항에 따라 종료 상태를 선택적으로 설정 가능. 플랫폼 보안 테스트 스위트에 통합하기에 이상적.
  • 호스트에서 인밴드 BMC 콘솔

  • 호스트에서 실행 중인 BMC의 펌웨어 재플래시 또는 덤프

    • BMC CPU는 플래시 작업 시작 직전에 클록 게이팅(clock-gated)되고, 플래시 작업 완료 후 SoC 리셋 직전에 게이팅이 해제됩니다.
  • BMC RAM 읽기 및 쓰기

  • BMC 자체에서 실행하기 위한 Linux /dev/mem 인터페이스도 지원

컴파일

이 도구는 여러 아키텍처에서 컴파일되며, 적어도 다음 아키텍처에서 테스트되었습니다:

  • x86_64
  • powerpc64, powerpc64le
  • armv6

빌드는 make 명령으로 수행되며, 크로스 컴파일은 make 환경에서 CROSS_COMPILE을 설정하여 수행됩니다. 예:

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

실행 및 예제 출력

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
$
도구 다운로드