淺析LINUX系統(tǒng)服務(wù)器的安全問題_第1頁
淺析LINUX系統(tǒng)服務(wù)器的安全問題_第2頁
淺析LINUX系統(tǒng)服務(wù)器的安全問題_第3頁
淺析LINUX系統(tǒng)服務(wù)器的安全問題_第4頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、淺析LINUX系統(tǒng)服務(wù)器的安全問題摘要: 隨著Internet應(yīng)用的廣泛深入,計算機(jī)系統(tǒng)的安全問題日益引起人們的高度重視。操作系統(tǒng)是連接計算機(jī)硬件與上層軟件及用戶的橋梁,它的安全性是至關(guān)重要的。論文闡述了B2級安全服務(wù)器的系統(tǒng)需求,重點(diǎn)對自主訪問服務(wù)器系統(tǒng)需求和功能描述進(jìn)行說明,最后還就LINUX系統(tǒng)服務(wù)器的安全相關(guān)問題進(jìn)行重點(diǎn)分析,有利于提高LINUX服務(wù)器安全性能設(shè)計水平。關(guān)鍵詞:LINUX;自主訪問控制(DAC);訪問控制鏈表(ACL);服務(wù)器安全1 引言 隨著計算機(jī)系統(tǒng)在社會各領(lǐng)域的廣泛應(yīng)用,大量的數(shù)據(jù)和信息將在計算機(jī)系統(tǒng)中存放、傳輸和處理。計算機(jī)系統(tǒng)多用戶的應(yīng)用,使得計算機(jī)系統(tǒng)安全成

2、為越來越重要的課題。尤其是在使用計算機(jī)系統(tǒng)的政府、國防、金融等信息敏感部門,計算機(jī)系統(tǒng)的安全顯得尤為重要。任何計算機(jī)系統(tǒng)敏感信息的泄漏都將帶來巨大的損失和災(zāi)難性的后果。目前,隨著社會信息化的發(fā)展,計算機(jī)安全問題也日益嚴(yán)重,建立安全防范體系的需求越來越強(qiáng)烈。操作系統(tǒng)是整個計算機(jī)信息系統(tǒng)的核心,操作系統(tǒng)安全是整個安全防范體系的基礎(chǔ)。信息安全是涉及國家主權(quán)的問題,而操作系統(tǒng)安全又是信息安全的重要內(nèi)容。操作系統(tǒng)安全是計算機(jī)系統(tǒng)軟件安全的必要條件。本文主要探討了LINUX系統(tǒng)服務(wù)器的安全問題。 2Linux安全服務(wù)器的系統(tǒng)需求 此系統(tǒng)開發(fā)符合GB 17859中規(guī)定的結(jié)構(gòu)化保護(hù)級(相當(dāng)于TCSEC中規(guī)定的

3、B2級)功能要求的安全操作系統(tǒng),其主要功能要求包括:(1)標(biāo)識與鑒別;(2)自主訪問控制;(3)強(qiáng)制訪問控制;(4)安全審計;(5)客體重用;(6)最小特權(quán)管理;(7)可信路徑;(8)隱蔽通道分析;(9)加密卡支持等等。 首先,通過標(biāo)識與鑒別機(jī)構(gòu),認(rèn)證用戶的身份,登錄進(jìn)入系統(tǒng)。標(biāo)識機(jī)構(gòu)用于唯一標(biāo)識進(jìn)入系統(tǒng)的每個用戶的身份,鑒別機(jī)構(gòu)用于驗證用戶身份的合法性。一個用戶通過輸入登錄名(Login Name)和口令(Password)進(jìn)入系統(tǒng),存取系統(tǒng)的資源。口令必須嚴(yán)格地保護(hù),口令的失密可能導(dǎo)致另一個用戶冒名頂替進(jìn)入系統(tǒng),訪問口令主人資源。在Linux安全服務(wù)器中,限制用戶只能在一定的安全級范圍登錄

