安卓刷机

Arch Wiki 安卓文档

为什么要刷机

在目前市面上可见的各个手机品牌中,除了其自己魔改的闭源安卓手机系统外,几乎任何一个品牌都会预装上一系列的出厂应用,如浏览器,通讯录,应用市场等。这些应用均为闭源软件,由各个手机厂商开发提供。这里就存在严重的问题,这些魔改系统以及闭源应用软件可能会进行各种间谍功能,对使用者进行监控以及审计。据报告,小米以及华为手机均会对用户的搜索以及浏览进行上报,匹配到关键词如”xzzy”,”twdl”,”民主ziyou”等词即会进行加密上报,这些关键词可能有成百上千个。由于此类原因,使得使用者必须对手机的系统进行重新刷入,选择一个开源可靠的 ROM 刷入手机可以保障自己的隐私及安全。在硬件层面,也存在审计与监控的可能性,但是目前尚未知明确且可靠的报告,如有条件,可选择非人身所在国家品牌的手机。

ps:本人并非某些独立支持者,同大众一样,憎恨着分裂民族的犯罪分子!和大家一样,热爱祖国!

HUAWEI harmonyOS与XiaoMI的 MIUI 等厂商存在着与网信机构合作的风险,并且这种风险目前来看越来越大,操作系统层面来看,整合所谓”反诈系统”几乎已经是箭在弦上的事情。是否会有硬件级别的监控和审计,目前尚无明确证据。

买手机最好买知名度大的品牌,较热门的机型,这样在刷机时可以方便的找到官方的 twrp 和知名的 ROM 包,如魔趣LineageOScrDroidResurrection RemixPixelExperience,grapheneos等。如果是较冷门的品牌,官方可能没有提供 ROM,只能在网上自行寻找个人改造过的 twrp 和上述 ROM 包的 unofficial ROM,搜索的方式一般为手机的代号+ROM。这种个人改造版本的安全性比较难说,而且还可能有更多的 bug。也有可能你翻遍全网,也找不到冷门机型能用(指好用的、非硬件提供商的官方 ROM)的 twrp 和 ROM。硬件方面,一般推荐买高通骁龙的 cpu,不要买联发科的,因为更多 ROM 的版本都是适配高通硬件的。

首先需要安装 linux 上的安卓工具包

sudo pacman -S android-tools

解锁 bootloader

再次提醒要购买或使用有可能解锁 bootloader 的手机品牌。一般来说像小米这种品牌,官方会提供解锁 bootloader 的途径和工具,但是这些工具基本只能在 windows 下用。这时候你就只能用一台 windows 操作,或者使用虚拟机。

除此之外,如果你能获取,或通过很 hack 的方式拿到 bootloader 的解锁码,那么也可以使用 adb 在 fastboot 模式下进行解锁。

$ adb reboot bootloader #手机先链接电脑,重启到fastboot
$ fastboot oem unlock xxxxxxx #在fastboot模式下解锁,要加上正确的bl码才能解锁,否则会报错
FAILED (remote: 'check password failed!')
fastboot: error: Command failed

刷入 twrp 并进行刷机

没有官方 twrp 的设备,可以在unofficialtwrp查看下是否有。

如果没有相关信息有几个论坛和网站可以看看

一般 twrp 的版本和 ROM 包有对应关系,刷机前先确认你的两个版本是兼容的,否则刷机过程可能报奇怪的错误,如 unable to mount /system

去下载你机型对应的 twrp。在官网搜索你的机型,下载。如果没有看到你的机型说明官方不支持,你需要自行搜索别人修改的版本。将手机连接电脑,注意要连到 USB2.0 的接口,否则可能有兼容性问题。

让手机进入 fastboot 模式,在电脑打开终端,执行

fastboot flash recovery ./path/of/your-twrp.img

看到终端执行完毕的时候,就可以让手机重启了。这里注意,执行fastboot reboot可以重启,但是许多设备会在首次启动时自动覆盖替换你刷入的自定义 recovery,这样直接重启会报错不是官方系统等类似信息。为防止这种情况,在手机上通过硬件按键重启进入 recovery,TWRP 将给 ROM 打 patch,以防止 ROM 替换 TWRP。

剩下的步骤就是普通的进入 twrp,双清,刷机即可。

有时双清或者进入 twrp 可能看到报错,用高级清理,从 ext4 改一下格式,再改回 ext4 可能就解决了

更多命令:

$ adb shell #打开adb shell
$ adb root #在手机已经root的情况下打开root权限的adb shell

解锁 root 权限

使用 Magisk 以解锁 root 权限。在其官方 release 界面下载 Magisk apk 文件,将其重命名为.zip 后缀。然后将其拷贝到手机中,最后进入 twrp 刷入此 zip 包即可。

有关华为设备

如果你没有在 18 年华为关闭 bl 锁码申请前拿到密码,那刷机在现在将变得基本不可能,尤其是近一年左右的新设备。

