Назад к обновлениям
UpdatedAug 20, 2026

cve-2026-25262-sm8450-research — Updated!

Применимость CVE-2026-25262 к Snapdragon 8 Gen 1 — экспериментальные результаты

Поделиться

Экспериментальное подтверждение CVE-2026-25262 на Snapdragon 8 Gen 1 (SM8450)

Статус: Частичный успех — произвольная запись в SRAM подтверждена, полная инициализация Firehose ожидается.

В этом репозитории содержатся результаты экспериментального исследования применимости CVE-2026-25262 (Write-What-Where в протоколе Sahara Qualcomm) к платформе Snapdragon 8 Gen 1 (SM8450), в частности к устройству POCO F4 GT (кодовое имя ingres).

Ключевые результаты (подтверждены):

· CVE-2026-25262 эксплуатабельна на SM8450. Произвольная запись данных в SRAM на этапе рукопожатия Sahara возможна в обход проверки подписи. Это подтверждает применимость уязвимости к современной 64-битной платформе ARMv9, выходящей за пределы официально признанного списка устаревших 32- и 64-битных чипсетов (ARMv7-A, ARMv8-A).

· Критический флаг авторизации идентифицирован. Статический анализ загрузчика Firehose (xbl_s_devprg_ns.melf) выявил глобальную структуру по адресу 0x6b9cd500. Состояние авторизации управляется 64-битным полем по смещению 0x38 (0x6b9cd538). На основе статического анализа, установка этого поля в значение 5 теоретически должна предоставить полный доступ.

· Инъекция флага технически возможна. С помощью собственного инструмента (cve_final_single) выполнена запись значения 5 по адресу 0x6b9cd538 до передачи управления загрузчику. Факт записи зафиксирован в логе, однако прямое влияние этой операции на отключение авторизации остаётся предметом дальнейшей верификации.

· Код загрузчика исполняется. После инъекции загрузчик Firehose отвечает на базовые команды (nop), и ошибка авторизации (Only nop and sig tag...) не наблюдается. Это подтверждает, что код активен, однако точный контекст его исполнения (Non‑Secure World или переходное состояние) остаётся предметом дальнейшего анализа.

· Полный доступ к UFS пока не получен. Команды типа getstorageinfo возвращают пустой ответ; загрузчик не предоставляет диагностическую информацию (TargetName, MemoryName, Version). Это указывает на неполную инициализацию.

· Поведение PBL при ошибке хэша (при штатной загрузке с проверкой подписи) установлено. Намеренное повреждение хэш-таблицы в эталонном файле стабильно вызывает ошибку со статусом 48 (SAHARA_NAK_HASH_VERIFICATION_FAILURE) на оригинальных инструментах (edl, qdl). Это является нашим эталоном для верификации.

Текущий статус: Мы активно исследуем оставшиеся шаги для полной инициализации Firehose. Проверяются две основные гипотезы:

· Загрузка «чистого образа» – загрузка только LOAD-сегментов (без заголовков ELF и оверлея сертификатов) может обеспечить корректную инициализацию.

· Зависимости от TrustZone – Firehose может полагаться на Secure World (SMC-вызовы), который может быть не активен при CVE-доставке.

Параллельно будет исследована гипотеза о зависимости Firehose от TrustZone: если драйвер использует SMC-вызовы для доступа к UFS, потребуется их нейтрализация через патч.

Работа продолжается. Репозиторий будет пополняться по мере получения новых результатов.

Структура репозитория:

├── 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             

⚠️Ответственное раскрытие: Эта работа публикуется в образовательных и исследовательских целях. Полный код эксплойта не предоставляется. Описанных деталей достаточно для верификации и дальнейшего изучения, но они не содержат готовых инструментов для атак.

📬 Контакты: По вопросам или для сотрудничества, пожалуйста, создайте issue в этом репозитории.

Последнее обновление: Июль 2026

Категории