type
status
date
slug
summary
tags
category
icon
password
Android引入Uid1000 授权限制使用脚本检查ROM中APP是否存在可以利用的providerColorOS存在root_path配置的providerOnePlus7Hydrogen 中如果flag最高位为1则允许授权三星Galaxy A51中对部分provider进行放行参考
Android引入Uid1000 授权限制
在
checkGrantUriPermissionUnlocked
中仅允许UID=1000的系统应用授权两个provider
但是对于手机厂商而言,一般情况下会允许其他的一些
provider
授权使用脚本检查ROM中APP是否存在可以利用的provider
先需要将全部APK拖出来,然后检查其中 是必须要检查的 实际上利用StartAnywhere利用不局限于system应用,其他用户组的App也可以进行授权 ,这意味这这个APP权限为system(UID=1000)。剩下的条件需要根据实际情况确定,比如这里使用
AndroidManifest.xml
中的内容,"android.uid.system"
FILE_PROVIDER_PATHS
意味着存在File Provider。对于三星和小米而言需要额外检查Authority
是否包含在放行区间。ColorOS存在root_path配置的provider
又如ColorOS中放行了
com.coloros.phonemanager.files
而恰好,这个
file provider
又可以授权并且有root_path
配置,从而可以直接使用ParcelMismatch
进行利用,读写系统system_app
可读写(SELinux
限制)的文件。OnePlus7Hydrogen 中如果flag最高位为1则允许授权
就可以通过StartAnyWhere漏洞拿到UID1000应用的provider授权
三星Galaxy A51中对部分provider进行放行
但是其中有三个File Provider中有
root_path
和external-path
等配置,从而也可以配合StartAnyWhere进行利用。参考
- 作者:LLeaves
- 链接:https://lleavesg.top//article/grantUriPermission-StartAnyWhere
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。
相关文章