[英]SElinux Android message interpretation
我无法理解我在我的 android 应用程序上收到的这条消息。 家里有高手吗?
type=1400 audit(0.0:2233): avc: denied { create } for name="access_control.new_commit.cv" scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:object_r:fuse:s0:c512,c768 tclass=fifo_file permissive=0
给定的 SELinux 违规:
type=1400 audit(0.0:2233): avc: denied { create } for name="access_control.new_commit.cv" scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:object_r:fuse:s0:c512,c768 tclass=fifo_file permissive=0
下面我将尝试对上述违规的重要部分进行解释:
denied { create }
:操作权限状态:请求/执行的拒绝权限。 在这种情况下,它是一个创建操作。 SELinux 拒绝执行创建目录/文件操作的权限。
name="access_control.new_commit.cv"
: Target name : 您的应用程序可能试图创建的目标名称(在本例中为文件/目录名称)。
scontext=u:r:untrusted_app:s0
: Source Context :此安全违规的源上下文。 这表明哪个域/进程正在尝试执行创建功能。 此处, untrusted_app
应用程序是由 zygote 启动的应用程序
tcontext=u:object_r:fuse:s0
: Target Context :目标资源(在本例中为文件)的安全上下文。 在这里,源试图在已被拒绝的Fuse 文件系统中创建文件。
tclass=fifo_file
: Target Class :目标的类。
一句话,SELinux拒绝了untrusted_app
在fuse
create
access_control.new_commit.cv
文件的权限。
从 Google 来源,检查 SEPolicy 文件untrusted_app.te权限是如何被拒绝的。
注意:如果您对答案有任何建议,请告诉我。
根据验证 SELinux | Android 开源项目,留言:
type=1400 audit(0.0:2233): avc: denied { create } for name="access_control.new_commit.cv" scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:object_r:fuse:s0:c512,c768 tclass=fifo_file permissive=0
关键信息是:
Action
:创造Actor
= scontext
= source context
: untrusted_appObject
= tcontext
= target context
:保险丝
object_r
= object read
?Result
= tclass
= target class
: fifo_file =FIFO 文件permissive
= permissive mode
: 0 -> NOT permissive mode
翻译成人类可读的句子:
untrusted_app想要为保险丝创建一个fifo_file
(但是Android SELinux的强制模式在没有权限的情况下停止它,所以你看到上面的logcat日志信息)
我在这里找到了一个有趣的页面,以探讨“ avc:被拒绝”问题。
https://wiki.gentoo.org/wiki/SELinux/Tutorials/Where_to_find_SELinux_permission_denial_details
我可以补充一点,在错误消息上运行 audit2allow 将为您提供有关如何更新 untrusted_app.te 文件的建议。
将 dmesg 转储到文本文件:
dmesg > /sdcard/dmesg.txt
cat dmesg.txt | grep avc | audit2allow
在这种情况下会给你以下结果:
#============= untrusted_app ==============
allow untrusted_app fuse:fifo_file create;
将此行添加到 untrusted_app.te 并重建 Android 内核!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.