MASTG-TECH-0126: Obtenção de Permissões de App
As permissões do Android são declaradas no arquivo AndroidManifest.xml usando a tag <uses-permission>. Você pode usar várias ferramentas para visualizá-las.
Usando o AndroidManifest¶
Extraia o AndroidManifest.xml conforme explicado em Obtenção de Informações do AndroidManifest e recupere todos os elementos <uses-permission>.
Usando aapt2¶
aapt pode ser usado para visualizar as permissões solicitadas por um aplicativo.
$ aapt d permissions org.owasp.mastestapp.apk
package: org.owasp.mastestapp
uses-permission: name='android.permission.INTERNET'
uses-permission: name='android.permission.CAMERA'
uses-permission: name='android.permission.WRITE_EXTERNAL_STORAGE'
uses-permission: name='android.permission.READ_CONTACTS'
uses-permission: name='android.permission.READ_EXTERNAL_STORAGE'
uses-permission: name='org.owasp.mastestapp.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION'
Usando adb¶
adb pode ser usado para visualizar as permissões solicitadas por um aplicativo. Ele também mostra o status das permissões (concedidas ou negadas) em tempo de execução.
$ adb shell dumpsys package org.owasp.mastestapp | grep permission
declared permissions:
requested permissions:
android.permission.INTERNET
android.permission.CAMERA
android.permission.WRITE_EXTERNAL_STORAGE
android.permission.READ_CONTACTS
android.permission.READ_EXTERNAL_STORAGE
install permissions:
android.permission.INTERNET: granted=true
runtime permissions:
android.permission.READ_EXTERNAL_STORAGE: granted=false, flags=[ RESTRICTION_INSTALLER_EXEMPT]
android.permission.CAMERA: granted=false
android.permission.WRITE_EXTERNAL_STORAGE: granted=false, flags=[ RESTRICTION_INSTALLER_EXEMPT]
android.permission.READ_CONTACTS: granted=false