Android系统属性文件浅析

本文深入探讨了Android的build.prop文件及其生成过程,包括buildinfo.sh和Makefile的作用。文章阐述了属性加载的步骤,从initrd、system image到/data分区,并讨论了属性读取与设置的方法,以及在安全角度如何进行属性的修改和防御策略。同时,提到了属性作为系统服务触发器的使用方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在这里插入图片描述

Android的属性文件是Android系统攻防中重要的一环,属性中的一些只读字段(以ro开头)通常会被当作大厂的指纹而加入检测,于是如何mock和检测mock成了安全中举足轻重的知识。属性的检测有几种方案:

  • 通过java标准接口的Build类读取
  • 通过shell的getprop [属性key]的方式读取
  • 通过shell扫描getprop的方式读取
  • 通过framework c代码的android_os_SystemProperties.cpp 下的nativeget读取
  • 通过内核的libc库中的system_properties.cpp读取
  • 通过读取prop文件读取

实际上,除了上述列出的方式以外,我们还能读取的地方有很多,为什么会有那么多。熟悉朋友就会发现,上述列出来得方案,基本是从代码调用侧跟踪,一步步往下跟踪调用,就能发现上述所有得调用方式。而不管是做逆向还是做安全,要想达到更保险得目的,就要从更加根源得地方去修改或者检测,这种思维是一般做正向开发的人不具备的,而我从业之初也遇到过这个问题,一开始都是从表面上解决问题,结果都是一些皮毛,起不到实质性的作用,而最后时间花了,但是并没有结果。

不过这种思路并没有错,因为我们通常都是先看到表面,需要一步步的抽丝剥茧,才能逐渐接近真相,看到事物的本质,而这个抽丝剥茧的过程,很繁琐,但通常无法避免,道理是道理,实践是实践,时间过验

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

疯人院的院长大人

给点实际性的支持不?

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值