探讨: iOS 本地网络权限 对隐私保护的有效性和局限性

2022-01-04 11:05:22 +08:00
 dLvsYgJ8fiP8TGYU

在使用 iOS 设备与局域网内其他设备互动的过程中,发现一些有意思的现象,可能对分析“本地网络”能在多大程度上保护用户隐私有所帮助:

  1. 第三方浏览器似乎不需要允许“本地网络”权限就可以访问局域网内地址,例如路由器管理页面。是因为 iOS 上的第三方浏览器都是 AppleWebKit 套壳,所以不再需要额外权限?

  2. 使用 SSH 软件连接局域网内服务器,必须允许“本地网络”权限,否则无法连接。

  3. 使用群晖 DS 套件 App 连接局域网内 NAS ,发现“本地网络”权限所保护的对象,似乎仅限与当前设备处于同一网段的 IP 地址。

    • 例如当前设备 IP 地址为 192.168.1.123 ,“本地网络”权限似乎只能用于限制 App 与属于 192.168.1.0/24 网段的 IP 进行通信,而对于其他网段的局域网 IP 则不做限制。
    • 也就是说,假如局域网内有一台 IP 地址为 192.168.0.234 的服务器,用户使用 IP 地址为 192.168.1.123 的 iOS 设备,无需给相应 App 授权“本地网络”权限,即可跨网段连接到目标服务器。
    • 因此,如果想进一步提升局域网安全性,需要划分多个 VLAN 并做好隔离,仅放行需要用到的跨网段端口
  4. App 可以获取用户是否允许了“本地网络”权限,进而调整自己的行为。例如使用 Readdle Documents 开启 WebDAV 服务器:

    • “本地网络”权限开启,其他设备可以直接用 http://设备 IP 连接;
    • “本地网络”权限关闭,App 会在每次开启 WebDAV 服务器时生成随机端口号, 其他设备可用 http://设备 IP:随机端口号 连接
    • 成功连接其他设备运行的 WebDAV 服务器后,App 会显示其他设备的名称,例如 xxx 的 iPhone。进一步猜测还可以获取到 MAC 地址,如果 App 开发者想做,完全存在被用于用户画像 /追踪的可能。
    • App 似乎不能获得其他网段内的设备名称,而只会显示 IP 地址。至于是否能跨网段获取到 MAC 地址这类敏感数据,还请各位大佬解答!

以上都是基于用户主动输入 IP 地址:端口号发起连接时的行为,至于 App 后台自行发起的连接,iOS 系统是否有能力与用户发起的请求作出区分,还请了解 iOS 开发的大佬解答!

1735 次点击
所在节点    Apple
6 条回复
ruixue
2022-01-04 12:38:16 +08:00
这个本地网络权限是有点迷,TIM 局域网备份聊天记录到电脑,显示要本地网络权限,实际上不给也能成功备份,然而微信如果不给本地网络权限,备份必定失败
daveh
2022-01-04 12:49:27 +08:00
你理解的还不够到位,你提的那些问题应该不是问题。
并不是说能访问到局域网其他 IP 就会泄露隐私,而是其中 IP 对应的 MAC 地址可能泄露你隐私。
试想如果这个 MAC 地址是你 Wi-Fi 路由器的,那 app 根本不用请求定位权限,仅通过扫描出的 MAC 地址就能查到对应 AP 所在位置,从而间接定位到你的位置。
局域网中,跨网关后,没法获取到其他网段 IP 的 MAC 地址,所以应该也不存在泄露隐私问题。
yaoyao1128
2022-01-04 13:20:58 +08:00
mac 地址获取不到 ios11 开始
之后设备名称是 ptr 记录( rdns )就会返回的 这个好像是 dhcp 分配的结果 跨越了 dhcp 所以获取不到
kingxiangqi
2022-01-04 16:39:13 +08:00
这么说的话,Mac 上安装的 iOS App 没有权限管理,网络可以随便扫呗?

macOS 也没有 iOS 的私有 MAC 地址功能,笔电背包族还是可能会被追踪。(可以手动改
zjddp
2022-01-05 09:19:49 +08:00
我知道的两个需要“本地网络”的场景是 DLNA 设备发现和苹果的 Bonjour 服务,这两个应该都用到了组播。
okakuyang
2022-01-05 16:56:05 +08:00
“至于 App 后台自行发起的连接,iOS 系统是否有能力与用户发起的请求作出区分”
可以,用 c 的库写的请求也可以拦截,iOS 提供的网络库应该也是对 c 那些库的封装。

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

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

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

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

© 2021 V2EX