カスタム指紋機能

ソース コード内のAndroidカスタム機能。この機能は一部のアプリケーションによって安全でないシステム環境として検出されるため、通常の環境をシミュレートするには値を変更する必要があります。fingerprintAOSPfingerprintfingerprint

1. 環境整備

(1) Android システムのソースコードコンパイル環境 (Android 9.0)
(2) 開発環境 (SubLime Text3)

2. 概要

getpropコマンドを使用してfingerprint関連する属性を確認し、クエリを実行します

> getprop | grep fingerprint
[ro.bootimage.build.fingerprint]: [Android/aosp_blueline/blueline:9/PQ3A.190705.003/5600800:userdebug/test-keys]
[ro.build.fingerprint]: [Android/aosp_blueline/blueline:9/PQ3A.190705.003/5600800:userdebug/test-keys]
[ro.product.build.fingerprint]: [Android/aosp_blueline/blueline:9/PQ3A.190705.003/5600800:userdebug/test-keys]
[ro.vendor.build.fingerprint]: [Android/aosp_blueline/blueline:9/PQ3A.190705.003/5600800:userdebug/test-keys]

次のfingerprint関連プロパティが存在することが判明しました
1. ro.bootimage.build.fingerprint
2. ro.build.fingerprint
3. ro.product.build.fingerprint
4. ro.vendor.build.fingerprint

3. 指紋機能を変更する

ソース コードをAOSP検索すると、関連する値がaosp/build/make/core/Makefileファイル内に存在することがわかりますfingerprint
ro.bootimage.build.fingerprint
ここに画像の説明を挿入
ro.vendor.build.fingerprint
ここに画像の説明を挿入
ro.product.build.fingerprint
ここに画像の説明を挿入

「割り当てプロセスの分析」build/make/tools/buildinfo.sh見つかったro.build.fingerprint割り当ては、の割り当てがの値に影響を与えるため、の値を変更するだけでよいことを示しています。値はいくつかの部分で構成されています。必要な部分を変更するだけです。
ここに画像の説明を挿入
fingerprintBUILD_FINGERPRINTfingerprintBUILD_FINGERPRINTBUILD_FINGERPRINT
ここに画像の説明を挿入
修改BUILD_VERSION_TAGS
ここに画像の説明を挿入
修改TARGET_BUILD_VARIANT -> 在编译源码时,lunch期间确定
ここに画像の説明を挿入
修改BF_BUILD_NUMBER
ここに画像の説明を挿入
修改BUILD_IDここに画像の説明を挿入
PRODUCT_BRAND 、TARGET_PRODUCT、TARGET_DEVICE -> 在编译源码时,lunch期间确定,看具体编译哪个版本的系统,来决定修改什么样的[产品].mk文件
ここに画像の説明を挿入

4、コンパイル

srouce build/envsetup.sh
lunch 23 // 看具体需要编译的产品进行选择 
make -j16

5. 結果

grepコマンドを使用してfingerprint関連する特性を表示します。ro.vendor.build.fingerprint見つかった値は変更されていません。

> getprop | grep fingerprint
[ro.bootimage.build.fingerprint]: [Google/blueline/blueline:9/miui.220705.002/jhan07162220:user/release-keys]
[ro.build.fingerprint]: [Google/blueline/blueline:9/jhan.220705.002/jhan07162220:user/release-keys]
[ro.product.build.fingerprint]: [Google/blueline/blueline:9/jhan.220705.002/jhan07162220:user/release-keys]
[ro.vendor.build.fingerprint]: [Android/aosp_blueline/blueline:9/PQ3A.190705.003/5600800:userdebug/test-keys]

ro.vendor.build.fingerprintvendor.img画像が当社によって生成されたものではないため、 の値は変更されません。そのためro.vendor.build.fingerprint、値の変更は有効になりません。
ここに画像の説明を挿入
デバイスドライバーファイルのダウンロードと使用方法については、過去の記事を参照してください。
ここに画像の説明を挿入

6.vendor.imgをコンパイルします

その後の記事更新は…


asjhan for Android reverse

おすすめ

転載: blog.csdn.net/qq_35993502/article/details/125835107