老一些的设备可以尝试一下如下方法。

下载 DC-unlocker 花四欧元,下载到电脑上检测设备,登陆,然后尝试解锁读取 bl 码。不是所有设备都能成功,有些机型虽然在其支持列表里,也没有成功。流程大致可以参考这个。查到的原因是安卓 8 之后某个安全补丁后,DC unlocker 已经不能读到 bl 码。看 DC 之后的更新能否解决这个问题吧。

还有另一个办法是先降级,然后在用 DC 解锁。通过 Firmware Finder 降级的方式,经过尝试后也无法成功,拿不到检测的更新了,据说是 EMUI8.0.0.129 后封死了其他渠道回滚。资料 1资料 2资料 3

淘宝卖码的反馈华为较新机型无法解锁拿到 BL。

还有一个自行拿十六进制里 bl 码的教程,前提是必须先拿到 root,这在新机型上基本也不可能了。旧机型可以尝试。在 linux 上检查十六进制可用这个软件Bless

最后有 github 项目PotatoNV可以参考,其声称可以解锁部分机型的 bootloader。Linux 下的版本:PotatoNV-crossplatform

IP 泄露和定位泄露往往是成对的。近些年高精度 ip 定位的出现使 ip 暴露更加危险。数据的起始点依然是手机,假设你正在家中用手机链接家庭 wifi,同时手机的某些恶意应用拥有 GPS 权限,那这些恶意应用即可上传你的 ip 和 GPS 定位数据对到服务器进行汇总,以备后用。此类恶意应用在中国的各大互联网公司是非常普遍的存在。除了这种方法,可以肯定的是还有更多高精度 ip 定位手段。所以保护真实 IP 是非常重要的,可以考虑使用全局代理隐藏 ip。

如果不使用全局代理,而使用分流的方式,则需要更加小心,一些意想不到的点会暴露你的真实 ip。如在查看邮箱邮件时,如果选择显示其中的图片,则可能暴露真实 ip,详见此报告。除此之外,在一些成对通讯的软件中,也有可能暴露 ip,如 qq 视频暴露 ip 的报告

除去 GPS 和 ip 定位,通过移动蜂窝数据塔和 IMSI 捕捉器也可以轻松进行手机定位,除此之外还可以实现中断电话,短信拦截、呼叫重定向等功能。

总之,手机是一个非常不安全的设备。

关于专有软件前文已经给出详细的链接解释,绝大多数场景下,你也可以将其简单理解为不发布源代码的软件。如手机中的众多软件如微信、支付宝,钒渣中心app等,PC 电脑中的众多软件如 360 卫士、微软 Office 等。它们是个人隐私的最大威胁。

有很多使用者认为不赋予这些专有软件所申请的各个权限,即可安全使用,这种想法是非常幼稚的。只要这些专有软件可以联网,那么他们就可以记录并上报各种用户使用软件产生的数据以及元数据。同时,个人手机本身就是一个漏洞百出的设备,有非常多的手段可以获取到个人隐私的各类信息。

关于元数据,这里进行更详细的解释。对比与普通的数据,如聊天记录,本机存储的文件等等,元数据没有具体的数据内容,而是记录这些数据相关的其他信息,如通讯在什么时间进行,设备的开关机时间是何时,手机用户在哪个时间段与何人进行通讯,用户何时打开了微信,在微信中使用了什么样的功能等等。这些元数据相较于实际数据看似价值更低,但是它们依然威力无穷,可以使威权政府的监控机构轻松获取一个自然人的相关信息。

我们建议读者使用相关专有软件的开源替代产品,如果你使用安卓手机,则可以安装F-Droid 开源应用商店,并在其中寻找并安装各种开源软件。如果因为现实原因必须使用这些专有软件(如在中国,不使用微信或支付宝提供的健康码功能将寸步难行),那么使用一个单独的设备安装这些专有软件也许是目前的最佳选择。


专有软件自身的危害不仅在于它极大的威胁了个人的隐私和安全,更重要的,它为其他人施加了必须使用的压力,这是罪恶且不人道的。每个人应该有自由对自己所需要使用的软件进行选择的权利,而不是被迫要求必须要安装和使用某个软件。声称自己是”每个人必须要安装和使用”的软件和机构,往往蕴含着罪恶的目的。


除了专有软件本身之外,另外一种我们定义为专有服务的事物也在近些年发展的越来越迅速。专有服务一般不以软件的形式安装在本地设备,而是通过云服务的方式进行使用的提供。如微软的浏览器端 Office、各类云协作,云计算服务、语音,面部,指纹识别服务等等。所有的专有服务,使用者都无法得知它们的服务到底是如何进行和运算的,这使得使用者无法确保这些专有服务获取到的个人数据仅用于正当用途。最可怕的部分是指纹、面部以及语音特征的泄露和被滥用,因为对于绝大多数人来说,密码是可以更改的,语音特征、面部特征以及指纹却几乎永远无法更改。