Пользователь GitHub под именем modzero опубликовал инструмент, созданный разработчиком Яном Гильрихом (Jan Girlich). Этот инструмент включает приложения для Android, предназначенные для тестирования и создания эксплойтов, доказывающих наличие уязвимостей (Proof of Concept, PoC) десериализации Java в Android.
Сам инструмент основан на ysoserial, созданном frohoff, однако нацелен на платформу Android. Уязвимости Java десериализации — давно изученная тема, обычно такие бреши приводят к выполнению кода в контексте атакуемого приложения. На Android эта проблема более актуальна из-за того, как обрабатывается обмен данными между приложениями.
В опубликованном репозитории находятся два Android-приложения:
- Приложение «атакующее» — создает полезную нагрузку и реализует вредоносную составляющую процесса.
- Уязвимое для связки эксплойтов CommonsCollection демо-приложение.
Для демонстрации работы можно открыть уязвимое демонстрационное приложение, затем переключиться на атакующее приложение и использовать цель «ch.modzero.intent_receiver.deserialize.pwn».
Как использовать:
- Открыть в Android Studio и скомпилировать папку атакующего приложения.
- Установить полученный apk на телефон или эмулятор, где также должно быть установлено тестируемое на уязвимость приложение.
- Убедиться, что ваше потенциально уязвимое приложение запущено.
- Указать название намерения (intent) потенциально уязвимого приложения в поле ввода в верхней части.
- Нажать кнопку «send» в правом нижнем углу.
Если брешь будет обнаружена, инструмент уведомит пользователя.