App是否可能通过技术“暗箱操作”,在后台偷偷获取用户个人信息?App监听、擅自读取用户照片等迷思多年来无法破除,往往处于用户深信不疑、企业又无法自证的尴尬境地。
12月22日,南都个人信息保护研究中心联合清华大学人工智能国际治理研究院、人工智能治理研究中心(清华大学)在北京举办2022啄木鸟数据治理论坛。在论坛个人信息保护专场上,北京汉华飞天信安科技有限公司总经理彭根对App合规中常受关注的存储、关联启动和后台获取三个技术点进行了剖析,揭开App和操作系统后台的秘密。
对于用户来说,只需做到简单一步——使用新版本的操作系统,就能较好的保护App个人信息安全。彭根也建议开发者坚持告知与行为一致的原则,用更好的服务而不是技术来提高用户“保活率”。
App不一定要申请权限才能存储
在App弹窗申请操作系统危险权限时,你会不会在点下同意前犹豫?谷歌定义危险权限接近30个,如麦克风、摄像头、联系人、定位,还包括电话和存储。
许多用户担心,在给出存储权限后,手机App会擅自读取、删除手机里的其他文件。今年11月12日,有网友发现手机操作系统提示得物App删除他上传的维权证据视频,引发侵犯隐私的质疑。
数据存储是几乎所有App都会用到的功能,但这是否意味着所有App都要申请存储权限?操作系统作出类似提示,是示警还是误报?
“App存储并不一定要申请权限,申请所得到的也并不是手机所有的存储权限。”彭根解释,安卓存储机制分为内部存储和外部存储,外部存储又分为私有目录和公有目录。每个App都在外部存储拥有自己的私有目录,只能在自己的目录下操作,安卓系统已经帮用户进行了单向拦截。
彭根在论坛上的报告
安卓10以上的操作系统使用了分区存储机制,对个人信息保护和用户体验都有质的提升。分区存储机制,指的是App读取自己创建的文件不需要再申请权限,其他App创建的文件需要读取权限。但如果要对其他App的文件做写入、删除等操作,则还需要用户二次确认和主动选择同意。这意味着,如果App要删除相册里的图片,即使它已经申请过了存储权限,还是得再次经过用户允许。
彭根在论坛上的报告
彭根建议,App开发者将targetSdkVersion设置为大于等于30,以使用Android10及以上版本的保护机制,让广大用户对存储空间的使用更放心、安心。
用服务而非技术提高用户保活率
关联启动,指的是开机自启动,或被其他应用唤醒连带启动。它常被诟病多个App后台运行、拖慢运行速度,或是频繁读取系统信息、甚至抓取用户隐私。
彭根表示,关联启动现在仍然常用,是因为可以满足很多正常的业务需求。关联启动可以帮助App及时收到系统的信息,并通过预先加载提高打开速度。它还能实现在App间快速切换,例如购买东西后跳转到支付宝里支付,或是用高德地图打开定位。至于App的唤醒条件是否与其功能一致,则需要监管和应用市场加强审核。
后台获取的应用场景也不少:在手机熄屏后,也可能需要播放音乐、导航、下载或导出文件等。为此,新版本操作系统新增了审核机制,用户一旦选择了“使用中读取”的选项,App就无法在切屏后继续读取。App的后台行为也会被新的操作系统可视化,增强对用户的告知提醒。
彭根认为,开发者设计关联启动和后台运行,最终目的是为了App“保活”:提高被用户使用的时间和频率,是App生存和提高商业估值的关键。他建议,App用更好的服务来提高保活率,保证告知与行为一致,不要尝试一些不合规的“技术保活路线”,比如启动完全透明的界面、或在后台播放完全没有声音的音频文件。现在,随着操作系统的后台告知日益完善,这样的“小动作”已在用户面前无所遁形。
对于手机用户,彭根建议尽量使用新版本的操作系统。“有些用户说升级完了不太好用,不太会用,但为了安全性和保护自己个人隐私这是有必要的,而且是用户成本最低的方法,没有学习成本。”
采写:实习生程雨祺 南都记者蒋琳