Selinux在Enforcing mode時,在終端輸入su,可以從shell用戶切到root用戶。
那麼在哪裏去控制的呢?
external\sepolicy\su.te
# su is also permissive to permit setenforce.
permissive su;
就是這句permissive su,纔可以讓shell通過su切到root。
對於permissive的解釋,在網上找到一段很好的解釋:
從目前AOSP SEAndroid安全配置源文件來看,很多te文件中都使用瞭如下這樣的語句:
圖19 permissive定義
其中,permissive關鍵詞表示不用對上述這些type/domain進行MAC監管。permissive一般用於測試某個策略,看是否對整個系統有影響。一旦測驗通過,就可以把permissve語句移掉,以真正提升安全。
加上permissive關鍵字可以不進行MAC監管,這個確實很強大。