android12 aosp去除root特征
文章最后更新时间为:2024年08月13日 15:08:50
网上关于aosp的修改都是基于android8或者android10,对于android12来说有一些细微的变化,这里记录下编译android12 的aosp,并且去除其root特征。
编译过程和环境完全基于之前的文章: https://saucer-man.com/android/986.html
修改test-keys为release-keys
在以下几个系统属性中会出现test-keys的特征,这也会导致一些检测软件认为系统是root的
ro.system.build.fingerprint
ro.system.build.tags
ro.build.display.id
ro.build.tags
下面将test-keys修改为正常系统才有的的release-keys
1./build/make/core/sysprop.mk
将下面代码中的dev-keys和test-keys都替换成release-keys,修改前
ifeq ($(DEFAULT_SYSTEM_DEV_CERTIFICATE),build/make/target/product/security/testkey)
BUILD_KEYS := test-keys
else
BUILD_KEYS := dev-keys
endif
修改后
ifeq ($(DEFAULT_SYSTEM_DEV_CERTIFICATE),build/make/target/product/security/testkey)
BUILD_KEYS := release-keys
else
BUILD_KEYS := release-keys
endif
2.build/core/config.mk
在aosp源码根目录执行下面shell命令,生成release key,在用户home目录下
subject='/C=US/ST=California/L=Mountain View/O=Android/OU=Android/CN=Android/[email protected]'
mkdir ~/.android-certs
for cert in bluetooth cyngn-app media networkstack platform releasekey sdk_sandbox shared testcert testkey verity; do \
./development/tools/make_key ~/.android-certs/$cert "$subject"; \
done
将生成的releasekey.pk8
和releasekey.x509.pem
放在build/target/product/security
目录下,然后修改build/core/config.mk
修改前
ifdef PRODUCT_DEFAULT_DEV_CERTIFICATE
DEFAULT_SYSTEM_DEV_CERTIFICATE := $(PRODUCT_DEFAULT_DEV_CERTIFICATE)
else
DEFAULT_SYSTEM_DEV_CERTIFICATE := build/make/target/product/security/testkey
endif
修改后
ifdef PRODUCT_DEFAULT_DEV_CERTIFICATE
DEFAULT_SYSTEM_DEV_CERTIFICATE := $(PRODUCT_DEFAULT_DEV_CERTIFICATE)
else
DEFAULT_SYSTEM_DEV_CERTIFICATE := build/make/target/product/security/releasekey
endif
修改su为xu
1./system/extras/su
文件夹的名称从su修改为xu,然后修改该文件夹下Android.mk文件中su修改为xu
2.frameworks/native/cmds/dumpstate/DumpstateUtil.cpp
中,/system/xbin/su
修改为 /system/xbin/xu
3.将下面几个文件中的 /system/xbin/su
修改为 /system/xbin/xu
4.system/core/libcutils/fs_config.cpp
中 system/xbin/su
修改为 system/xbin/xu
5.build/make/target/product/base_system.mk
中su
修改为xu
验证
修改完上面的步骤,然后编译安装即可,先测试下xu
命令和release-keys
有没有生效
最后用hunter来测试下