
CVE-2026-25262의 Snapdragon 8 Gen 1에 대한 적용 가능성 — 실험 결과
상태:
부분적 성공 — 임의 SRAM 쓰기 확인, 전체 Firehose 초기화 대기 중.
이 저장소는 Snapdragon 8 Gen 1 (SM8450) 플랫폼, 특히 POCO F4 GT 기기(코드명 ingres)에 대한 CVE-2026-25262(Qualcomm Sahara 프로토콜의 Write-What-Where)의 적용 가능성에 대한 실험적 연구 결과를 포함합니다.
주요 발견 사항 (확인됨):
CVE-2026-25262는 SM8450에서 악용 가능합니다. Sahara 핸드셰이크 중 서명 검증을 우회하면서 SRAM에 임의 데이터 쓰기가 가능합니다. 이는 공식적으로 인정된 레거시 32비트 및 64비트 칩셋(ARMv7-A, ARMv8-A) 목록을 넘어 현대적인 64비트 ARMv9 플랫폼에 대한 취약점의 적용 가능성을 확인합니다.
중요한 인증 플래그가 식별되었습니다. Firehose 로더(xbl_s_devprg_ns.melf)의 정적 분석 결과 주소 0x6b9cd500에 전역 구조체가 발견되었습니다. 인증 상태는 오프셋 0x38(0x6b9cd538)의 64비트 필드에 의해 제어됩니다. 정적 분석에 따르면 이 필드를 5로 설정하면 이론적으로 전체 액세스 권한이 부여되어야 합니다.
플래그 주입은 기술적으로 가능합니다. 사용자 정의 도구(cve_final_single)를 사용하여 로더로 제어권을 넘기기 전에 주소 0x6b9cd538에 값 5가 기록되었습니다. 쓰기는 로그에 기록되지만, 인증 비활성화에 대한 이 작업의 직접적인 효과는 추가 검증이 필요합니다.
로더 코드가 실행 중입니다. 주입 후 Firehose 로더는 기본 명령(nop)에 응답하며, 인증 오류(Only nop and sig tag...)가 관찰되지 않습니다. 이는 코드가 활성 상태임을 확인하지만, 정확한 실행 컨텍스트(Non‑Secure World 또는 전환 상태)는 추가 분석이 필요합니다.
전체 UFS 액세스는 아직 획득되지 않았습니다. getstorageinfo와 같은 명령은 빈 응답을 반환합니다. 로더는 진단 정보(TargetName, MemoryName, Version)를 제공하지 않습니다. 이는 불완전한 초기화를 나타냅니다.
표준 서명 검증 부팅 환경에서 해시 오류 시 PBL 동작이 확인되었습니다. 참조 파일의 해시 테이블을 의도적으로 손상시키면 원래 도구(edl, qdl)로 일관되게 48 상태 오류(SAHARA_NAK_HASH_VERIFICATION_FAILURE)가 발생합니다. 이는 검증의 기준선 역할을 합니다.
현재 상태:
전체 Firehose 초기화를 달성하기 위한 나머지 단계를 적극적으로 조사 중입니다. 두 가지 주요 가설을 검토 중입니다:
병렬로 Firehose의 TrustZone 종속성에 관한 가설을 탐구할 것입니다: 드라이버가 UFS 액세스에 SMC 호출을 사용하는 경우, 패치를 통해 중화해야 합니다.
작업은 진행 중입니다. 새로운 결과가 나오면 저장소가 업데이트됩니다.
저장소 구조:
├── README.md
├── docs/
│ └── README_ru.md
├── article/
│ ├── article_en.md
│ └── article_ru.md
├── evidence/
│ ├── pbl_status_en.md
│ └── pbl_status_ru.md
│ ├── ghidra_analysis_en.md
│ └── ghidra_analysis_ru.md
│ └── cve_injection_log_en.md
│ └── cve_injection_log_ru.md
└── tools/
├── README_en.md
└── README_ru.md
⚠️ 책임 있는 공개:
이 작업은 교육 및 연구 목적으로 게시되었습니다. 전체 익스플로잇 코드는 제공되지 않습니다. 설명된 세부 사항은 검증 및 추가 연구에 충분하지만, 공격을 위한 기성 도구는 포함되지 않습니다.
📬 연락처:
질문이나 협업은 이 저장소에 이슈를 열어 주십시오.
최종 업데이트: 2026년 7월