当前位置:   article > 正文

Android原生检测Selinux的三种方法_android selinux 检测

android selinux 检测

本文介绍 3 种检测 Android 设备 SELinux 状态的方法, Java 层检测Selinux已经没有太多意义,因为不是很靠谱,随便一个hook代码就能绕过,所以我要告诉你如何在 C 层完成检测。这几种方法在效率和抵抗mock SELinux State 的技术方面都不相同,因此在使用之前你需要知道每种方法的背景及其局限性。

在这里插入图片描述

这三种检测方法分别为:

  • 读取build.selinuxAndroid 属性
  • 读取boot.selinuxAndroid 属性
  • 读取enforce文件

为了更容易看懂,我会在每个方法中,把使用的代码将和示例一起写出来。为了更容易理解,本文中的示例代码会尽可能简单,有测试截图的话我也会贴出来并截取屏幕截图。我这里用的测试程序简单,从 JNI 调用一个随机数,在按下按钮时显示该随机数。

好了,我们开始吧。

Android Build属性

前面两种方法都是读取的属性,原理相同,所以就放在一起说了。

首先要搞懂这些 android build属性是干什么的?

你可以理解为一个文件,这个文件里面以字符串键值对的形式保存有关当前构建和其他系统属性的信息。不过这里有一点要注意的是,A设备存在的属性B设备不一定有,比如一些厂商定制的属性,又或者厂商出厂时对属性做了定制。</

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/962007
推荐阅读
相关标签
  

闽ICP备14008679号