
Эксплойт на Python для CVE-2015-1538-1, нацеленный на переполнение целого числа в атоме 'stsc' MP4 в Stagefright, для достижения удалённого выполнения кода и reverse shell на Android-устройствах.
Вот скрипт на Python, который генерирует MP4-файл, эксплуатирующий уязвимость «stsc», также известную как CVE-2015-1538 (#1). Это одна из самых критических уязвимостей, которые я сообщил в библиотеке Stagefright. Ожидаемый результат эксплуатации — обратный shell от имени пользователя media. Как подробно описано в моих презентациях на Black Hat и DEF CON, этот пользователь также имеет доступ к нескольким группам, таким как inet, audio, camera и mediadrm. Эти группы позволяют злоумышленнику удалённо делать снимки или прослушивать микрофон без эксплуатации дополнительных уязвимостей.
У этого эксплойта есть несколько оговорок. Во-первых, он не является универсальным. Он был протестирован только на одной модели устройства. Моей целью было устройство Galaxy Nexus под управлением Android 4.0.4, содержащее лишь частичную реализацию ASLR. Кроме того, из-за различий в структуре кучи этот эксплойт сам по себе не является 100% надёжным. Однако мне удалось добиться 100% надёжности при доставке через вектор атаки, допускающий множественные попытки. Наконец, эта уязвимость была одной из нескольких, которые были нейтрализованы защитой от целочисленного переполнения в операторе «new[]» компилятора GCC 5.0, присутствующей в Android 5.0 и более поздних версиях.
Наслаждайтесь! Пожалуйста, подумайте о вкладе в безопасность Android через исследования!