尽管并夕夕侵犯个人隐私已经是众所周知,而且不是一朝一夕的事了,但前几天爆出的拼多多恶意行为分析报告还是把我震撼到了。
根据这份报告,拼多多最牛逼的行为是把自己提权为超级用户,然后在后台强制保活并防止被卸载,真nm不要脸。

利⽤⼿机操作系统漏洞的⾏为包括,利⽤安卓系统和OEM漏洞提权成为 超级⽤户,然后安装后门驻留系统,随后进⾏App⽆法卸载、App⽆法关掉、盗取其他App数据(包括聊天记录 和上⽹⾏为等)、伪装成其他App骗⽤户打开、逃避合规监管⼤量获取⽤户隐私信息、绕过操作系统通知限制 等动作,从⽽实现留存转化率提升、提⾼⽤户触达率、DAU、MAU、⽤户精准画像、⼴告收⼊和交易转化率提 升等。回望这些⼿段,是否终于明⽩了拼多多曾经的爆炸式增⻓神话的真正原因之⼀?这些⾮法⾏为,直⾄被 曝光的时间,都在给其业务带来⽕箭般助⼒,正如其代码中所述:PddRocket.

————《拼多多恶意行为分析报告》

从拼多多事件入手,我今天想谈谈为什么要保护自己的隐私,针对在安卓手机上保护隐私提供一些方案。

①很多人认为,尽管目前各种App乃至手机系统侵犯隐私的行为非常多,但其主要目的是为了提升自己的使用体验,为此牺牲一点隐私安全,完全是可以接受的。
可事实上,那些厂商的私心是无止境的,他们获得的很多隐私数据可能不仅仅给自己用。不仅如此,从拼多多事件看来,侵犯隐私的行为只会日益猖獗,厂商只会进一步索求更多的数据。试问,大家是否能接受通过把自己设为超级用户,在后台长时间运行耗电,偷窃各种聊天记录,甚至伪装成其他应用骗用户打开的行为?

很多人认为应用申请的权限没有拿到会影响正常运行,可事实上很多应用申请的大部分权限是根本不必要的
绝大部分应用会申请位置权限,但事实上使用IP就可以定位大致的位置信息。我住在哪个区哪个街道这么重要吗?粗略位置精确范围通常是1.5公里以内,而精准位置的精确范围是50米以内。这对我们日常使用的大部分应用是不需要的。

非常多的应用会用极其具有误导性的方式诱导你赋予读写存储空间权限,但事实上,安卓系统给每个应用都提供了存放数据和缓存的位置,对于几乎所有常用软件,不赋予存储权限完全可以正常运行。
如果你提供的存储空间权限,他们很可能会在存储卡目录下乱放文件数据,导致存储卡根目录极为混乱,而且这部分文件所占用的空间是难以统计的,也难以确认哪个对应哪个应用。将应用数据部分存放在存储卡目录下也使得其他有储存权限的应用可以读取这些信息,这对隐私和信息安全是极其不利的。名字取自一千零一夜的某著名公司的SDK甚至会在根目录创建名为.UTSystemConfig的文件夹,您是个寄吧的system好意思取这个名字,生怕别人删掉?
在保存图片等文件的时候,软件会申请写入存储空间权限,但事实上,在安卓11及以上系统,向公有目录写入文件是根本不需要权限的。经过测试,把那些软件的写入存储空间权限的Appops权限设置为忽略,他们一样可以向SD卡的公有目录存入文件,比如向Pictures目录存入图片文件。
如果需要临时读取权限发个图片改个头像之类的,临时赋权然后取消即可。

读取剪贴板、应用列表权限也是经常被滥用的权限。因为某些原因,安装应用后这两个权限是默认允许使用的。如果你的系统上有权限监控程序的话,会发现很多应用一次次地在后台反复尝试获取手机信息、剪贴板和应用列表,可表面上我们使用这些软件时并没有太多地用到这些权限。

①Appops是安卓系统的一种权限管理服务,和平时所说的运行时权限不同,Appops的权限可以被设置成忽略,而应用在调用被忽略的权限时,并不会收到权限不可用的错误信息,它会自以为获得了权限,但得到的是空数据或者操作不会被执行。下文的隐私保护建议中有更多信息

