Android 8.0 SE-Linux 问题解决-untrusted_app_25

2024-02-09 20:48

本文主要是介绍Android 8.0 SE-Linux 问题解决-untrusted_app_25,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1. 关键字 avc: denied

1.1 现象

01-03 10:31:35.585148 331 331 E SELinux : avc: denied { find } for service=xxx_applock pid=5499 uid=10087 scontext=u:r:untrusted_app_25:s0:c512,c768 tcontext=u:object_r:xxx_applock_service:s0 tclass=service_manager permissive=1

1.2 具体参数
E SELinux : avc:  denied  { find } for 
service=xxx_applock 
pid=5499 
uid=10087 
scontext=u:r:untrusted_app_25:s0:c512,c768 表示:subject context : u:r:root_channel:s0 
tcontext=u:object_r:xxx_applock_service:s0 表示:target context : u:object_r:dalvikcache_data_file:s0
tclass=service_manager  表示:the object class of the target 
permissive=1 表示:permissive (1) or enforcing (0)
  1. 缺少什么权限: 缺少 find 权限
  2. 哪个te文件缺少权限: scontext=u:r:untrusted_app_25:s0:c512,c768,
  3. 具体哪个文件缺少权限: tcontext=u:object_r:xxx_applock_service:s0
  4. 什么类型的文件: class=service_manager

上述解释如下:
- avc: denied { find } for ,表示缺少 find 权限
- scontext=u:r:untrusted_app_25:s0:c512,c768,表示 untrusted_app_25.te 缺少该权限
- tcontext=u:object_r:xxx_applock_service:s0, 表示untrusted_app_25.te 缺少对 xxx_applock_service 的权限
- tclass=service_manager 权限文件类型

即总结为:untrusted_app_25.te 文件需要新增类型为service_manager 的 xxx_applock_service 的 find 权限

2. SELinux 相关设置文件

2.1 线索

线索:
- 权限文件:scontext=u:r:untrusted_app_25:s0:c512,c768
- 具体权限内容:tcontext=u:object_r:xxx_applock_service:s0
- 权限类型:tclass=service_manager

2.2 思路

在所有 untrusted_app_25.te 文件中新增如下语句

allow untrusted_app_25 xxx_applock_service:service_manager { find };

2.3 查找 te 文件

查找 untrusted_app_25.te 所在位置

root@69959bbb90c6:/home/suhuazhi/8.1/liangxiang# find system/sepolicy/ -name "untrusted_app_25.te"
system/sepolicy/prebuilts/api/26.0/private/untrusted_app_25.te
system/sepolicy/prebuilts/api/26.0/public/untrusted_app_25.te
system/sepolicy/private/untrusted_app_25.te
system/sepolicy/public/untrusted_app_25.te
2.4 修改 te 文件,添加 tclass=service_manager
  1. system/sepolicy/prebuilts/api/26.0/private/untrusted_app_25.te
allow untrusted_app_25 xxx_applock_service:service_manager { find };
  1. system/sepolicy/prebuilts/api/26.0/public/untrusted_app_25.te
allow untrusted_app_25 xxx_applock_service:service_manager { find };
  1. system/sepolicy/private/untrusted_app_25.te
allow untrusted_app_25 xxx_applock_service:service_manager { find };
  1. system/sepolicy/public/untrusted_app_25.te
allow untrusted_app_25 xxx_applock_service:service_manager { find };

3.拓展阅读

https://www.2cto.com/kf/201611/562711.html

这篇关于Android 8.0 SE-Linux 问题解决-untrusted_app_25的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/695253

相关文章

java连接opcua的常见问题及解决方法

《java连接opcua的常见问题及解决方法》本文将使用EclipseMilo作为示例库,演示如何在Java中使用匿名、用户名密码以及证书加密三种方式连接到OPCUA服务器,若需要使用其他SDK,原理... 目录一、前言二、准备工作三、匿名方式连接3.1 匿名方式简介3.2 示例代码四、用户名密码方式连接4

如何解决Druid线程池Cause:java.sql.SQLRecoverableException:IO错误:Socket read timed out的问题

《如何解决Druid线程池Cause:java.sql.SQLRecoverableException:IO错误:Socketreadtimedout的问题》:本文主要介绍解决Druid线程... 目录异常信息触发场景找到版本发布更新的说明从版本更新信息可以看到该默认逻辑已经去除总结异常信息触发场景复

IDEA中Maven Dependencies出现红色波浪线的原因及解决方法

《IDEA中MavenDependencies出现红色波浪线的原因及解决方法》在使用IntelliJIDEA开发Java项目时,尤其是基于Maven的项目,您可能会遇到MavenDependenci... 目录一、问题概述二、解决步骤2.1 检查 Maven 配置2.2 更新 Maven 项目2.3 清理本

Android学习总结之Java和kotlin区别超详细分析

《Android学习总结之Java和kotlin区别超详细分析》Java和Kotlin都是用于Android开发的编程语言,它们各自具有独特的特点和优势,:本文主要介绍Android学习总结之Ja... 目录一、空安全机制真题 1:Kotlin 如何解决 Java 的 NullPointerExceptio

CentOS 7 YUM源配置错误的解决方法

《CentOS7YUM源配置错误的解决方法》在使用虚拟机安装CentOS7系统时,我们可能会遇到YUM源配置错误的问题,导致无法正常下载软件包,为了解决这个问题,我们可以替换YUM源... 目录一、备份原有的 YUM 源配置文件二、选择并配置新的 YUM 源三、清理旧的缓存并重建新的缓存四、验证 YUM 源

VS配置好Qt环境之后但无法打开ui界面的问题解决

《VS配置好Qt环境之后但无法打开ui界面的问题解决》本文主要介绍了VS配置好Qt环境之后但无法打开ui界面的问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要... 目UKeLvb录找到Qt安装目录中designer.UKeLvBexe的路径找到vs中的解决方案资源

Linux基础命令@grep、wc、管道符的使用详解

《Linux基础命令@grep、wc、管道符的使用详解》:本文主要介绍Linux基础命令@grep、wc、管道符的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录grep概念语法作用演示一演示二演示三,带选项 -nwc概念语法作用wc,不带选项-c,统计字节数-

解决mysql插入数据锁等待超时报错:Lock wait timeout exceeded;try restarting transaction

《解决mysql插入数据锁等待超时报错:Lockwaittimeoutexceeded;tryrestartingtransaction》:本文主要介绍解决mysql插入数据锁等待超时报... 目录报错信息解决办法1、数据库中执行如下sql2、再到 INNODB_TRX 事务表中查看总结报错信息Lock

MySQL启动报错:InnoDB表空间丢失问题及解决方法

《MySQL启动报错:InnoDB表空间丢失问题及解决方法》在启动MySQL时,遇到了InnoDB:Tablespace5975wasnotfound,该错误表明MySQL在启动过程中无法找到指定的s... 目录mysql 启动报错:InnoDB 表空间丢失问题及解决方法错误分析解决方案1. 启用 inno

Linux CPU飙升排查五步法解读

《LinuxCPU飙升排查五步法解读》:本文主要介绍LinuxCPU飙升排查五步法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录排查思路-五步法1. top命令定位应用进程pid2.php top-Hp[pid]定位应用进程对应的线程tid3. printf"%