Android源代码中自定义fingerprint特征,由于AOSPfingerprint特征会被某些应用检测为不安全的系统环境,所以需要修改fingerprint值模拟正常的环境

一、环境准备

(1) Android系统源码编译环境(Android 9.0)
(2) 开发环境(SubLime Text3)

二、概述

使用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

三、修改fingerprint特征

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的赋值

经分析fingerprint的赋值过程可知,BUILD_FINGERPRINT的赋值影响着fingerprint的值,所以只要修改BUILD_FINGERPRINT的值就行了。BUILD_FINGERPRINT的值有几个部分组成,修改自己感兴趣的部分就行了

修改BUILD_VERSION_TAGS

修改TARGET_BUILD_VARIANT -> 在编译源码时,lunch期间确定

修改BF_BUILD_NUMBER

修改BUILD_ID
PRODUCT_BRAND 、TARGET_PRODUCT、TARGET_DEVICE -> 在编译源码时,lunch期间确定,看具体编译哪个版本的系统,来决定修改什么样的[产品].mk文件

四、编译

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

五、结果

使用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.fingerprint的值没有修改是因为vendor.img镜像不是我们生成的,所以对ro.vendor.build.fingerprint值的修改才没有生效。

关于设备驱动文件的下载和使用可以看以往的文章

六、编译vendor.img

后续文章更新…


asjhan for Android reverse

自定义fingerprint特征相关推荐

  1. 卷积神经网络特征图可视化(自定义网络和VGG网络)

    借助Keras和Opencv实现的神经网络中间层特征图的可视化功能,方便我们研究CNN这个黑盒子里到发生了什么. 自定义网络特征可视化 代码: # coding: utf-8from keras.mo ...

  2. gbdt 回归 特征重要性 排序_gbdt、xgb、lgb、cat面经整理——from牛客

    注意,下文的原始的gbdt是以sklearn中的gbdt的实现为例子来阐述的,因为gbdt的改进版本有很多,为了叙述方便,使用这个最为人所知的实现来描述. 你有自己用过别的模型然后调参之类的吗?能说一 ...

  3. 影像组学特征的生物学意义

    影像组学为从影像成像中提取临床相关信息提供了强有力的工具.影像组学可以通过提取高通量特征来预测患者的预后,使用大型训练样本来探究图像特征和疾病状态之间的微妙关系.但是,基于数据驱动的影像组学本质上无法 ...

  4. LabVIEW目标对象分类识别(理论篇—5)

    目录 1.训练过程(创建分类器) 1.1.目标对象数据样本 1.2.目标对象分类器配置 1.3.目标对象分类器训练 1.4.目标对象分类器输出和评估 2.分类与识别 目标对象分类是指将未知样品的形状. ...

  5. 【安全实战】红队攻防技术

    前言 希望能够面向红蓝双方进行讲解,在进行一些攻击方式分析时,同样也会引起防守方对于攻击的思考.红蓝对抗的意义也正是在这种持续的攻击下不断寻找防御的平衡点,故 未知攻,焉知防. ​ 本文仅做安全研究作 ...

  6. 条件随机场 python_用条件随机场做网络小说命名实体识别

    一直想用统计学习方法来改善拨云搜索,这次先在命名实体上小小尝试一下. 线性链条件随机场 对于无向图中的节点,定义一组特征函数,使其状态仅受邻近节点和观测序列的影响. 在标注任务中,节点只有前后两个邻近 ...

  7. 兄dei,Python数据竞赛和5万现金奖励了解一下

    " 少年,我看你骨骼精奇,是万中无一的技术奇才,维护世界和平就靠你了,我这有一个拯救世界的机会(还有50000大奖,美滋滋--),见与你有缘就免费告诉你了! " 剧情是这样展开的 ...

  8. 机器学习实践七----异常检测和推荐系统

    Anomaly detection 异常检测是机器学习中比较常见的应用,它主要用于非监督学习问题,从某些角度看, 它又类似于一些监督学习问题. 什么是异常检测?来看几个例子: 例1. 假设是飞机引擎制 ...

  9. abap开发注释快捷键_让ABAP开发者更加轻松的若干快捷键

    引言 ABAP是一种和当代编程语言在许多方面有着相当不同的编程语言.ABAP的某些方面可能会让我们奇怪,为什么它会如此复杂?而它的某些方面又是那么杰出,给予了ABAP开发者们比其它任何语言更多的便利. ...

  10. 从零开始学keras之kaggle猫狗识别分类器

    使用很少的数据来训练一个图像分类模型,这是很常见的情况,如果你要从事计算机视觉方面的职业,很可能会在实践中遇到这种情况."很少的"样本可能是几百张图像,也可能是几万张图像.来看一个 ...

最新文章

  1. wp10 android,WP10能在Android机正常用不?
  2. 爬虫python需要什么软件-学python爬虫能做什么
  3. JQuery常用知识点汇总
  4. 工作55:对v-model的理解
  5. 前端学习(2241):react打卡倒计时十五天之react出现背景
  6. 用计算机表白的数字,用数字表白
  7. vins-mono后端优化
  8. java设计模式之模板方法
  9. 面试题:判断链表是否存在环
  10. Cartographer 安装 2021.10.27
  11. OpenGL的几何变换[转]
  12. 计算机硬盘扇区修复,如何修复硬盘启动扇区
  13. html中标记pre的作用是什么,html中pre和code标签
  14. 关于微信开发者工具终端窗口不能输入字符问题
  15. R语言拟合ARIMA模型
  16. 英伟达显卡老版本驱动下载网址
  17. Windows7旗舰版SP1_32位2018.10(纯净版)
  18. PCL-ICP(IterativeClosestPoint)源码解析
  19. A段架构设计_隽语集(Business Thinking _1201)
  20. 【论文阅读】DenseCLIP: Language-Guided Dense Prediction with Context-Aware Prompting

热门文章

  1. composition api在项目中的使用总结
  2. SLAM学习-论文综述(一)
  3. linux查看ubuntu版本命令,检查Ubuntu版本号的三种方法:从终端和设置中检查及使用Neofetch...
  4. 网络计算机无法访问 没有权限,教您无法访问您可能没有权限使用网络资源怎么解决...
  5. pngimg 可以商用吗_全球6大免费商用素材网!设计师必备!
  6. 联想Lenovo拯救者 Legion R9000P 2021H 触控板失灵
  7. javaweb问题集锦: HikariPool-1 - Connection is not available, request timed out after 60001ms.
  8. win10安装CA证书服务器,分享一下win10系统安装数字证书的方法
  9. amd支持服务器内存,AMD专用内存为什么只能在AMD平台使用?与普通内存有什么区别?...
  10. Scrapy 抓取 当当图书2018畅销榜的所有图书