
Эксплойт-доказательство концепции для CVE-2015-1474, демонстрирующий крах SurfaceFlinger в Android через десериализацию вредоносного Parcel, что позволяет повысить привилегии на уязвимых устройствах.
Этот код предназначен для создания PoC для CVE-2015-1474. Код основан на коде команды screencap, но генерирует мошеннический parcel, который приводит к сбою surfaceflinger при его десериализации. Подробнее на http://forum.xda-developers.com/kindle-fire-hdx/orig-development/evaluating-cve-2015-1474-to-escalate-to-t3045163.
Клонируйте в frameworks/base/cmds/badscreencap и скомпилируйте с помощью mmm frameworks/base/cmds/badscreencap. Чтобы иметь возможность скомпилировать, измените видимость BBinder::onTransact на public (в frameworks/native/include/Binder.h). Это необходимо для получения смещения vtable этого метода.
Вы можете извлечь необходимые .so-файлы с вашего устройства (или из OTA-пакета), если не хотите собирать весь нативный фреймворк Android.