向華偉
(云南電網(wǎng)有限責(zé)任公司信息中心 云南省昆明市 650011)
對于提供網(wǎng)絡(luò)服務(wù)的操作系統(tǒng)而言,其安全隱患主要來自于網(wǎng)絡(luò)通信安全、非法入侵等方面,而對于桌面操作系統(tǒng)而言,其所面臨的安全隱患則主要表現(xiàn)為以下幾個方面:
(1)攻擊者入侵。攻擊者為竊取重要機密數(shù)據(jù)或非法修改系統(tǒng)而實施入侵,其主要通過身份掩護而非法獲取合法用戶口令來進行非法操作;另外,攻擊者利用系統(tǒng)安全漏洞或管理員所不熟悉的操作指令實施入侵。
(2)非法使用或操作不當(dāng)。合法用戶在未經(jīng)授權(quán)的情況下越過系統(tǒng)的安全檢查訪問或使用某些數(shù)據(jù)、資源等情況;或是在授權(quán)訪問的情況下,用戶操作不當(dāng)或錯誤使用系統(tǒng)某些功能而導(dǎo)致重要數(shù)據(jù)信息泄密。
(3)超級用戶root 權(quán)限過大。超級用戶root 因權(quán)限過大而不受到任何限制與制約,因此,一旦攻擊者非法獲得超級用戶root 權(quán)限,就能獲得計算機的完全控制權(quán),從而導(dǎo)致系統(tǒng)處于“任人宰割”的危險之中。
(4)惡意程序威脅。因部分機器存在弱口令而被攻擊者植入病毒,或入侵者繞過系統(tǒng)安全控制設(shè)置后門,或通過植入邏輯炸彈代碼的形式對計算機程序進行破壞,一旦觸發(fā)惡意程序就會導(dǎo)致出現(xiàn)災(zāi)難性后果,例如某個進程無法正常運行、重要磁盤分區(qū)被刪除、重要數(shù)據(jù)被破壞等,從而使系統(tǒng)出現(xiàn)死機、癱瘓等。
2.1.1 安全設(shè)計原則
首先,全面性原則。由于攻擊者所采用的“最易滲透原則”,也決定了其往往會選擇系統(tǒng)的薄弱環(huán)節(jié)發(fā)動攻擊,因此,全面分析系統(tǒng)的漏洞及潛在安全隱患,并對系統(tǒng)的安全性能做好評估及檢測,進而有效提升系統(tǒng)“安全最低點”的安全性能。其次,公開性原則。為減少或防止攻擊者入侵而對桌面操作系統(tǒng)的工作原理進行一味保密的,在很大程度上會對管理員造成迷惑而導(dǎo)致誤操作。另外,易操作原則。如若系統(tǒng)的安全防護措施過于復(fù)雜,就會使操作難度大大提升,并加大了對管理人員的要求,這也在一定程度上降低了系統(tǒng)安全性。此外,最小特權(quán)原則。系統(tǒng)程序的執(zhí)行應(yīng)按照最小特權(quán)原則,嚴(yán)禁越權(quán)調(diào)用或執(zhí)行與程序不相關(guān)的程序,或禁止越權(quán)訪問超過權(quán)限的重要數(shù)據(jù)資源。
2.1.2 安全模塊設(shè)計
以較為成熟的SELinux(全稱Security Enhanced Linux 即安全強化Linux)安全子系統(tǒng)框架為基礎(chǔ),根據(jù)電力企業(yè)辦公對桌面操作系統(tǒng)的安全需求,進行安全模塊的設(shè)計,確保所有主體發(fā)起對客體的訪問時均須通過安全控制策略模塊的決策后方可執(zhí)行,進而有效提升訪問控制的安全性(如圖1)。而Linux 桌面操作系統(tǒng)在可信安全芯片(可信平臺模塊)的基礎(chǔ)上,通過可信引導(dǎo)、可信啟動以及可信運行等建立可信鏈,并進一步實現(xiàn)了對進程的動態(tài)度量以及系統(tǒng)文件的度量保護,從而通過可信芯片上層的可信功能大大降低了系統(tǒng)所遭受的安全威脅,并通過多種安全加固技術(shù)實現(xiàn)了對基于安全模塊的桌面操作系統(tǒng)的安全防護。

圖1:訪問控制關(guān)系示意圖