4、進(jìn)入系統(tǒng)。用戶登錄時可選擇安全級,若不選擇,則系統(tǒng)取該用戶的默認(rèn)安全級;如果用戶選擇的安全級和默認(rèn)安全線不在規(guī)定的范圍之內(nèi),則系統(tǒng)拒絕該用戶進(jìn)入系統(tǒng)。 第二,在操作系統(tǒng)中用戶建立一個進(jìn)程,這個進(jìn)程使用用戶的標(biāo)識和安全級進(jìn)行存取控制檢查,查看是否可以通過MAC和DAC機(jī)構(gòu)。MAC提供客體在主體間共享的控制。與DAC不同的是,MAC由系統(tǒng)管理員管理,DAC由客體的擁有者管理。客體的擁有者可以改變客體的DAC方式,但不能改變客體的MAC方式。TCB根據(jù)安全級來實(shí)施MAC。系統(tǒng)中的每個主體和客體都具有一個安全級,主體的安全級在登錄時賦值,客體的安全級為創(chuàng)建它的主體的安全級。安全級由級別(Classif

5、ication)和類別(Category)組成。級別是線性關(guān)系,如絕密=機(jī)密=秘密;類別是集合的概念,為偏序關(guān)系。 安全級格式表示為:級別:類別1,類別2,?,類別n 對每個客體及用戶都分配一個安全級,一個安全級僅包含一個單一的級別,而它的類別集合可能包含任意數(shù)目的類別。我們將一個安全級寫成一個級別與一個類別表,下面是一個例子:secret;NATO,NUCLEAR,CKYPTO 多級安全策略的目的就是防止未被許可的用戶能夠訪問到具有一定密級的信息。在一個安全級中的級別是線性有序的,例如: unclassfiedconfidentialsecrettop secret 類別是彼此獨(dú)立的,并且是

6、無序的。為了合法的得到某一信息,用戶的級別必須大于或等于該信息的級別,并且用戶必須具有包括該信息所有訪問類別的類別集合。例如,考慮具有如下安全級的一個文件F:secret;NATO,NUCLEAR 如果一個用戶具有如下的安全級 top secret;NATO,NUCLEAR,CRYPTO 那該用戶就能夠訪問文件F,因為該用戶具有比文件F高的級別,并且它的類別集合包括了該文件的所有類別。而具有如下安全級的用戶就不能訪問該文件: top secret;NATO,CRYPTO 因為它缺少類別NUCLEAR。 第三,由MAC構(gòu)成的訪問隔離防止普通用戶存取僅系統(tǒng)管理員才能訪問的敏感TCB文件。 第四,進(jìn)

7、程的特權(quán)為用戶提供超越系統(tǒng)存取控制的能力。特權(quán)管理的思想是將UNIX超級用戶的特權(quán)劃分為一組細(xì)粒度的特權(quán)。管理員可以靈活地給予某(些)用戶執(zhí)行一系列操作和管理命令的特權(quán),從而減少超級用戶操作和管理系統(tǒng)的安全風(fēng)險;管理員也可以給予某些文件以它所執(zhí)行操作要求具有的固定特權(quán)。 第五,審計機(jī)構(gòu)監(jiān)視和記錄用戶和管理員的敏感操作。審計是系統(tǒng)中對所發(fā)生的事件進(jìn)行記錄的一種行為,它是安全系統(tǒng)中的一個重要方面。審計為系統(tǒng)進(jìn)行事故原因的查詢、定位、事故發(fā)生前的預(yù)測、報警以及事故發(fā)生之后的實(shí)時處理提供詳細(xì)、可靠的依據(jù)或支持。 如上所述,TCB通過建立一系列的安全控制來保證系統(tǒng)的安全性。任何用戶都必須通過標(biāo)識與答別機(jī)

8、構(gòu)(login和passwd),在系統(tǒng)中建立一個進(jìn)程。然后,這個進(jìn)程及其產(chǎn)生的后續(xù)進(jìn)程只要通過了MAC和DAC檢查,就可以訪問系統(tǒng)中的相應(yīng)客體。任何企圖超越MAC和DAC的特權(quán)任務(wù)都必須通過特權(quán)機(jī)構(gòu)的檢查。最后,所有敏感操作都是在審計機(jī)構(gòu)的監(jiān)視下完成的。 3 Linux安全服務(wù)器的設(shè)計和實(shí)現(xiàn) 3.1 系統(tǒng)安全體系結(jié)構(gòu) 這里L(fēng)inux 級安全服務(wù)器將采用FLASK體系結(jié)構(gòu)和Linux組織提供的LSM(Linux Security Module)動態(tài)加載技術(shù),通過安全相關(guān)模塊與系統(tǒng)原有功能的分離,以及實(shí)現(xiàn)不同策略的安全模塊的動態(tài)加載,實(shí)現(xiàn)對多安全策略的支持。根掘FLASK系統(tǒng)結(jié)構(gòu),本系統(tǒng)將分為兩個

