日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

Android 系统添加SELinux权限

發布時間:2024/9/5 linux 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android 系统添加SELinux权限 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

CPU:RK3288

系統:Android 5.1

?

SELinux 主要由美國國家安全局開發。2.6 及以上版本的 Linux 內核都已經集成了 SELinux 模塊。

?

通過虛擬文件系統 proc 來讀寫 gpio 的方法非常受歡迎,不僅因為其省去了 hal 層、 jni 層的代碼,而且可以直接通過 adb shell 來讀寫 gpio。

在 user 版本,雖然驅動代碼中已經將節點權限設置為 777 或者 666,但是在 adb shell 中寫 gpio 時會報出權限不足的問題。

?

最快的解決辦法是將系統編譯成 userdebug 版本或者 eng 版本,也可以對系統 root。

?

下面是編譯成 user 版本的解決方法,前提是驅動已經OK。

cust_gpios 是驅動中通過?proc_mkdir 創建的目錄,relay 是通過?proc_create 創建的節點,對應一個方向為輸出 gpio

1、在 adb 中讀,沒有問題,但是寫 gpio 會報出權限不足

shell@rk3288:/proc/cust_gpios $ cat relay cat relay 1 shell@rk3288:/proc/cust_gpios $ echo 0 > relay echo 0 > relay /system/bin/sh: can't create relay: Permission denied

kenel 中打印出的錯誤信息如下

type=1400 audit(1358758415.820:7): avc: denied { write } for pid=1229 comm="sh" name="relay" dev="proc" ino=4026533065 scontext=u:r:shell:s0 tcontext=u:object_r:proc:s0 tclass=file permissive=0

解釋:

write:表示沒有 write 權限

shell:shell 中缺少權限,文件名與此相同,xxx.te

proc:proc 文件系統缺少權限

file:file 類型的文件

?

2、添加 shell 權限,scontext 對應的是 shell ,所以需要在 shell.te 最后面中添加

path:\device\rockchip\common\sepolicy\shell.te

allow shell proc:file write;

?

3、添加后編譯會報錯如下,這是因為添加了不允許的規則

libsepol.report_failure: neverallow on line 344 of external/sepolicy/app.te (or line 4313 of policy.conf) violated by allow shell proc:file { write };

需要在 app.te 中的 4313 行中不允許的規則中刪除添加的權限,用大括號括起來

path:\external\sepolicy\app.te

neverallow {appdomain -shell}

?

此時可以在 adb 來通過 proc 虛擬文件系統正常讀寫 gpio

?

4、操作 gpio 最終要有上層 apk 來讀寫,同樣寫 gpio 時,kernel 和 logcat 都會報出權限不足,解決方法與上面類似

type=1400 audit(1358758857.090:8): avc: denied { write } for pid=1208 comm="ron.gpiocontorl" name="relay" dev="proc" ino=4026533065 scontext=u:r:untrusted_app:s0 tcontext=u:object_r:proc:s0 tclass=file permissive=0

?

添加權限

path:device\rockchip\common\sepolicy\untrusted_app.te

allow untrusted_app proc:file write;

添加后編譯報錯

libsepol.report_failure: neverallow on line 344 of external/sepolicy/app.te (or line 4313 of policy.conf) violated by allow untrusted_app proc:file { write };


刪除不允許的權限

path:external\sepolicy\app.te

neverallow {appdomain -shell -untrusted_app}

?

此時 adb 和 apk 中都能正常讀寫 gpio。

?

下面是添加權限的完整補丁

