探索Linux的安全機(jī)制 (1) |
發(fā)布時(shí)間: 2012/8/15 18:15:19 |
經(jīng)過(guò)十年的發(fā)展,Linux的功能在不斷增強(qiáng),其安全機(jī)制亦在逐步完善。按照TCSEC評(píng)估標(biāo)準(zhǔn),目前Linux的安全級(jí)基本達(dá)到了C2,更高安全級(jí)別的Linux系統(tǒng)正在開(kāi)發(fā)之中。 下面我們來(lái)看一看Linux已有的安全機(jī)制,這些機(jī)制有些已被標(biāo)準(zhǔn)的Linux所接納,有些只是提供了“補(bǔ)丁”程序。 PAM機(jī)制 PAM(Pluggable Authentication Modules)是一套共享庫(kù),其目的是提供一個(gè)框架和一套編程接口,將認(rèn)證工作由程序員交給管理員,PAM允許管理員在多種認(rèn)證方法之間作出選擇,它能夠改變本地認(rèn)證方法而不需要重新編譯與認(rèn)證相關(guān)的應(yīng)用程序。 PAM的功能包括: PAM為更有效的認(rèn)證方法的開(kāi)發(fā)提供了便利,在此基礎(chǔ)上可以很容易地開(kāi)發(fā)出替代常規(guī)的用戶(hù)名加口令的認(rèn)證方法,如智能卡、指紋識(shí)別等認(rèn)證方法。 入侵檢測(cè)系統(tǒng) 入侵檢測(cè)技術(shù)是一項(xiàng)相對(duì)比較新的技術(shù),很少有操作系統(tǒng)安裝了入侵檢測(cè)工具,事實(shí)上,標(biāo)準(zhǔn)的Linux發(fā)布版本也是最近才配備了這種工具。盡管入侵檢測(cè)系統(tǒng)的歷史很短,但發(fā)展卻很快,目前比較流行的入侵檢測(cè)系統(tǒng)有Snort、Portsentry、 Lids等。 ● 記錄入侵企圖,當(dāng)攻擊發(fā)生時(shí)及時(shí)通知管理員; 加密文件系統(tǒng) 加密技術(shù)在現(xiàn)代計(jì)算機(jī)系統(tǒng)安全中扮演著越來(lái)越重要的角色。加密文件系統(tǒng)就是將加密服務(wù)引入文件系統(tǒng),從而提高計(jì)算機(jī)系統(tǒng)的安全性。有太多的理由需要加密文件系統(tǒng),比如防止硬盤(pán)被偷竊、防止未經(jīng)授權(quán)的訪問(wèn)等。 目前Linux已有多種加密文件系統(tǒng),如CFS、TCFS、CRYPTFS等,較有代表性的是TCFS(Transparent Cryptographic File System)。它通過(guò)將加密服務(wù)和文件系統(tǒng)緊密集成,使用戶(hù)感覺(jué)不到文件的加密過(guò)程。TCFS不修改文件系統(tǒng)的數(shù)據(jù)結(jié)構(gòu),備份與修復(fù)以及用戶(hù)訪問(wèn)保密文件的語(yǔ)義也不變。 TCFS能夠做到讓保密文件對(duì)以下用戶(hù)不可讀: ● 合法擁有者以外的用戶(hù); 而對(duì)于合法用戶(hù),訪問(wèn)保密文件與訪問(wèn)普通文件幾乎沒(méi)有區(qū)別。 安全審計(jì) 即使系統(tǒng)管理員十分精明地采取了各種安全措施,但還會(huì)不幸地發(fā)現(xiàn)一些新漏洞。攻擊者在漏洞被修補(bǔ)之前會(huì)迅速抓住機(jī)會(huì)攻破盡可能多的機(jī)器。雖然Linux不能預(yù)測(cè)何時(shí)主機(jī)會(huì)受到攻擊,但是它可以記錄攻擊者的行蹤。 Linux還可以進(jìn)行檢測(cè)、記錄時(shí)間信息和網(wǎng)絡(luò)連接情況。這些信息將被重定向到日志中備查。 日志是Linux安全結(jié)構(gòu)中的一個(gè)重要內(nèi)容,它是提供攻擊發(fā)生的唯一真實(shí)證據(jù)。因?yàn)楝F(xiàn)在的攻擊方法多種多樣,所以Linux提供網(wǎng)絡(luò)、主機(jī)和用戶(hù)級(jí)的日志信息。例如,Linux可以記錄以下內(nèi)容: ● 記錄所有系統(tǒng)和內(nèi)核信息; 在調(diào)查網(wǎng)絡(luò)入侵者的時(shí)候,日志信息是不可缺少的,即使這種調(diào)查是在實(shí)際攻擊發(fā)生之后進(jìn)行。 強(qiáng)制訪問(wèn)控制 強(qiáng)制訪問(wèn)控制(MAC,Mandatory Access Control)是一種由系統(tǒng)管理員從全系統(tǒng)的角度定義和實(shí)施的訪問(wèn)控制,它通過(guò)標(biāo)記系統(tǒng)中的主客體,強(qiáng)制性地限制信息的共享和流動(dòng),使不同的用戶(hù)只能訪問(wèn)到與其有關(guān)的、指定范圍的信息,從根本上防止信息的失泄密和訪問(wèn)混亂的現(xiàn)象。 傳統(tǒng)的MAC實(shí)現(xiàn)都是基于TCSEC中定義的MLS策略,但因MLS本身存在著這樣或那樣的缺點(diǎn)(不靈活、兼容性差、難于管理等),研究人員已經(jīng)提出了多種MAC策略,如DTE、RBAC等。由于Linux是一種自由操作系統(tǒng),目前在其上實(shí)現(xiàn)強(qiáng)制訪問(wèn)控制的就有好幾家,其中比較典型的包括SElinux、RSBAC、MAC等,采用的策略也各不相同。 NSA推出的SELinux安全體系結(jié)構(gòu)稱(chēng)為 Flask,在這一結(jié)構(gòu)中,安全性策略的邏輯和通用接口一起封裝在與操作系統(tǒng)獨(dú)立的組件中,這個(gè)單獨(dú)的組件稱(chēng)為安全服務(wù)器。SELinux的安全服務(wù)器定義了一種混合的安全性策略,由類(lèi)型實(shí)施 (TE)、基于角色的訪問(wèn)控制 (RBAC) 和多級(jí)安全(MLS) 組成。通過(guò)替換安全服務(wù)器,可以支持不同的安全策略。 SELinux使用策略配置語(yǔ)言定義安全策略,然后通過(guò)checkpolicy 編譯成二進(jìn)制形式,存儲(chǔ)在文件 /ss_policy中,在內(nèi)核引導(dǎo)時(shí)讀到內(nèi)核空間。這意味著安全性策略在每次系統(tǒng)引導(dǎo)時(shí)都會(huì)有所不同。策略甚至可以通過(guò)使用 security_load_policy 接口在系統(tǒng)操作期間更改(只要將策略配置成允許這樣的更改)。 RSBAC的全稱(chēng)是Rule Set Based Access Control(基于規(guī)則集的訪問(wèn)控制),它是根據(jù)Abrams和LaPadula提出的Generalized Framework for Access Control(GFAC)模型開(kāi)發(fā)的,可以基于多個(gè)模塊提供靈活的訪問(wèn)控制。所有與安全相關(guān)的系統(tǒng)調(diào)用都擴(kuò)展了安全實(shí)施代碼,這些代碼調(diào)用中央決策部件,該部件隨后調(diào)用所有激活的決策模塊,形成一個(gè)綜合的決定,然后由系統(tǒng)調(diào)用擴(kuò)展來(lái)實(shí)施這個(gè)決定。RSBAC目前包含的模塊主要有MAC、RBAC、ACL等。 MAC是英國(guó)的Malcolm Beattie針對(duì)Linux 2.2編寫(xiě)的一個(gè)非常初級(jí)的MAC訪問(wèn)控制,它將一個(gè)運(yùn)行的Linux系統(tǒng)分隔成多個(gè)互不可見(jiàn)的(或者互相限制的)子系統(tǒng),這些子系統(tǒng)可以作為單一的系統(tǒng)來(lái)管理。MAC是基于傳統(tǒng)的Biba完整性模型和BLP模型實(shí)現(xiàn)的,但作者目前似乎沒(méi)有延續(xù)他的工作。
本文出自:億恩科技【www.itdijia.com】 服務(wù)器租用/服務(wù)器托管中國(guó)五強(qiáng)!虛擬主機(jī)域名注冊(cè)頂級(jí)提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM] |