这是什么情况?微信 iOS 端可以绕过权限知道用户安装了哪些 app 了?

2019-07-04 10:13:34 +08:00
 hhxx6

iOS 的权限是禁止 app 读取用户已安装 app 列表的

可是昨天打开 iTunes 备份发现(已越狱设备应该可以直接在设备上看见):

在微信的 documents 文件夹里面有一个一长串数字加字母的文件夹,这个就是代表某个登录的用户文件夹。

在这个文件夹里面有一个 appicon 文件夹(一般就是文件夹内 name 顺序排列第一个),打开看了一下,里面就是我所安装过的 app 的图标图片

这样是不是相当于说微信已经可以绕过权限知道用户安装过哪些 app 了?

6371 次点击
所在节点    Apple
14 条回复
agagega
2019-07-04 12:26:40 +08:00
Word 也能看你安装其他 Office 软件(比如 Excel )没有。
zea
2019-07-04 18:11:02 +08:00
如果微信知道用户手机上装了$,岂不是可以直接加入重点关注?
dourgulf
2019-07-05 09:13:51 +08:00
你的设备越狱了吧?
hhxx6
2019-07-05 12:01:55 +08:00
@dourgulf 没有
hhxx6
2019-07-05 12:02:30 +08:00
@zea 当然可以,而且通过你安装了什么 app,还可以给你推送特定广告
hhxx6
2019-07-05 12:02:47 +08:00
@agagega word 和 excel 都是微软的,很正常
itenyh
2019-07-05 17:54:37 +08:00
回去看看
fvckDaybyte2
2019-07-06 11:09:08 +08:00
据我所知 iOS 是可以检测特定软件是否安装,用 canOpenUrl 接口,系统只告诉你是或否,你想获取软件列表,只能先把所有已知软件的 url 列出来,然后一个一个去试能不能跳转
zea
2019-07-06 19:46:15 +08:00
@fvckDaybyte2 敏感软件比如说$,如果没有注册调用接口的情况下是不是就检测不到了?没做过 ios 开发不懂…
lp10
2019-07-08 11:24:48 +08:00
里面是*只有*你装过的软件的图标还是*含有*你装过的软件的图标?
lp10
2019-07-08 11:27:28 +08:00
是包含*所有*你的软件还是*只有接入了微信登录*的软件?
devjia
2019-07-08 14:14:43 +08:00
我猜是缓存了接入了 wx SDK 的应用 icon, 因为部分界面 UI 需要显示这个图标.
线索 1: canOpenUrl 有上限 50 的限制, 用这个检测 applist 行不通了.
线索 2: 即使 wx 真的使用了不可描述的手法搞到了 applist , 肯定也会处理完然后消除罪证.
zenor
2019-07-09 11:19:45 +08:00
@devjia 同意,或者是和 WX 有合作的,可以跳转的那些应用的一个简单的是否安装
argc
2019-07-09 12:19:21 +08:00
ios 上有私有 api 能获取 app 安装列表,至于绕过私有 api 检测的方式有很多种,不过这个 api 据我所知在 iOS12 (没记错的话也可能是 11 )中已经移除了。所以如果是 iOS12 之前的备份,有这个安装列表也不奇怪。当然我觉得就算微信会去拿你的列表也不会傻乎乎的保存在本地。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/579882

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX