[android]開發基礎(四)- 安全機制 SELinux

首頁 >> >> [android]開發基礎(四)- 安全機制 SELinux

SELinux 使用白名單來定義系統可進行的行為,

也就是說只有被允許的行為才會被執行.

Android 預設使用uid/gid來管理行為的權限,

如果有應用程式取得root權限權限,此程式將不受任何限制,

並且可在裝置上執行任何行為,

基於SELinux設計的裝置可以限制這些取得root權限的程式(或者使用者),

避免安全問題.

由於SELinux基於白名單方式的管理,

所以系統如果有新增裝置或者功能,

所以必須根據需求更改相關權限,

以確保新的程式或者行為可以正確執行.

 

查詢裝置是否有被阻擋的行為可利用dmesg查詢:
su -c dmesg | grep ‘avc: ‘

安全機制 SELinux

 

主要有三個步驟

 

1.在BSP/device/manufacturer/device-name/sepolicy/底下,新增一個.te檔案
命令語法:
EX:(允許sdcard存取/data/下所有資料)
allow sdcardd media_data_file:file{read write};

 

2.更新boardconfig.mk,把新增的規則加進去

BOARD_SEPOLICY_DIRS +=
        device/manufacturer/device-name/sepolicy

BOARD_SEPOLICY_UNION +=
       file_contexts  
       new_rule.te

 

3.更新file_contexts,把新的type加入
/data/(/.*)?    u:object_r:media_data_file:s0

重新build image,更新之後
即可套用新的規則.

官方也有相關說明
網址是:
官方說明網址



================================
分享與讚美,是我們繼續打拼的原動力.
若文章對您有幫助,望請不吝按讚或分享.
或者對影片有興趣可以訂閱頻道接收通知
================================
YouTube 頻道
FB 粉絲專頁
================================

guangyaw

重點主題: 程式設計: Python , Django,Android 工具與軟體: Open edX,Linux工具,Blender教學 分享各地美景與產品使用心得,遊戲實況,甚至影視戲劇等, 您的訂閱就是頻道成長的原動力。 YouTube 頻道: https://youtube.com/xyawli

You may also like...

1 Response

  1. 2017-07-20

    […] 之前提到過 SELINUX for Android, […]

發表迴響