https://forums.developer.huawei.com/forumPortal/en/home
华为开发者论坛置顶帖子显示华为系统在23年9月1日支持了签名欺骗功能。
MicroG于23年9月15日实现了华为版签名欺骗功能。
https://github.com/microg/GmsCore/blob/master/fake-signature/src/huawei/aidl/com/huawei/signature/diff/ISignatureService.aidl
MicroG同时还实现了第三种签名欺骗系统。即other-signature以及AAAA*和NAVI*元数据。格式是 sha256(<package name>)-sha256(<signing certificate>)
https://github.com/microg/GmsCore/issues/2037
另外,LineageOS 已经官方支持 MicroG 签名欺骗。
https://github.com/LineageOS/android_frameworks_base/commit/6b793fa98a40dd6c2d6eb02988161ed123439428
100~399字重现在被砍了,原因是为了不支持可变字体的游戏引擎能够默认400字重而不是100字重,砍了400以下字重。
https://github.com/notofonts/noto-cjk/commit/07fb9c9a48ec63ba92f7bfd2608ca6fbb01940f1
Windows 11 允许第三方应用程序使用基于虚拟化的安全飞地
https://aka.ms/VBSEnclavesDevGuide
UAC只有两个模式:始终通知和允许绕过
https://devblogs.microsoft.com/oldnewthing/20160816-00/?p=94105
https://news.microsoft.com/zh-cn/腾讯应用宝与-microsoft-store-达成合作,windows-可直接运行移动应/
Читать полностью…修复方案
修改fuse,将传入文件路径与底层文件的路径均按照常规方式转换为小写,如果字符串不相等,返回文件不存在。
因为媒体存储设备是apex模块,所以修复后可以立即由play商店推送,无需等待OTA。
修复后,自测方法中仅方法2继续有效,方法1不会发生变化。
方法3两文件名不再能相互访问,但也不能同时存在。
安全警告,Android GKI内核已启用Unicode支持
提交1和提交2为内核添加了Unicode支持。在此之前字符串相同是逐字节比较,忽略大小写比较仅处理26个标准字母。
现在会先执行Unicode规范化,并且去除默认可忽略代码点后再执行Unicode比较,大小写转换也按照Unicode规范执行,与非Unicode有较大行为变化。
/*
* Two normalization forms are supported:
* 1) NFDI
* - Apply unicode normalization form NFD.
* - Remove any Default_Ignorable_Code_Point.
* 2) NFDICF
* - Apply unicode normalization form NFD.
* - Remove any Default_Ignorable_Code_Point.
* - Apply a full casefold (C + F).
*/
/storage/emulated/0/Android/data/com.google.android.gms
,由于 emulated 是 fuse,所以从0开始(包括),可以在任意位置插入默认可忽略代码点,内核自动删除它们。Android14 自带 Cronet 原生支持 HTTP3
https://developer.android.com/reference/android/net/http/QuicOptions.Builder
okhttp虽然用了,但仅仅是测试代码,没有纳入API的计划。Cronet和okhttp的配合似乎没多大希望?
https://github.com/square/okhttp/pull/8302
cs.android.com 分支更新情况
main
https://r.android.com/2686607
2023-08-01 23:22 Merge "Stop supermanifet updates to main (and the master copy-config)." into main
master
https://r.android.com/2771908
2023-10-05 02:51 Turn off superproject updates for master branch.
包含在搜索结果中
main:main
live
包含在搜索结果中,不能切换分支和tag
感觉Google有什么大病
Android 15 beta1 支持 cjk 全字重
https://issuetracker.google.com/issues/186033995
目前还是半成品,只能在userdebug构建的Android14系统上使用。由于文档建议客户端是大屏设备,并且不要求运行Android系统,最终目标应该是在PC上显示app,有和WSA相同的原生操作体验。
Читать полностью…Android官方支持多屏协同,可以让app在远程客户端上显示,示例项目:
https://cs.android.com/android/platform/superproject/+/main:development/samples/VirtualDeviceManager/
chrome 122 可以关闭 JIT 了
相关阅读 https://microsoftedge.github.io/edgevr/posts/Super-Duper-Secure-Mode/
https://github.com/Chainfire/injectvm-binderjack/blob/master/README.md
SUI 和 LSPosed 的实现原理
// 现在看来,用cmd su替换su也不是多麻烦吧
小知识:保存到 AccountManager 服务的账号可以在清空应用数据后留存。Google、Microsoft、Amazon、Twitter、Facebook都支持这一功能,GitHub和Telegram虽然在 设置-账号 有显示,但不支持。
Читать полностью…termux 已恢复更新,使用自定义链接器绕过w^x限制,因此静态构建的文件无法执行。
termux 通过手动加载文件到内存执行,达到了仅需 execute 权限的目的。
背景知识:执行文件在不触发域转换时还需要 execute_no_trans 权限,Android 仅限制了这一个权限,没有限制 execute 权限,因为 dlopen 需要它。虽然dlopen也是一种w^x违规,但Android目前只是记录警告日志,没有禁止。
另外:termux 已有3个版本,GitHub上的Android5+和Android7+,以及Play上的Android11+。
现在apk还会塞入版本控制系统的ID号,即git的HEAD sha
https://cs.android.com/android-studio/platform/tools/base/+/ddc562b75e6d77e6e40efb8fd6366c220b876298
在查看最新代码的情况下能切换分支和标签
https://cs.android.com/android/_/android/platform/frameworks/base
https://cs.android.com/android/_/android/platform/frameworks/native
自测方法
方法1,需要电脑 adb shell zcat /proc/config.gz | grep UNICODE
如果存在 CONFIG_UNICODE=y 表示受影响。
方法2,不需要电脑,需要终端应用ls /storage/emulated/0/Android/data/
复制以上命令,因为在0的后面有一个零宽空格。如果文件夹正常列出,表示受影响。如果显示找不到文件,表示不受影响。
如果显示没有权限,表示零宽空格丢失,可能是终端应用行为,请更换其它终端测试。
REQUIRE_SECURE_ENV 标志说明
https://support.google.com/googleplay/android-developer/answer/13609005
非常乐,感觉…不如加固,毕竟
没有任何技术功能可以阻止设备端 Android 容器应用加载您的应用Читать полностью…
Windows / Office 正式版下载
https://massgrave.dev/genuine-installation-media
从官方更新服务器自定义安装 Windows
https://uupdump.net
从官方更新服务器自定义安装 Office
https://github.com/YerongAI/Office-Tool/releases
(itellyou 还是算了吧,有登录墙
在WSA死掉后,Google的PC Android模拟器有了 houdini 支持。
基于Android 14,需要Google账号,和WSA一样依赖Windows Hypervisor Platform,但只需要 Windows 10 (v2004)。
用户版的Play完整性保护级别是特供的虚拟级,不能侧载,不能打开非白名单应用。下载:https://play.google.com/googleplaygames
开发者版的Play完整性保护级别是空,但没有root,可以开启adb安装运行任意应用。目前暂无root手段。下载:https://developer.android.com/games/playgames/emulator
与远程设备配对使用 CompanionDeviceManager 建立安全传输通道。在user构建的系统上,使用密钥证明验证远程Android客户端。
这是密钥证明的官方验证实现:
https://cs.android.com/android/platform/superproject/+/main:frameworks/base/services/core/java/com/android/server/security/AttestationVerificationPeerDeviceVerifier.java
系统调用清单
https://www.chromium.org/chromium-os/developer-library/reference/linux-constants/syscalls/
错误号清单
https://www.chromium.org/chromium-os/developer-library/reference/linux-constants/errnos/
官方通用系统调用清单
https://github.com/torvalds/linux/blob/master/include/uapi/asm-generic/unistd.h
Android系统调用清单
https://cs.android.com/android/platform/superproject/+/main:bionic/libc/SYSCALLS.TXT
Android libc符号清单
https://cs.android.com/android/platform/superproject/+/main:bionic/libc/libc.map.txt
https://android-review.googlesource.com/q/topic:%22unlocked-only-storage%22
正在开发的新功能,可能会在Android 15上线
在现有的 /data/user 凭据加密存储和 /data/user_de 设备加密存储外,新增 /data/storage_area 锁屏加密存储。
该存储空间内的文件,只能在解锁屏幕后打开。屏幕锁定期间无法打开文件,应用进程只能使用现有文件描述符。