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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > linux >内容正文

linux

linux添加三权,基于SELinux的三权分离技术的研究

發(fā)布時間:2023/12/20 linux 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux添加三权,基于SELinux的三权分离技术的研究 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

目前,Linux操作系統(tǒng)已廣泛應(yīng)用于各種設(shè)備和產(chǎn)品中,如服務(wù)器、PC機(jī)、機(jī)頂盒及路由器等。隨著Linux系統(tǒng)的不斷發(fā)展和廣泛應(yīng)用,Linux系統(tǒng)的安全問題也引起越來越多的關(guān)注。在Linux操作系統(tǒng)中,存在一個超級用戶即root用戶。root也稱為系統(tǒng)管理員,它擁有管理系統(tǒng)的一切權(quán)限。當(dāng)一個非法用戶獲得root用戶口令后,他就可以以超級用戶的身份登錄系統(tǒng),然后做任何他想做的事情:如任意添加、刪除用戶,終止進(jìn)程,刪除重要文件甚至更改root用戶的口令。因此,一旦root權(quán)限被惡意用戶利用,就可能導(dǎo)致系統(tǒng)數(shù)據(jù)的泄密和破壞。

該問題已經(jīng)引起了國家的重點(diǎn)關(guān)注,如國家保密標(biāo)準(zhǔn)BMB20-2007《涉及國家秘密的信息系統(tǒng)分級保護(hù)管理規(guī)范》中明確提出:涉密信息系統(tǒng)應(yīng)配備系統(tǒng)管理員、安全保密管理員和安全審計(jì)員這三類安全保密管理人員,三員應(yīng)該相互獨(dú)立、相互制約、不得兼任。三個管理員之間的工作機(jī)制分為協(xié)作和制約兩種機(jī)制,行使的是原超級用戶的權(quán)力,即系統(tǒng)管理員、安全管理員和審計(jì)管理員間相互協(xié)作,共同維護(hù)系統(tǒng)的正常運(yùn)行。制約機(jī)制指只有在當(dāng)前管理員操作不影響其他管理員正在進(jìn)行的操作時才被允許,從而保證了管理員行為的可預(yù)期性,避免超級用戶的誤操作或其身份被假冒而帶來的安全隱患,增強(qiáng)了系統(tǒng)的安全性。該規(guī)范可以有效防止由系統(tǒng)管理員權(quán)力過大所帶來的系統(tǒng)安全威脅和隱患[。

SELinux (security-enhanced Linux)[是安全增強(qiáng)的Linux,以強(qiáng)制訪問控制(mandatory access control, MAC)[技術(shù)為基礎(chǔ),應(yīng)用類型增強(qiáng)(type enforcement, TE)和基于角色訪問控制(role-base access control, RBAC)兩種安全策略模型。通過MAC技術(shù)可以實(shí)現(xiàn)對用戶和進(jìn)程權(quán)限的最小化,即使在系統(tǒng)受到攻擊或者進(jìn)程和用戶的權(quán)限被剝奪的情況下,也不會對整個系統(tǒng)的安全造成重大影響。SELinux對訪問的控制更徹底,它對系統(tǒng)中的所有文件、目錄、端口資源的訪問控制都基于一定的安全策略而設(shè)定。只有管理員才能定制安全策略,一般用戶沒有權(quán)限更改。因此SELinux為三權(quán)分離思想的實(shí)現(xiàn)奠定了基礎(chǔ)。

目前,SELinux的相關(guān)研究工作主要集中在安全策略分析和配置及SELinux安全模型研究[方面。文獻(xiàn)[

本文基于SELinux建立了三權(quán)分離安全模型,設(shè)計(jì)了三權(quán)分離安全策略,并實(shí)現(xiàn)了三權(quán)分離機(jī)制,最后通過實(shí)驗(yàn)驗(yàn)證了可行性和正確性。

1 SELinux的安全技術(shù)

1.1 MAC和DAC技術(shù)分析

SELinux除了采用自主訪問控制(discretionary access control, DAC)外,還在Linux內(nèi)核中使用強(qiáng)制訪問控制機(jī)制嚴(yán)格控制所有對系統(tǒng)資源的訪問請求,并根據(jù)安全策略確定是否授予該請求相應(yīng)的權(quán)限。MAC機(jī)制將能夠發(fā)出訪問請求的對象稱為主體(如進(jìn)程),將系統(tǒng)的被訪問對象(如:文件、設(shè)備、socket、端口和其他進(jìn)程)稱為客體,所有主體對客體的訪問都必須由MAC機(jī)制通過安全策略授權(quán)。MAC機(jī)制給進(jìn)程僅授予操作所需要的權(quán)限,這遵循了最小權(quán)限原則。因此,在MAC機(jī)制的保護(hù)下,即使獲取root用戶的權(quán)限也無法訪問未授權(quán)的客體[。

在SELinux中,MAC與DAC機(jī)制聯(lián)合,以提高系統(tǒng)的安全性。如

圖1

圖1

SELinux的DAC與MAC

1.2 SELinux的安全策略模型[

安全策略作為訪問控制機(jī)制權(quán)限仲裁的依據(jù),是SELinux中非常重要的內(nèi)容之一。SELinux采用TE (type enforcement)和RBAC (role-based access control)相結(jié)合的安全策略。

1.2.1 TE[模型

SELinux中所有的安全策略,都必須用TE規(guī)則明確地定義,沒有被明確許可的其他訪問方式,都被禁止(最小權(quán)限原則)。TE訪問向量規(guī)則定義了主體可以訪問什么類型的客體,TE轉(zhuǎn)移規(guī)則定義了域類型的相互轉(zhuǎn)移[。本文只討論前者。

定義1?TE模型的關(guān)鍵要素:

源類型(source type, ST)主體(subject)或者域的類型。目標(biāo)類型(target type, TT)客體(object)的類型。對象類別(class)訪問申請的某一類別資源,如:file、socket等。操作類型(opration, OPT)如:read、write等。許可權(quán)限(permission, P)表示主體對客體訪問時允許的操作。

定義2?TE策略模型:

TE策略模型可定義為:P=ST×OPT×TT,許可權(quán)限(P)=源類型(ST)對目標(biāo)類型(TT)的資源類(class)的操作(OPT)。

定義3?根據(jù)上述TE策略模型,采用allow語法制定策略規(guī)則如下:

allow??ST??TT : class??{opt1, opt2, …};

根據(jù)此策略規(guī)則,定義出如下安全策略:

allow user_t bin_t : file {read execute getattr};

在allow基本語法規(guī)則中包含了兩個類型標(biāo)識符:源類型(ST) user_t,目標(biāo)類型(TT) bin_t。標(biāo)識符file是定義在策略中的對象類別名稱(在這里,表示一個普通的文件),大括號中包括的操作是文件操作類型的一個子集,此安全策略示例的含義是擁有域類型user_t的進(jìn)程可以讀/執(zhí)行或獲取具有bin_t類型的文件客體的屬性。

1.2.2 SELinux的RBAC模型

傳統(tǒng)的基于角色的訪問控制RBAC模型[,為角色授權(quán),然后將一個或多個角色分配給一個授權(quán)用戶。SELinux對RBAC模型進(jìn)行了改進(jìn),提出了一種TE-RBAC聯(lián)合模型,改進(jìn)后的模型如[。

圖2

圖2

SELinux的RBAC策略模型

定義4?TE與RBAC聯(lián)合模型:

聲明用戶及其關(guān)聯(lián)的角色,user??joe??roles {user_r};這個語句聲明了一個用戶joe,以及與之關(guān)聯(lián)的角色user_r。

聲明角色與其源類型關(guān)聯(lián),role user_r types user_t;這個語句將源類型user_t與角色user_r關(guān)聯(lián)起來。

2 三權(quán)分離模型

2.1 權(quán)能集定義

依據(jù)最小特權(quán)和權(quán)值分離的管理思想,本文將原超級用戶的特權(quán)進(jìn)行細(xì)粒度劃分,分別授予不同的管理員角色,使各種管理員只具有完成其任務(wù)所需的最小特權(quán),不同管理員間相互協(xié)作共同管理系統(tǒng)。從邏輯上將承擔(dān)這3類職責(zé)的特權(quán)用戶命名為系統(tǒng)管理、安全員管理員和審計(jì)員管理員[。

根據(jù)上述非形式化描述,為了實(shí)現(xiàn)三權(quán)分離機(jī)制,本文首先將系統(tǒng)的root權(quán)能集進(jìn)行劃分,并給出如下定義。

定義5?系統(tǒng)root權(quán)能集C

C={ Csy, Cse, Cau},其中Csy表示系統(tǒng)管理員權(quán)能集,Cse表示安全管理員權(quán)能集,Cau表示審計(jì)管理員權(quán)能集。

定義6?三權(quán)分離權(quán)能集。根據(jù)三權(quán)分離思想,將root權(quán)限拆分成下述3個權(quán)能集:

1)系統(tǒng)管理員權(quán)能集Csy

Csy管理與系統(tǒng)相關(guān)的資源,包括用戶身份管理、系統(tǒng)資源配置、系統(tǒng)加載和啟動、系統(tǒng)運(yùn)行的異常處理[。

2)安全管理員權(quán)能集Cse

Cse制定系統(tǒng)安全策略,負(fù)責(zé)對系統(tǒng)中的主體、客體進(jìn)行統(tǒng)一標(biāo)記,對主體進(jìn)行授權(quán),配置一致的安全策略,并確保標(biāo)記、授權(quán)和安全策略的數(shù)據(jù)完整性[。

3)審計(jì)管理員權(quán)能集Cau

Cau設(shè)置審計(jì)選項(xiàng),對與安全有關(guān)的事件進(jìn)行審計(jì)處理,包括監(jiān)視系統(tǒng)的活動以及日志的處理,提供審計(jì)和監(jiān)控功能,創(chuàng)建和維護(hù)受保護(hù)客體的訪問審計(jì)跟蹤記錄[。

4)各權(quán)能集之間相互隔離,當(dāng)且僅當(dāng)對任意a,b∈T(T={sy, se, au}),a≠b,有Ca?C,Cb?C,Ca∩Cb=?,其中C=Cse∪Csy∪Cau。即每個管理員所能訪問的權(quán)能集是絕對隔離的。

2.2 基于SELinux的三權(quán)分離策略模型

根據(jù)上述權(quán)能集的描述,下面基于SELinux建立一種三權(quán)分離策略模型,主要包括特權(quán)用戶、特權(quán)角色和源類型集定義,以及各特權(quán)用戶與對應(yīng)的特權(quán)角色關(guān)聯(lián)和特權(quán)角色與對應(yīng)的源類型集關(guān)聯(lián)。

圖3

圖3

三權(quán)分離策略模型

定義7?定義3組源類型集,STsy,STse,STau滿足下列條件:

STsy={ STasy, STbsy, …};STse={ STase, STbse, …};STau={ STaau, STbau, …}

并且根據(jù)SELinux的TE模型和上述全能集的定義,可得到如下3組TE策略模型:

1) Psy=STsy×OPT×TT,且Psy?Csy (即系統(tǒng)管理員各源類型的許可權(quán)限是系統(tǒng)管理員權(quán)能集Csy的子集);

2) Pse=STse×OPT×TT,且Pse?Cse (即安全管理員各源類型的許可權(quán)限是安全管理員權(quán)能集Cse的子集);

3) Pau=STau×OPT×TT,且Pau?Cau (即審計(jì)管理員各源類型的許可權(quán)限是審計(jì)管理員權(quán)能集Cau的子集);

4) STsy集∩STse集=?,STse集∩STau集=?,STsy集∩STau集=?,每組源類型集合之間都不能相交。

定義8定義三權(quán)分離的用戶與角色關(guān)聯(lián)

user??root??role??sysadm_r, 將root系統(tǒng)管理員用戶與sysadm_r角色關(guān)聯(lián);

user??secadm??role??secadm_r,將secadm安全管理員用戶與secadm_r角色關(guān)聯(lián);

user??auditadm??role??auditadm_r,將auditadm審計(jì)管理員用戶與auditadm_r角色關(guān)聯(lián)。

定義9?三權(quán)分離的角色與源類型集關(guān)聯(lián)

role??sysadm_r??types??STsy={STasy, STbsy, … }

role??secadm_r??types??STse={STase, STbse, … }

role??auditadm_r??types STau={ STaau, STbau, … }

本定義基于SELinux的RBAC安全模型為每個角色關(guān)聯(lián)一組源類型集合,即:

sysadm_r關(guān)聯(lián)STsy集;secadm_r關(guān)聯(lián)STse集;auditadm_r關(guān)聯(lián)STau集。

3 三權(quán)分離的安全策略設(shè)計(jì)與實(shí)現(xiàn)

在定義了三權(quán)分離模型后,為了在SELinux中實(shí)現(xiàn)該模型,必須修改SELinux已有的安全策略庫,添加三權(quán)分離的安全策略。下文詳細(xì)闡述基于SELinux的三權(quán)分離安全策略的設(shè)計(jì)與實(shí)現(xiàn)。

3.1 三權(quán)分離的安全策略設(shè)計(jì)

圖4

圖4

三權(quán)分離的安全策略設(shè)計(jì)

3.1.1 系統(tǒng)管理員策略設(shè)計(jì)

根據(jù)定義6~定義9的統(tǒng)管理員相關(guān)描述,系統(tǒng)管理員root關(guān)聯(lián)了角色sysadm_r,角色sysadm_r默認(rèn)的源類型為sysadm_t,這個源類型允許轉(zhuǎn)換到與角色sysadm_r關(guān)聯(lián)的其他源類型,如

3.1.2 安全管理員策略設(shè)計(jì)

根據(jù)定義6~定義9中安全管理員相關(guān)描述,安全管理員secadm關(guān)聯(lián)了角色secadm_r,角色secadm_r默認(rèn)的源類型為secadm_t,這個源類型允許轉(zhuǎn)換到與角色secadm_r關(guān)聯(lián)的其他源類型,如

3.1.3 審計(jì)管理員策略設(shè)計(jì)

根據(jù)定義6~定義9中審計(jì)管理員相關(guān)描述,審計(jì)管理員auditadm關(guān)聯(lián)了角色auditadm_r,角色auditadm_r默認(rèn)的源類型為auditadm_t,這個源類型允許轉(zhuǎn)換到與角色auditadm_r關(guān)聯(lián)的其他源類型,如

3.2 三權(quán)分離的TE策略實(shí)現(xiàn)

上一節(jié)中已經(jīng)描述了每個用戶角色所關(guān)聯(lián)的源類型,下面針對每個源類型按照前面所闡述的TE模型指定具體的安全許可規(guī)則。

3.2.1 系統(tǒng)管理員安全策略的實(shí)現(xiàn)

系統(tǒng)管理員擁有原root用戶的大部分權(quán)限,用來完成系統(tǒng)中日常的操作和維護(hù),包括系統(tǒng)用戶賬戶的管理、網(wǎng)絡(luò)相關(guān)管理與操作、內(nèi)核模塊加載、開啟和關(guān)閉系統(tǒng)、對文件的檔案備份和恢復(fù)、安裝或卸載文件系統(tǒng)等。以管理系統(tǒng)用戶賬戶為例,其源類型為useradd_t,系統(tǒng)管理員擁有添加用戶賬號的權(quán)限,即只有系統(tǒng)管理員可以執(zhí)行useradd命令,因此需要在策略中按TE模型的描述給useradd_t源類型定義相應(yīng)的許可權(quán)限。

allow??useradd_t??useradd_exec_t:??file {open??read??execute };

該allow規(guī)則定義了源類型useraddr_t對目標(biāo)類型useradd_exec_t (表示useradd命令)的文件資源授予打開(open)、讀(read)和執(zhí)行(execute)的權(quán)限。

3.2.2 安全管理員安全策略的實(shí)現(xiàn)

安全管理員是整個系統(tǒng)安全策略的制定者,負(fù)責(zé)制定生成安全策略,修改SELinux運(yùn)行模式,裝載二進(jìn)制安全策略,設(shè)置文件安全上下文等。以生成安全策略為例其源類型為checkpolicy_t,安全管理員擁有將策略規(guī)則源碼編譯成二進(jìn)制策略文件的權(quán)限,即只有安全管理員可以執(zhí)行checkpolicy命令,因此需要在策略中按TE模型的描述給checkpolicy_t源類型定義相應(yīng)的許可權(quán)限。

allow checkpolicy_t??checkpolicy_exec_t:??file {open??read??execute };

該allow規(guī)則定義了,源類型checkpolicy_t對目標(biāo)類型checkpolicy_exec_t (表示checkpolicy命令)授予打開(open)、讀(read)和執(zhí)行(execute)的權(quán)限。

3.2.3 審計(jì)管理員安全策略的實(shí)現(xiàn)

審計(jì)管理員是系統(tǒng)的監(jiān)督者,負(fù)責(zé)設(shè)置審計(jì)開關(guān)和審計(jì)閾值,啟動和關(guān)閉審計(jì)機(jī)制以及管理審計(jì)日志等。以auditadm_t源類型為例,只有審計(jì)管理員才能擁有查看審計(jì)日志的權(quán)限,在策略中按TE模型的描述給auditadm_t源類型定義相應(yīng)的許可權(quán)限。

allow??auditadm_t??var_log_t:??file {open??read??getattr };

該allow規(guī)則定義了源類型auditadm_t對目標(biāo)類型var_log_t (表示審計(jì)日志文件)授予打開(open)、讀(read)和獲取屬性(getattr)的權(quán)限。

4 三權(quán)分離實(shí)驗(yàn)

4.1 實(shí)驗(yàn)平臺介紹

實(shí)驗(yàn)的硬件平臺為TQ2440(基于S3C2440A CPU)嵌入式開發(fā)板,軟件平臺為嵌入式Linux。Linux內(nèi)核為Linux 2.6.30,Linux命令工具集為Busybox-1.22.0,安全策略由策略庫refpolicy-2.20090730[修改生成。

4.2 實(shí)驗(yàn)原型的實(shí)現(xiàn)

根據(jù)上文描述的三權(quán)分離安全策略模型,基于refpolicy策略庫,在嵌入式Linux平臺上,借助于SELinux模塊實(shí)現(xiàn)了一個三權(quán)分離的實(shí)驗(yàn)原型系統(tǒng)。該系統(tǒng)重點(diǎn)實(shí)現(xiàn)了三權(quán)分離的安全策略,定義3個特權(quán)角色及對應(yīng)的3個SELinux特權(quán)用戶,并為每個用戶制定詳細(xì)的最小執(zhí)行或訪問權(quán)限。禁止各用戶對其他用戶私有資源的訪問,最大化的限制用戶的權(quán)限,以提高系統(tǒng)的安全性。

4.3 三權(quán)分離功能測試

4.3.1 用戶角色關(guān)聯(lián)測試

系統(tǒng)管理員(root)關(guān)聯(lián)角色sysadm_r,且角色關(guān)聯(lián)sysadm_t源類型,如

圖5

圖5

用戶角色關(guān)聯(lián)標(biāo)識測試

4.3.2 審計(jì)管理員功能測試

根據(jù)三權(quán)分離的設(shè)計(jì)模型,審計(jì)日志只能由審計(jì)管理員進(jìn)行訪問,而其他用戶無權(quán)進(jìn)行讀操作。

圖6

圖6

三權(quán)分離功能測試

值得注意的是,如果當(dāng)前以root權(quán)限登錄去執(zhí)行審計(jì)操作,由于root用戶不具備對審計(jì)日志的訪問權(quán)限,因此該請求被拒絕,如

4.3.3 安全管理員功能測試

根據(jù)三權(quán)分離的設(shè)計(jì)模型,只有安全管理員有權(quán)修改SELinux安全模式,測試結(jié)果如

5 結(jié)束語

為了解決root權(quán)限過大給linux操作系統(tǒng)所帶來的安全隱患問題,本文基于SELinux的強(qiáng)制訪問控制技術(shù),采用三權(quán)分離思想,建立了三權(quán)分離策略模型,實(shí)現(xiàn)了一個安全增強(qiáng)的Linux操作系統(tǒng)。即使特權(quán)用戶的密碼被惡意用戶獲取,也不會對系統(tǒng)造成很大的損害,從而將惡意攻擊對系統(tǒng)的危害降到最低。本文的三權(quán)分離思想將Linux系統(tǒng)的root用戶權(quán)限拆分為安全管理、系統(tǒng)管理、審計(jì)管理三種權(quán)限。然后定義了三權(quán)分離策略模型,并基于SELinux的安全策略庫設(shè)計(jì)并實(shí)現(xiàn)了一套三權(quán)分離的安全策略庫。最后,在嵌入式Linux平臺上,借助于SELinux的強(qiáng)制訪問控制技術(shù)實(shí)現(xiàn)了一個實(shí)驗(yàn)原型系統(tǒng),并對系統(tǒng)各項(xiàng)功能進(jìn)行了多次測試。實(shí)驗(yàn)結(jié)果表示,本文的研究工作能夠嚴(yán)格的限制每個用戶的權(quán)限,如只有審計(jì)管理員可以查看系統(tǒng)的審計(jì)日志,只有安全管理員可以對系統(tǒng)的安全策略進(jìn)行管理等,從而有效解決了Linux系統(tǒng)由于root權(quán)限過大所帶來的系統(tǒng)危害和被攻擊的問題。本文的研究工作適合于任何Linux平臺,包括嵌入式設(shè)備和服務(wù)器,通過這種三權(quán)分離機(jī)制可以克服權(quán)力過于集中給系統(tǒng)帶來的危害,以提高Linux系統(tǒng)的安全性。

總結(jié)

以上是生活随笔為你收集整理的linux添加三权,基于SELinux的三权分离技术的研究的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。