9、主要部分: (1) 在原有系統(tǒng)中插入策略執(zhí)行點(diǎn)。策略執(zhí)行點(diǎn)一般在主體對客體進(jìn)行操作前,如果當(dāng)前的安全策略允許主體對客體進(jìn)行該操作,則該操作繼續(xù)進(jìn)行,一般是調(diào)用原有系統(tǒng)中的相關(guān)模塊來完成:如果當(dāng)前的安全策略不允許主體對客體進(jìn)行該操作,則該操作被終止,并返回錯誤信息。在策略執(zhí)行點(diǎn)同時對系統(tǒng)操作進(jìn)行安全審計。策略執(zhí)行點(diǎn)并不直接對是否允許主體對客體的某種操作進(jìn)行判定,而是通過hook(鉤子)函數(shù)調(diào)用安全服務(wù)器中的相關(guān)功能來完成策略判定。 (2) 安全服務(wù)器。安全服務(wù)器是安全系統(tǒng)的核心部分,負(fù)責(zé)對安全策略的執(zhí)行和判定,同時維護(hù)系統(tǒng)和主體客體的安全信息。hook函數(shù)是原有系統(tǒng)與安全服務(wù)器之間進(jìn)行交互的唯一

10、方式。通過動態(tài)更改hook函數(shù)的指向,可以實(shí)現(xiàn)對不同安全策略的調(diào)用,實(shí)現(xiàn)對多安全策略的支持。通過采用LSM技術(shù),可以實(shí)現(xiàn)對安全服務(wù)器或其中某個安全策略模塊的動態(tài)加載。 3.2 ACL機(jī)構(gòu) ACL機(jī)構(gòu)兼容傳統(tǒng)的UNIX保護(hù)機(jī)構(gòu),UNIX文件中權(quán)限模式位直接對應(yīng)為該文件的ACL表的基本項,兩者的保護(hù)功能完全相同??梢岳胓etfac1命令來顯示文件的ACL表:文件擁有者能夠利用setfac1命令在文件的ACL表中增加users(用戶)項或groups(用戶組)項;也可用該命令刪除這些項,也可以刪除基本項:還可用該命令來改變文件ACL表中的某一項的權(quán)限。 ACL機(jī)構(gòu)能使客體擁有者以單個用戶為單位進(jìn)行

11、授權(quán)訪問或拒絕訪問控制,從而使系統(tǒng)具有更細(xì)的存取控制粒度。所有ACL信息的改變都是以一個基本操作方式(系統(tǒng)調(diào)用)通過setfacl命令來完成的,這就避免了出現(xiàn)中間非安全狀態(tài)的可能性。當(dāng)ACL表增大時,進(jìn)程的運(yùn)行速度必然降低,這實(shí)際上也就限制了ACL表項數(shù)不能太大。 為進(jìn)一步解釋基本ACL,先看看文件初始化ACL表的表項與其模式位的直接對應(yīng)關(guān)系。當(dāng)一個文件創(chuàng)建時,其權(quán)限模式位及其基本ACL表也隨之建立?;続CL具有四項:user、group、other及mask。文件模式中擁有者的權(quán)限總與該文件ACL表user項的權(quán)限位相同;文件模式中其它用戶的權(quán)限位也總與其ACL表中的other項的權(quán)限位相

12、同,且兩者在ACL中是唯一的。文件基本ACL表中的group和mask項的權(quán)限位在初始化時與文件模式中擁有者的同組用戶的權(quán)限位一樣,它們同樣也是唯一的?;続CL表可以通過加入擴(kuò)展user項和擴(kuò)展group項來進(jìn)行擴(kuò)展。不同用戶組可以在擴(kuò)展group項中指定相應(yīng)的權(quán)限;擴(kuò)展user項用于指定各用戶登錄到系統(tǒng)之后對文件所具有的訪問權(quán)限。 在文件創(chuàng)建時,該文件擴(kuò)展ACL項是基于其父目錄的默認(rèn)ACL項而獲得的。這些目錄文件的默認(rèn)ACL項用于說明當(dāng)在目錄下創(chuàng)建文件時,這些默認(rèn)ACL項將被加入到新創(chuàng)建的文件ACL表中。 3.3 功能描述 自主存取控制(簡稱DAC)是根據(jù)用戶意愿進(jìn)行信息存取的機(jī)制。目前在

