[英]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.