第一千零三十二条 自然人享有隐私权。任何组织或者个人不得以刺探、侵扰、泄露、公开等方式侵害他人的隐私权。

————《中华人民共和国民法典》

在一个隐私权不受尊重的时代,捍卫自己的隐私显得格外重要,这是我们的权利,更是我们的义务。

下面给出我自己在安卓系统上做的一些保护隐私的措施,供参考
①非必要不赋权
正如上文所述,很多应用申请的大部分权限其实是用不上的。在没有使用必要的情况下,并没有必要赋予这么多的权限。
举个例子:对于地图软件,我们仅需要设置位置权限为“在使用该应用时允许”即可,而其他权限是用不上的,全部可以拒绝。
现阶段我所了解到的所有输入法都有剪贴板记录功能,因此,完全没有必要允许其他应用读取剪贴板,如果需要输入剪贴板的内容,使用输入法里的剪贴板功能输入即可。至于淘口令之类,我真心觉得这玩意是污染我的剪贴板...
微信的存储权限通常可以直接关闭,仅在需要选取图片时允许即可,允许完再关闭权限,从而避免其读取手机里的其他数据。
②使用Appops进一步管控权限
Appops是安卓系统内的一个权限管理框架,和我们平时所说的“权限”不同,Appops允许将应用权限设置为忽略,而应用自身却不会察觉,其结果是应用自认为获得了权限,但实际只能获得空信息或者操作不被执行。
如果某些应用强制要求获取某些权限(但实际上没有权限仍然照常运行),可以通过将其权限设置为忽略从而绕过权限要求。
对于其他权限,例如存储权限,设置为忽略可以避免某些应用在各种地方骚扰你让你开权限。在临时允许权限后如果将其设置为拒绝,那么应用会闪退,需要重新打开,用起来很不友好,但如果把权限设置为忽略就不会闪退,使用起来更舒服。
常见的两个Appops管理软件是App Ops权限狗,权限狗已经很久不更新,在安卓10以上的系统中已经难以使用了,因此建议使用App Ops。
App Ops支持Shizuku和托管设备管理员的两种模式。考虑到在无Root设备上使用Shizuku会受到是否有电脑或者Wifi的限制,无Root设备建议使用托管设备管理员模式。
在5.5.6以上版本中,由于Google Play要求,托管设备管理员模式被移除,因此如果要使用该功能,建议安装5.5.6版本。目前我在安卓12上用5.5.6没发现什么问题。有Root就用最新版加Shizuku吧。
另外经过我测试,虽然设备管理员模式理论上支持冰箱、小黑屋和Island,但只有冰箱和Island可用,小黑屋授权之后改不了Appops。
③尽可能地使用开源软件代替商业化的闭源软件
比如输入法,建议使用同文输入法fcitx5-android,考虑到同文输入法虽然功能强大但配置复杂,对很多不了解rime的用户不太友好,建议不了解rime的用户使用fcitx5-android,会方便很多。
④冻结一些不必要的系统软件
系统软件具有很高的权限,而且难以管控。有很多和手机厂商联网的系统软件可能会泄漏隐私信息,而它们并非系统运行所必须的软件,比如手机自带的安全中心类软件(事实上并没有感觉出来能起到多少安全作用),可以考虑冻结。
上文提到的小黑屋、冰箱、Islans等软件均可冻结应用,并且在有无Root的设备上都可以运行。
⑤使用隐藏应用列表对话框取消等XP模块隐藏自己的App,其中对话框取消在免Root的Xposed框架上一样可以使用,详见我的免Root的Xposed框架和可用模块分享
至于隐藏哪些App,取决于个人判断。隐藏应用列表用起来比对话框取消方便很多,甚至可以考虑把大部分App都放到模板里应用到所有用户软件上。

目前就想到这么多了,有别的想法再来更新quyinniang_wuyu.png

本文作者:小欢

本文链接:拼多多事件引发的思考:为什么,以及如何保护自己的隐私? - https://www.xh-ws.com/archives/pdd_privacy_protection.html

版权声明:如无特别声明,本文即为原创文章,仅代表个人观点,版权归 小欢博客 所有,遵循知识共享署名-相同方式共享 4.0 国际许可协议。转载请注明出处!