업데이트로 돌아가기
UpdatedSep 3, 2026

CVE-2026-25250 — Updated!

CVE-2026-25250에 대한 분석 및 익스플로잇으로, Horizon DataSys Reboot Restore의 Secure Boot 우회 취약점으로, shdloader.efi가 검증 없이 Shield.efi를 로드합니다.

공유

🕷️ CVE-2026-25250: 신뢰할 수 없는 부트로더 체인 검증 (Improper Trusted Bootloader Chain Validation)

서명 또는 무결성 검증 없이 보조 EFI 바이너리를 로드하는 Microsoft 서명 타사 부트로더로, 내부에서 Secure Boot 신뢰 체인을 붕괴시킵니다.




📑 목차 (Table of Contents)




🧠 연구 배경 (Research Context)

이 저장소는 2026년 4월 Microsoft에 공개되고 CVE가 할당된 Secure Boot 우회 취약점인 CVE-2026-25250에 대한 연구를 문서화합니다. 취약한 구성 요소가 Microsoft 서명을 받았고 따라서 대부분의 UEFI 지원 Windows 시스템에서 무조건적으로 신뢰되기 때문에, 이 취약점은 해당 연도의 가장 중요한 펌웨어 보안 문제 중 하나로 빠르게 부각되었습니다.

이 취약점은 업계 최고의 펌웨어 및 공급망 보안 연구 팀 중 하나인 EclypsiumMickey Shkatov와 Stanislav Lyakhov에 의해 발견되었습니다. Mickey Shkatov는 UEFI 공격 연구 분야의 오랜 인물로, BootHole(CVE-2020-10713, 사실상 모든 Linux 배포판과 Windows 듀얼 부팅 구성을 영향을 준 심각한 GRUB2 Secure Boot 우회)의 저자이자, Jesse Michael과 함께 DEF CON 30에서 "One Bootloader to Load Them All" 프레젠테이션을 진행한 인물입니다. 해당 발표는 Microsoft 서명 타사 부트로더가 Secure Boot 생태계에서 클래스 수준의 약점을 나타낸다는 점을 체계적으로 정리했습니다.

CVE-2026-25250은 정확히 그 클래스에 속합니다.

이 취약점이 특히 교육적인 이유는 그 단순함 때문입니다: 메모리 손상도, 펌웨어 자체의 암호화 결함도 없으며, 단지 신뢰된 바이너리가 다음에 로드할 항목에 대해 안전하지 않은 결정을 내리는 것뿐입니다. 단 하나의 약한 연결 고리만으로도 대상 시스템의 전체 Secure Boot 모델이 붕괴될 수 있습니다.




📌 공식 참조 (Official References)

CVE-2026-25250은 엔터프라이즈 복구 환경에 배포된 타사 UEFI 부팅 구성 요소를 분석하는 과정에서 발견되었습니다. 영향을 받는 제품은 Horizon DataSys의 Reboot Restore 솔루션입니다.

이 취약점은 결함이 Windows 또는 Microsoft 작성 코드가 아닌 타사 펌웨어(shdloader.efi)에 있기 때문에 Microsoft가 아닌 MITRE에 의해 할당되었습니다.

공식 참조:




🔬 직접 재현하기 (Reproduce It Yourself)

발견 팀이 LinkedIn에 게시한 Eclypsium의 공개 내용은 영향을 받는 소프트웨어를 식별하고 공급업체 웹사이트에서 직접 다운로드할 수 있는 충분한 컨텍스트를 제공합니다.

Horizon DataSys Reboot Restore 설치 프로그램은 공개적으로 제공되며, 테스트 시스템에 설치하면 shdloader.efi와 Shield.efi가 모두 EFI 시스템 파티션에 배치되어 정적으로 분석하거나 런타임에 관찰할 수 있습니다.

권장 실험실 구성:

Windows 10/11 VM (QEMU 또는 VMware)
├── Secure Boot: 활성화 (Enabled)
├── Horizon DataSys Reboot Restore: 설치됨 (Installed)
├── ESP 접근 방법: mountvol X: /S
└── 대상 (Targets):
	HorizonDataSys
        X:\EFI\shdloader.efi ← 서명됨, 신뢰됨, 다음 단계 로드
        X:\EFI\Shield.efi    ← 검증 없이 로드됨

설치 후, shdloader.efi는 sigcheck.exe(Sysinternals) 또는 pesign을 통해 Microsoft CA 2011 서명을 확인할 수 있습니다. Shield.efi 로드 경로에 LoadImage / StartImage 호출이 없다는 것은 정적 분석에서 즉시 확인할 수 있습니다.




🐜 취약한 부팅 체인 (Vulnerable Boot Chain)

이 취약점은 단일 바이너리가 아닌 다단계 부팅 체인에 영향을 미칩니다.


🧨 1단계 - 신뢰된 부트로더 (Stage 1 - Trusted Bootloader)

  • shdloader.efi
    • Microsoft UEFI CA 2011로 디지털 서명됨
    • Secure Boot 펌웨어 정책에 의해 무조건적으로 신뢰됨
    • Horizon DataSys 소프트웨어에 의해 ESP에 설치됨