diff --git a/device/rockchip/common/sepolicy/shell.te b/device/rockchip/common/sepolicy/shell.te index be7a221..f382240 100644 --- a/device/rockchip/common/sepolicy/shell.te +++ b/device/rockchip/common/sepolicy/shell.te @@ -3,3 +3,4 @@ allow shell toolbox_exec:file { read getattr open execute execute_no_trans };allow shell logcat_exec:file { read getattr open execute execute_no_trans };allow shell serial_device:chr_file rw_file_perms;allow shell proc_cpuinfo:file mounton; +allow shell proc:file write;diff --git a/device/rockchip/common/sepolicy/untrusted_app.te b/device/rockchip/common/sepolicy/untrusted_app.te index 8c0f740..69cfc0d 100644 --- a/device/rockchip/common/sepolicy/untrusted_app.te +++ b/device/rockchip/common/sepolicy/untrusted_app.te @@ -6,3 +6,4 @@ allow untrusted_app kernel:system { module_request };allow untrusted_app binfmt_misc:dir { search };allow untrusted_app binfmt_misc:file { read open };allow untrusted_app video_device:chr_file { read write open ioctl }; +allow untrusted_app proc:file write;diff --git a/external/sepolicy/app.te b/external/sepolicy/app.te index ca08d74..0400047 100644 --- a/external/sepolicy/app.te +++ b/external/sepolicy/app.te @@ -340,7 +340,7 @@ neverallow { appdomain -shell } efs_file:dir_file_class_set read;# Write to various pseudo file systems.neverallow { appdomain -bluetooth -nfc }sysfs:dir_file_class_set write; -neverallow appdomain +neverallow {appdomain -shell -untrusted_app}proc:dir_file_class_set write;# Access to syslog(2) or /proc/kmsg.

?

轉載于:https://www.cnblogs.com/lialong1st/p/11185476.html

總結

以上是生活随笔為你收集整理的Android 系统添加SELinux权限的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 天天干天天添 | 成片在线观看 | 国产a√精品区二区三区四区 | 337p日本欧洲亚洲鲁鲁 | 国产精品久久久久久久裸模 | 国产精品三级av | 欧美黄页在线观看 | 男男黄色片| 欧美在线视频一区二区三区 | 国语对白精彩对话 | 激情区 | 青青久视频 | 强乱中文字幕av一区乱码 | 精品国产欧美日韩 | 好好热视频 | 国产成人精品一区在线播放 | av久久久久久| 国产成人无码精品久久久电影 | 黄色网址在线免费观看 | 三浦理惠子av在线播放 | a级片在线 | 在线免费观看黄色片 | 她也啪在线视频 | 欧洲熟妇的性久久久久久 | 亚欧色视频 | 亚洲天堂网一区二区 | 午夜色图| 亚洲一区二区三区四区电影 | 综合第一页 | 黄网在线观看视频 | 久久久无码18禁高潮喷水 | 久久精品视频偷拍 | 制服丝袜先锋影音 | 视频福利在线 | 天天干夜夜爽 | 草草影院在线观看视频 | 成人福利在线播放 | 黑人精品欧美一区二区蜜桃 | 天天操天天操天天操天天操天天操 | 欧美日韩在线视频 | 久久精品国产亚洲av麻豆色欲 | 青青草视频播放 | 欧美123区 | 美日韩视频 | 久久久视 | 国产精品久久综合青草亚洲AV | 一区二区三区四区国产精品 | 日韩在线视频免费播放 | 添女人荫蒂视频 | 男女激情久久 | 免费观看日本 | 男女视频免费网站 | 午夜影院在线 | 国产在线免费观看 | 五月综合色 | 三级成人| jizz在亚洲 | 黄色在线一区 | 激情xxx | 国产一级爱c视频 | 国产黄色大片视频 | 狠狠干很很操 | av在线影音 | 污污视频网站 | 涩涩视屏| 国产白丝喷水 | 精品欧美一区二区三区成人 | 蜜桃在线一区 | 欧美日本一道本 | 日本美女一级视频 | 自拍视频网址 | 91精品国产色综合久久不卡98口 | 国产色影院 | 免看一级a毛片一片成人不卡 | 日本污视频在线观看 | 爱草av| 婷婷综合色 | 99久久精品免费看国产交换 | 大尺度激情吻胸视频 | 国产资源一区 | 国产精品每日更新 | 黄色小视频网 | 日本少妇做爰全过程毛片 | 国产成人超碰人人澡人人澡 | 99久久亚洲精品 | 成人免费视频一区 | 欧美特黄一区二区三区 | 国产亚洲色婷婷久久99精品91 | 日本性猛交 | 欧美啪啪一区 | 一级少妇片| 深爱综合网 | 色伊人网 | 精品一区国产 | 激情久久久 | 国产精品网站在线观看 | av成人在线看 | 国产美女主播视频 | 亚洲综合无码一区二区 |