SELinux策略語言
SELinux架構(gòu)中,對(duì)于內(nèi)核資源,策略通過策略管理接口載入SELinux LSM模塊安全服務(wù)器中,從而決定訪問控制。
SELinux的優(yōu)勢(shì)是其策略規(guī)則不是靜態(tài)的,用戶必須按照安全目標(biāo)的要求自行編寫策略。使用和應(yīng)用SELinux本質(zhì)上就是編寫和執(zhí)行策略的過程。
策略在策略源文件中描述。策略源文件名稱為policy.conf,其文件結(jié)構(gòu)包括以下幾點(diǎn)。
?(1)類別許可,指安全服務(wù)器的客體類別,對(duì)于內(nèi)核而言,類別直接關(guān)系內(nèi)核源文件,許可指針對(duì)每個(gè)客體類別的許可。通常,SELinux策略編寫者不會(huì)修改客體的類別和許可定義。
?(2)類型強(qiáng)制聲明,包括所有的類型聲明和所有的TE(Type Enforcement,類型強(qiáng)制)規(guī)則,是SELinux策略中最重要的部分。
?(3)約束,是TE規(guī)則許可范圍之外的規(guī)則,為TE規(guī)則提供必要的限制。多級(jí)安全(MLS)是一種約束規(guī)則。
?(4)資源標(biāo)記說明,指對(duì)所有客體都必須添加的一個(gè)“安全上下文”標(biāo)記,是SELinux實(shí)施訪問控制的前提。SELinux根據(jù)資源標(biāo)記說明處理文件系統(tǒng)標(biāo)記以及標(biāo)記運(yùn)行時(shí)創(chuàng)建的臨時(shí)客體規(guī)則。
SELinux策略大而復(fù)雜,由一個(gè)個(gè)小的策略模塊構(gòu)成。
策略模塊的生成一般采用源模塊法。源模塊法支持單策略的開發(fā),并通過一組shell腳本、m4宏和Makefile一起合并成為文本文件。
多個(gè)策略模塊集合組成策略源文件,即policy.conf,策略源文件是文本文件,通過策略編譯器checkpolicy編譯為二進(jìn)制文件policy.xx(xx為版本號(hào)),并通過策略裝載函數(shù)security_load_policy載入內(nèi)核且實(shí)施訪問控制。
使用源模塊構(gòu)造和載入SELinux策略的全過程如圖所示。
?首先,通過源模塊法生成一個(gè)個(gè)策略模塊,策略模塊聚合形成一個(gè)大的策略源文件policy.conf;
?其次,策略源文件policy.conf通過策略編譯器checkpolicy,生成可被內(nèi)核讀取的二進(jìn)制文件policy.xx;
?最后,policy.xx通過策略裝載函數(shù)security_load_policy載入內(nèi)核空間并實(shí)施訪問控制。
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。
舉報(bào)投訴
-
內(nèi)核
-
Linux
-
源文件
-
系統(tǒng)
相關(guān)推薦
某個(gè)遠(yuǎn)程用戶可以訪問系統(tǒng)的敏感文(如/etc/dev)。如果我們的Linux系統(tǒng)啟用了SELinux,而查詢SELinux策略得知,這個(gè)服務(wù)進(jìn)程并不具備訪問敏感文件(/etc/dev)的權(quán)限,所以這個(gè)
發(fā)表于 04-03 10:43
FPGA縮略語表,大家可以看看,有時(shí)候老忘記,彼此學(xué)習(xí)一下
發(fā)表于 04-01 17:01
分析常用策略描述語言的缺點(diǎn),總結(jié)策略的主要配置方式,分析策略的組成成員,提出策略主要元素ECA三元組并給出其關(guān)系,設(shè)計(jì)一種基于ECA的
發(fā)表于 04-09 09:22
?19次下載
對(duì)SELinux策略服務(wù)器在安全性和脆弱性方面存在的問題進(jìn)行分析,基于可信計(jì)算提出信任特征的概念,將其引入到SELinux策略服務(wù)器的設(shè)計(jì)中,給出一種基于信任特征的
發(fā)表于 04-21 09:11
?14次下載
電子類縮略語及專業(yè)術(shù)語解釋。
發(fā)表于 07-05 15:48
?0次下載
CDMA縮略語大全
AC 鑒權(quán)中心BITS 局內(nèi)綜合定時(shí)供給系統(tǒng)BS 基站BSID0 基站識(shí)
發(fā)表于 05-21 00:19
?681次閱讀
音響、家電常用縮略語大全
AC:交流 A/D:摸(擬)/數(shù)(字)轉(zhuǎn)換
A:音頻 AIN:音頻輸入
發(fā)表于 03-31 16:02
?848次閱讀
非常全面的電子類縮略語,設(shè)計(jì)不可缺少的資料。
發(fā)表于 11-17 11:24
?0次下載
谷歌新一代開源操作系統(tǒng) Fuchsia 的開發(fā)者網(wǎng)站上公布了一份 Fuchsia 編輯語言策略,文檔描述了 C、C++、Dart、Rust 與 Go 的優(yōu)劣勢(shì),并明確指定了其中哪些語言將會(huì)在 Fuchsia 開發(fā)生態(tài)中得到怎樣程
發(fā)表于 02-26 15:14
?2481次閱讀
授權(quán)策略無處不在,因?yàn)閹缀趺總€(gè)應(yīng)用程序都需要授權(quán)策略。但是,開發(fā)人員通常會(huì)“滾動(dòng)自己的”代碼,這不僅耗時(shí),而且會(huì)導(dǎo)致難以維護(hù)的工具和策略拼湊而成。盡管授權(quán)對(duì)于每個(gè)應(yīng)用程序都是至關(guān)重要的,但是花在創(chuàng)建
發(fā)表于 08-06 15:58
?1542次閱讀
除了Android 4.4 KitKat中已添加的各種以用戶為中心的功能外,Google還通過許多重大更改大大改善了該平臺(tái)的整體安全性。 除其他事項(xiàng)外,Android 4.3中已經(jīng)引入了有關(guān)SELinux的重要更改。 但是,Android4.4將SELinux的狀態(tài)從“授
發(fā)表于 09-06 09:54
?1060次閱讀
SELinux 是一種安全增強(qiáng)型 Linux 安全模塊,用于控制 subjects(例如程序、進(jìn)程等)訪問 objects(例如文件、設(shè)備等)的權(quán)限和可訪問性。
發(fā)表于 05-15 09:48
?1206次閱讀
分為3種,即disabled、permissive和enforcing。 ?(1)disabled狀態(tài):指在Linux系統(tǒng)中不啟用SELinux模塊的功能。 ?(2)permissive狀態(tài):指在Linux系統(tǒng)中,SELinux模塊處于Debug模式,若操作違反
發(fā)表于 10-31 14:42
?1090次閱讀
SELinux可作為可加載的安全模塊運(yùn)行。 LSM是一個(gè)底層的安全策略框架,Linux系統(tǒng)利用LSM管理所有的系統(tǒng)調(diào)用。SELinux通過LSM框架整合到Linux內(nèi)核中。 當(dāng)用戶進(jìn)程執(zhí)行系統(tǒng)調(diào)用
發(fā)表于 10-31 14:50
?503次閱讀
SELinux: 打開終端。 輸入以下命令來更改SELinux的模式: sudo setenforce 0 這將SELinux設(shè)置為寬容模式,即不會(huì)強(qiáng)制執(zhí)行SELinux
發(fā)表于 07-17 13:29
?502次閱讀
評(píng)論