⚠️ 2단계 - 검증되지 않은 페이로드 (Stage 2 - Unverified Payload)

  • Shield.efi
    • 부팅 시 shdloader.efi에 의해 동적으로 로드됨
    • ❌ 서명 검증 없음
    • ❌ 무결성 검사 없음
    • ❌ UEFI LoadImage / StartImage API 사용 안 함
    • ✅ 로컬 관리자에 의해 자유롭게 교체 가능

📌 핵심 관찰 (Key Observation)

취약점은 펌웨어에 있지 않습니다. 모든 보안 검사를 우회하는 코드 경로를 통해 보조 바이너리를 로드하기로 선택한, 펌웨어가 이미 승인한 신뢰된 부트로더의 로직에 있습니다.

Firmware
  └── shdloader.efi 검증          ✅ Microsoft CA 2011, 신뢰됨
        └── ManualPEParse(Shield.efi) ❌ LoadImage 없음, 서명 검사 없음
              └── EntryPoint()        💥 공격자 제어 코드, OS 이전 실행

Secure Boot 경계는 신뢰하는 가장 부주의한 바이너리만큼만 강력합니다.




🧪 취약점 개요 (Vulnerability Overview)

CVE-2026-25250은 부팅 프로세스 중 로드되는 보조 EFI 바이너리의 부적절한 검증으로 인해 발생하는 Secure Boot 우회입니다. 영향을 받는 부트로더(shdloader.efi)는 Secure Boot에 의해 서명되고 신뢰되지만, 어떤 종류의 암호화 검증도 없이 수동 PE 파싱 루틴을 통해 Shield.efi를 로드합니다.

이는 설계 및 신뢰 모델의 실패로, 신뢰된 구성 요소가 모든 다운스트림 보호를 무효화하는 안전하지 않은 결정을 내리는 것입니다.


🔐 Secure Boot 및 신뢰 모델 (Secure Boot & Trust Model)

Secure Boot는 부팅 시퀀스 중 실행되는 모든 구성 요소가 제어권이 이전되기 전에 검증되어야 하는 신뢰 체인을 강제합니다. 이 모델은 체인의 모든 신뢰된 바이너리가 해당 계약을 준수할 때만 유지됩니다:

Firmware → 부트로더 검증 → 부트로더는 검증된 코드만 실행

CVE-2026-25250은 두 번째 연결 고리를 끊습니다:

Firmware → shdloader.efi 검증 (✅ 신뢰됨)
             ↓
           shdloader.efi → Shield.efi 로드 (❌ 검증되지 않음)
                             ↓
                           임의의 서명되지 않은 코드가 부팅 전에 실행됨

신뢰된 바이너리가 검증되지 않은 실행 경로를 도입하면 펌웨어 수준의 Secure Boot 강제는 무의미해집니다.


🧬 근본 원인 분석 (Root Cause Analysis)

분류:

단계 (Step)수행됨 (Performed)비고 (Notes)
ESP에서 Shield.efi 찾기표준 파일시스템 접근
파일을 메모리로 읽기-
PE 헤더를 수동으로 파싱사용자 정의 구현
서명 검증수행되지 않음
db / dbx 확인수행되지 않음
LoadImage / StartImage 호출완전히 우회됨
엔트리 포인트로 실행 이전직접 호출

LoadImage / StartImage의 부재가 근본 원인입니다. 이러한 UEFI 부트 서비스는 Secure Boot 정책 적용의 통합 지점이며, 이를 우회하는 것은 모든 것을 우회하는 것을 의미합니다.


💥 악용 프로세스 (Exploitation Process)

악용에는 로컬 관리자 권한과 한 번의 재부팅이 필요합니다.

  1. EFI 시스템 파티션 마운트
  2. Shield.efi를 임의의 서명되지 않은 EFI 바이너리로 교체
  3. 재부팅

다음 부팅 시, shdloader.efi가 실행되고(펌웨어에 의해 신뢰됨), 공격자가 제어하는 바이너리를 로드한 후, 측정된 부팅 정책이 적용되기 전에, OS 이전, EDR 이전에 실행을 이전하며 Secure Boot는 어떠한 이의도 제기하지 않습니다.

가능한 공격:

  • OS 재설치 및 전체 디스크 포맷을 견디는 지속적인 UEFI 부트킷.
  • OS 계층 보안 도구에 보이지 않는 초기 단계 임플란트.
  • 커널 모드 보호(EDR, PatchGuard, VBS/HVCI)의 완전한 회피.



📚 리소스 (Resources)




🤝 연구 및 협업 (Research & Collaboration)

비슷한 작업을 하고 계신가요? UEFI, 커널 보안, 악용 또는 다른 흥미로운 보안 주제를 연구 중이신가요? 익스플로잇 개발, 기술 탐구에 도움이 필요하거나 아이디어를 교환하고 싶다면 주저하지 말고 연락해 주세요. 저는 항상 연구 논의, 도움 제공, 흥미로운 프로젝트 협업에 열려 있습니다. LinkedIn으로 연락해 주세요.

카테고리