使用 termux 从完整OTA包提取boot镜像
即可在存储空间的Documents文件夹中找到init_boot.img。
以上示例中init_boot.img为8MiB,总下载大小1.7MiB,用时不到一分钟。
pkg install python
pip install https://github.com/5ec1cff/payload-dumper/archive/refs/heads/master.zip
payload_dumper --out /sdcard/Documents --partitions
init_boot https://dl.google.com/dl/android/aosp/husky-ota-ud1a.230803.022.b1-13ff7dfb.zip即可在存储空间的Documents文件夹中找到init_boot.img。
以上示例中init_boot.img为8MiB,总下载大小1.7MiB,用时不到一分钟。
Forwarded from 陰角Anon與陽角Soyo的樂隊革命
app-release.apk
11.1 MB
Forwarded from 陰角Anon與陽角Soyo的樂隊革命
app-release.apk
12.8 MB
Forwarded from 陰角Anon與陽角Soyo的樂隊革命
app-release.apk
12.2 MB
Forwarded from 陰角Anon與陽角Soyo的樂隊革命
关于部分本地模块成功安装后实际未刷入的说明
直接安装脚本已于4年前淘汰,在v20.4后应该替换为调用magisk内置安装函数的安装脚本,如果模块开发者坚持不更换脚本使用官方安装流程,那么适配magisk内部行为变化是开发者的责任。
另外,通过命令行安装或者在线更新模块强制执行官方安装流程,仅本地安装需要开发者更新模块安装脚本。
https://github.com/topjohnwu/Magisk/blob/master/scripts/module_installer.sh
直接安装脚本已于4年前淘汰,在v20.4后应该替换为调用magisk内置安装函数的安装脚本,如果模块开发者坚持不更换脚本使用官方安装流程,那么适配magisk内部行为变化是开发者的责任。
另外,通过命令行安装或者在线更新模块强制执行官方安装流程,仅本地安装需要开发者更新模块安装脚本。
https://github.com/topjohnwu/Magisk/blob/master/scripts/module_installer.sh
GitHub
Magisk/scripts/module_installer.sh at master · topjohnwu/Magisk
The Magic Mask for Android. Contribute to topjohnwu/Magisk development by creating an account on GitHub.
Forwarded from 陰角Anon與陽角Soyo的樂隊革命
app-release.apk
10.8 MB
旧式 SAR 设备,特征是无 RamDisk,根目录为 /dev/root 由内核直接挂载,升级到不再支持旧式 SAR 的新Android版本,第三方ROM有两种选择:
1. 切换到现代的 2SI 模式
2. 保持旧式 SAR 模式
对于情况1,很多第三方ROM没有把 skip_initramfs 标志从内核参数过滤掉,导致 magisk 依然识别为旧式 SAR 从而无法开机。
在近几个版本,magisk完全忽略skip_initramfs标志,通过判断RamDisk是否含有2SI相关特征选择 2SI 或旧式 SAR 模式。但是,
对于情况2,RamDisk也可能存在并且符合2SI特征。因为它实际上不使用,所以第三方ROM可能继承了AOSP内容而不是空的。
最终,我们认为没有简单的启发式方法判断设备实际采用哪种模式。决定在正式版本回退对带 skip_initramfs 内核参数2SI设备的支持,恢复旧行为。注意,这些行为改变均不影响标准设备,仅第三方ROM可能受到影响。
下个大版本,magisk将在修补boot时检测/dev/root并写入配置文件,取消在开机时猜测的做法。
1. 切换到现代的 2SI 模式
2. 保持旧式 SAR 模式
对于情况1,很多第三方ROM没有把 skip_initramfs 标志从内核参数过滤掉,导致 magisk 依然识别为旧式 SAR 从而无法开机。
在近几个版本,magisk完全忽略skip_initramfs标志,通过判断RamDisk是否含有2SI相关特征选择 2SI 或旧式 SAR 模式。但是,
对于情况2,RamDisk也可能存在并且符合2SI特征。因为它实际上不使用,所以第三方ROM可能继承了AOSP内容而不是空的。
最终,我们认为没有简单的启发式方法判断设备实际采用哪种模式。决定在正式版本回退对带 skip_initramfs 内核参数2SI设备的支持,恢复旧行为。注意,这些行为改变均不影响标准设备,仅第三方ROM可能受到影响。
下个大版本,magisk将在修补boot时检测/dev/root并写入配置文件,取消在开机时猜测的做法。
Play Integrity API 更新
对所有开发者:设备级完整性必须具有硬件支持的判定。
对新开发者或主动加入的开发者:基本级完整性必须具有硬件支持的判定,可以是解锁或自签名bootloader。强完整性安全更新必须在一年以内。明年5月对所有开发者强制执行。
以上仅对Android 13 及更高版本有效。
简单来说,Android 13+设备,原强完整性现在只是设备级完整性,要获得强完整性还需要一年内安全更新。无硬件密钥认证的设备连基本完整性都没有。
有Google根证书的密钥认证 → 基本
锁定bootloader → 设备
安全补丁一年内 → 强
https://developer.android.com/google/play/integrity/improvements
对所有开发者:设备级完整性必须具有硬件支持的判定。
对新开发者或主动加入的开发者:基本级完整性必须具有硬件支持的判定,可以是解锁或自签名bootloader。强完整性安全更新必须在一年以内。明年5月对所有开发者强制执行。
以上仅对Android 13 及更高版本有效。
简单来说,Android 13+设备,原强完整性现在只是设备级完整性,要获得强完整性还需要一年内安全更新。无硬件密钥认证的设备连基本完整性都没有。
有Google根证书的密钥认证 → 基本
锁定bootloader → 设备
安全补丁一年内 → 强
https://developer.android.com/google/play/integrity/improvements
Magisk alpha
Play Integrity API 更新 对所有开发者:设备级完整性必须具有硬件支持的判定。 对新开发者或主动加入的开发者:基本级完整性必须具有硬件支持的判定,可以是解锁或自签名bootloader。强完整性安全更新必须在一年以内。明年5月对所有开发者强制执行。 以上仅对Android 13 及更高版本有效。 简单来说,Android 13+设备,原强完整性现在只是设备级完整性,要获得强完整性还需要一年内安全更新。无硬件密钥认证的设备连基本完整性都没有。 有Google根证书的密钥认证 → 基本 锁定bootloader…
补充一点,文档提了会自动检测认证密钥被大规模使用的情况(有新 keybox 后测 Play Integrity 就是自己送,但要是不用,这keybox又有什么意义呢
Forwarded from 陰角Anon與陽角Soyo的樂隊革命
app-release.apk
11.3 MB
KeyAttestation-v1.8.3.apk
1.2 MB
支持通过shizuku或sui进行认证
支持加载全部格式的证书链,包括PEM,DER,pkipath和PKCS 7
支持导入 keybox 作为认证密钥
支持显示认证是否为远程配置的密钥
支持显示新的远程配置信息字段
支持keymint 4.0
更新内置的吊销列表
更新提示信息和翻译
以下功能需要shizuku
支持认证设备唯一标识符如 IMEI 和序列号
Android14+支持测试远程密钥配置功能,Android12-13需要root启动的shizuku才能测试
android14+支持自定义远程配置服务器主机名
支持三星Knox认证,需要root启动的shizuku
GitHub源代码已推送,7天后正式发版,等待错误报告和翻译贡献
支持加载全部格式的证书链,包括PEM,DER,pkipath和PKCS 7
支持导入 keybox 作为认证密钥
支持显示认证是否为远程配置的密钥
支持显示新的远程配置信息字段
支持keymint 4.0
更新内置的吊销列表
更新提示信息和翻译
以下功能需要shizuku
支持认证设备唯一标识符如 IMEI 和序列号
Android14+支持测试远程密钥配置功能,Android12-13需要root启动的shizuku才能测试
android14+支持自定义远程配置服务器主机名
支持三星Knox认证,需要root启动的shizuku
GitHub源代码已推送,7天后正式发版,等待错误报告和翻译贡献
目前已知的远程配置服务器列表
Google官方: remoteprovisioning.googleapis.com
Google测试: staging-remoteprovisioning.sandbox.googleapis.com
石墨烯反代: remoteprovisioning.grapheneos.org (中国大陆可用)
Google官方: remoteprovisioning.googleapis.com
Google测试: staging-remoteprovisioning.sandbox.googleapis.com
石墨烯反代: remoteprovisioning.grapheneos.org (中国大陆可用)
Magisk alpha
KeyAttestation-v1.8.3.apk
问题报告区
已知问题:
ID认证失败的错误信息会写出原因,比如设备没有MEID,在菜单取消 MEID 勾选即可。
显示没有认证密钥,请先点重置按钮,部分小米设备需要app打开3秒后才能工作。如果依然报错,通过 远程密钥配置测试 检查 rkp 是否正常。
如果使用shizuku选项显示灰色,检查ksu配置,如果在更换为magisk后依然显示灰色,请报告问题。
导入认证密钥后证书无变化,是因为 TrickyStore 劫持了证书,不是本应用的问题。
导入认证密钥和远程密钥配置测试,这两个功能会区分TEE和strongbox,是否勾选了 使用安全模块 会影响行为,但远程密钥配置测试时如果strongbox不支持RKP,会自动回退到TEE。
已知问题:
ID认证失败的错误信息会写出原因,比如设备没有MEID,在菜单取消 MEID 勾选即可。
显示没有认证密钥,请先点重置按钮,部分小米设备需要app打开3秒后才能工作。如果依然报错,通过 远程密钥配置测试 检查 rkp 是否正常。
如果使用shizuku选项显示灰色,检查ksu配置,如果在更换为magisk后依然显示灰色,请报告问题。
导入认证密钥后证书无变化,是因为 TrickyStore 劫持了证书,不是本应用的问题。
导入认证密钥和远程密钥配置测试,这两个功能会区分TEE和strongbox,是否勾选了 使用安全模块 会影响行为,但远程密钥配置测试时如果strongbox不支持RKP,会自动回退到TEE。