圖2:“三權(quán)分立”示意圖
首先,可信引導(dǎo)。為有效確保啟動系統(tǒng)前的安全性,可通過TCM 芯片的可信模塊作為硬件可信根,建立由TCM 可信根→BIOS 固件→MBR 引導(dǎo)記錄→OS Loader →OS Kernel 系統(tǒng)內(nèi)核→應(yīng)用層的完整信任鏈關(guān)系,在信任關(guān)系的進一步擴展時通過可信度量機制與相關(guān)報告保護機制,對Linux 系統(tǒng)引導(dǎo)啟動時的引導(dǎo)文件實施安全度量與動態(tài)監(jiān)控,并通過BIOS 固件及操作系統(tǒng)加載器及系統(tǒng)內(nèi)核的層層檢驗,防止rootkit 級別的惡意程序攻擊系統(tǒng),阻止本地不安全以及可疑的配置啟動,并在終端遭受外界的攻擊時,實現(xiàn)自我保護、自我管理及恢復(fù)。
其次,內(nèi)核級可信功能。基于Linux 的桌面操作系統(tǒng)以國產(chǎn)可信芯片為基礎(chǔ),通過多個層面實現(xiàn)對系統(tǒng)內(nèi)核、運行中的進程以及重要文件的安全可信度量,進而從系統(tǒng)的內(nèi)核層提升桌面操作系統(tǒng)平臺的安全性與可信性。主要由以下四個方面所組成:一是,Linux 系統(tǒng)內(nèi)核與應(yīng)用層采用可信計算接口實現(xiàn)對重要文件進行加密解密;二是,系統(tǒng)內(nèi)核的動態(tài)可信度量作為可信計算的關(guān)鍵技術(shù),可信操作系統(tǒng)啟動時基于硬件可信啟動鏈,對系統(tǒng)狀態(tài)信息的采集、度量,并判斷系統(tǒng)是否被篡改;三是,應(yīng)用進程的可信度量機制,能夠?qū)⒖尚胚M程與不可信進度予以隔離,從而防止不可信進程對系統(tǒng)文件造成破壞,以減少因未知因素而導(dǎo)致攻擊的可能性。四是,重要文件的可信度量,能夠防止并限制病毒的越權(quán)訪問,避免外界攻擊造成重要文件的損壞。
另外,上層應(yīng)用可信功能。基于可信芯片的可信模塊,Linux桌面操作系統(tǒng)能夠為上層應(yīng)用提供可信啟動、登錄認(rèn)證、動態(tài)監(jiān)控、文件存儲加密及簽名等可信功能。
此外,安全管理中心(SMC)。SMC 包括配置、監(jiān)控、分析、響應(yīng)等四個相關(guān)聯(lián)的部分,通過對整個系統(tǒng)的安全狀態(tài)和安全趨勢進行分析,從而對危害嚴(yán)重的安全事件及時做出反應(yīng),以保證實現(xiàn)對系統(tǒng)的安全保護與加固。
2.2.1 引入“三權(quán)分立”
root 權(quán)限過大而給了攻擊者以可乘之機,一旦攻擊者非法獲得root 權(quán)限,就會控制計算機而給系統(tǒng)安全造成威脅。而為有效提升系統(tǒng)的安全性,可通過禁用桌面操作系統(tǒng)root 權(quán)限,并引入“三權(quán)分立”安全機制的方式,即由系統(tǒng)管理員、安全管理員以及安全審計員三個角色共同分享root 權(quán)限,將原超級用戶的root 權(quán)限進行分立(如圖2),從而通過三方的相互監(jiān)督與制約,使用戶登錄系統(tǒng)或在系統(tǒng)的運行過程中切換身份時,均能夠根據(jù)不同角色予以獨立鑒別,并制定相應(yīng)角色的口令與雙因子認(rèn)證對超級用戶權(quán)限予以制約。其中,系統(tǒng)管理員主要負(fù)責(zé)系統(tǒng)運行與維護,安全管理員主要負(fù)責(zé)系統(tǒng)安全管理與運維,安全審計員主要負(fù)責(zé)查看日志及文件等系統(tǒng)的安全審計工作。
2.2.2 最小權(quán)限管理
Linux 桌面操作系統(tǒng)中所有運行中的進程均有各自特定的域,且不同域之間主要依據(jù)安全上下文予以區(qū)分,而系統(tǒng)中的所有客體(文件、進程間通信、網(wǎng)絡(luò)主機等)也同樣標(biāo)記上與之相關(guān)的安全標(biāo)記即安全上下文。當(dāng)安全上下文匹配時,才會被訪問允許;反之,若安全上下文不匹配時則訪問不被允許;而系統(tǒng)通過對應(yīng)用進程的可執(zhí)行操作提前預(yù)設(shè),使程序能夠按照系統(tǒng)預(yù)設(shè)時賦予其的最小權(quán)限完成相關(guān)的操作。該安全策略的顯著優(yōu)點在于最大程度限制了主體實施授權(quán)的行為,從而有效規(guī)避突發(fā)事件、操作失誤以及未授權(quán)用戶主體的風(fēng)險。
2.2.3 強制訪問控制SELinux 作為有史以來Linux 系統(tǒng)下最杰出的安全子系統(tǒng),其所具有的強制訪問控制體系,能夠強制主體服從訪問控制策略,具有限制主體或發(fā)起者訪問或?qū)ο蠡蚰繕?biāo)執(zhí)行某種操作的能力,例如,能夠指明某一進程能夠訪問哪些資源。當(dāng)主體嘗試訪問對象時,系統(tǒng)內(nèi)核強制實行授權(quán)規(guī)則,檢查其是否安全并決定是否能夠進行訪問,任何主體進行任何目標(biāo)對象的訪問時,都將根據(jù)一組控制策略即授權(quán)規(guī)則進行認(rèn)證,并決定該訪問操作是否允許。通過強制訪問控制,能夠顯著增強系統(tǒng)抵御攻擊的能力,有效地防止特洛伊木馬攻擊以及root 身份冒用、盜用或誤操作等而對系統(tǒng)造成的安全威脅。因此,對于非常注重數(shù)據(jù)安全的政府、能源以及電力等企業(yè)級用戶,通過SELinux 的應(yīng)用能夠有效增強系統(tǒng)的安全性以及資源訪問的安全性。
2.2.4 數(shù)據(jù)加密存儲
利用安全數(shù)據(jù)保密箱,能夠保護重要數(shù)據(jù)以密文的形式進行存儲,從而有效防止了入侵者通過讀取磁盤而對系統(tǒng)發(fā)動攻擊,并竊取重要數(shù)據(jù)。加密的密文存儲在“容器”里,而存儲密文的容器既有可能是一個文件,也可能是軟驅(qū)、硬盤分區(qū)等合法的設(shè)備。而通過將存儲密文的容器作為文件系統(tǒng)掛載至某個掛載點,便能對容器內(nèi)的數(shù)據(jù)進行存取或修改操作,從而大大提升了存儲數(shù)據(jù)安全性。其中,加密算法模塊作為獨立內(nèi)核模式驅(qū)動程序,能夠?qū)ΡC芟鋬?nèi)的重要數(shù)據(jù)進行加密、解密,從而實現(xiàn)對重要數(shù)據(jù)安全的保護。
2.2.5 增強安全審計
安全審計即是通過事后追蹤的形式檢查系統(tǒng)漏洞及安全隱患來提升系統(tǒng)的安全性,安全審計通過對所有涉及系統(tǒng)安全的相關(guān)操作予以記錄,以確保在系統(tǒng)受到攻擊時能夠及時追蹤查找對系統(tǒng)造成威脅的具體時間、地點、人員以及過程細(xì)節(jié)等。由于審計主要通過事后追責(zé),因此,無法做到對系統(tǒng)安全的主動防御與保護。因而,如何通過安全審計實現(xiàn)對系統(tǒng)安全威脅的有效防護,抵御不斷發(fā)生的入侵行為,成為當(dāng)前安全管理人員的工作重點。對此,可基于安全審計并融合相應(yīng)的主動防御措施,如安全威脅預(yù)警等,使安全威脅發(fā)生前通過預(yù)警提前通知系統(tǒng)管理員或采取相應(yīng)的安全防御措施對威脅系統(tǒng)的行為進行阻止。
增強的安全審計中審計日志主要對以下幾類事件類型予以重點記錄,包括:身份鑒別驗證機制(在登錄系統(tǒng)的過程中對用戶身份的安全性進行驗證),客體資源的修改或刪除(被操作的信息、資源、對象等被入侵者刪除或篡改,如篡改文件訪問權(quán)限等),特權(quán)訪問濫用(系統(tǒng)管理員以及安全管理員的操作行為予以審計),對象導(dǎo)入用戶空間(如創(chuàng)建文件等)等實施管理操作。其中,基于Linux 的桌面操作系統(tǒng)能夠通過增強的安全審計子系統(tǒng)對進程級安全審計,并通過創(chuàng)建以及保護審計日志,從而防止受到入侵者的非法訪問、破壞與修改。
“系統(tǒng)安全無小事”,尤其是對于關(guān)系著“民生”與“國計”的電網(wǎng)企業(yè)而言,其所用操作系統(tǒng)是否安全穩(wěn)定、是否難于被攻破極為關(guān)鍵。而受益于Linux 可高度自定制、自帶多種安全工具等先天優(yōu)勢,其較其它常用操作系統(tǒng)而言更加的安全可信賴。但任何系統(tǒng)的安防均離不開勤于維護,因此,相應(yīng)系統(tǒng)設(shè)計、維護人員務(wù)須對Linux 的常見系統(tǒng)缺陷與安全隱患做到“了如指掌”,并于系統(tǒng)的選定、設(shè)計、維護之中切實做到全面統(tǒng)籌、追求完美,竭盡己能的將潛在系統(tǒng)漏洞予以妥善修復(fù)與全面加防,力促操作系統(tǒng)“完美無瑕”,為電網(wǎng)的安穩(wěn)運營“保駕護航”。