13、Linux中存在的DAC機(jī)制是傳統(tǒng)的文件權(quán)限模式,本次開發(fā)的目的是在系統(tǒng)中加入ACL機(jī)制。利用ACL,用戶能夠有選擇地授予其他用戶某些存取權(quán)限,來對信息進(jìn)行保護(hù),防止信息被非法提取。ACL機(jī)制在兼容原有的文件權(quán)限模式的基礎(chǔ)上,使客體擁有者以單個用戶組為單位進(jìn)行授權(quán)訪問或拒絕訪問控制,從而使系統(tǒng)具有更細(xì)致的存取控制粒度,也就是說不是文件屬主或者和文件屬主不在同一個組里的某些用戶可以和其它用戶有區(qū)別,擁有更多的訪問權(quán)限。 3.4 DAC部分系統(tǒng)構(gòu)思 在原有的文件權(quán)限模式之上,加入ACL表。使客體擁有者以單個用戶組為單位進(jìn)行授權(quán)訪問或拒絕訪問控制。原始的文件模式提供文件的基本ACL項(原始的文件模式

14、位usergroupother分別對應(yīng)ACL表中的ACL_USER_OBJACL_GROUP_OBJ (ACL_MASK)ACL_OTHER類型的權(quán)限位,ACL表項的類型描述詳見數(shù)據(jù)結(jié)構(gòu)部分)。目錄客體擁有默認(rèn)ACL表項,可以繼承給在該目錄中創(chuàng)建的文件和子目錄。 客體擁有自己的ACL表??腕w屬主和特權(quán)用戶可以任意修改客體的ACL表。系統(tǒng)對于ACL表是這樣存放的:每個不同的文件系統(tǒng)都擁有一個ACL表文件,該文件系統(tǒng)中所有ACL信息的文件的ACL信息都存放在該表文件中。每個文件在文件系統(tǒng)中都有唯一的一個I節(jié)點(diǎn)號,根據(jù)該I節(jié)點(diǎn)號和hash值的余數(shù)把該表文件劃分成不同的組。 I節(jié)點(diǎn)區(qū)第一個4個字節(jié),放

15、的是該組已經(jīng)存放的文件(I節(jié)點(diǎn))個數(shù);第二個4個字節(jié)放的是數(shù)掘塊區(qū)的64字節(jié)data block的個數(shù);第三個4個字節(jié)放的是按I節(jié)點(diǎn)號最小的該組的第一個inode number;第4個4個字節(jié)放的是I節(jié)點(diǎn)號是第三個4個字節(jié)中的值的文件在數(shù)據(jù)塊區(qū)中的偏移量(offset),該offset以整個ACL表文件為基礎(chǔ)。I節(jié)點(diǎn)區(qū)從第三個4個字節(jié)開始每個在數(shù)據(jù)塊區(qū)中的文件都占8個字節(jié),前4個是I節(jié)點(diǎn)號,后4個是浚文件的偏移量,并且按照I節(jié)點(diǎn)號從小到大升序排列整齊。 一個文件可能占多于1個data block的字節(jié)數(shù),無論這個文件占多少字節(jié),第一個data block的格式都是這樣的:數(shù)據(jù)塊區(qū)的第一個4個字節(jié),記錄的是該文件一共有多少acl數(shù)據(jù)個數(shù)(ACL項數(shù)),每個acl數(shù)據(jù)一共占4個字節(jié),1個字節(jié)的標(biāo)識類型,2個字節(jié)的限定詞,1個字節(jié)的權(quán)限集。文件的acl數(shù)據(jù)個數(shù)是根據(jù)用戶來增加或者刪減的,基本ACL是有4個acl項。第二個4個字節(jié)是該文件的I節(jié)點(diǎn)號;第三個4個字節(jié),是該文件的第一個acl項。 所有寫到磁盤表文件中的文件都至少包含一個不是ACL基本項的項,也就是至少有5個ACL項。主體對客體進(jìn)行訪問時,在DAC檢查點(diǎn)通過ACL訪問校驗算法來控制。 4 結(jié)語 本文主要對于淺析LINUX系統(tǒng)服務(wù)器的安全

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論