tgoop.com/android_live/530
Last Update:
Подмена Runtime Permissions
#security #subscribers
Тут @vitach скинул свою статью, где описывает, как подменить Runtime Permissions на свежих версиях Android.
Если посмотреть на реализацию системного показа диалога с разрешениями, то можно увидеть GrantPermissionsActivity
, который запускается после запроса на выдачу разрешений и отображает нам диалог со знакомым интерфейсом.
Идея заключается в наложении поверх этой системной Activity
своей с флагом android:windowIsTranslucent=true
, который позволяет делать Activity
с прозрачным фоном, а также добавить парочку флагов, чтобы убрать фокус:
• FLAG_NOT_FOCUSABLE — убирает возможность взаимодействия с методом ввода;
• FLAG_NOT_TOUCH_MODAL — отправляет события touch за пределы нашего окна;
• FLAG_NOT_TOUCHABLE — убирает возможность получать события касания.
В результате мы получаем открытую фейковую Activity
, где можем написать любое разрешение или текст, но при этом, по факту, вызвать совершенно другое. Правда, в некоторых версиях системы у нас есть отличающийся дизайн этих диалогов, но всегда можно допилить UI, используя описанный подход.
Баг работает на версиях Android >= 7.1.1, так как до этой версии показывался диалог с предупреждением о перекрытии окна.
Ссылка на код тут, а статья с описанием тут. Ну и читайте внимальнее те разрешения, которые даёте установленным приложениям.🙄
BY Android Live 🤖

Share with your friend now:
tgoop.com/android_live/530