譯者 | 陳峻
審校 | 孫淑娟
如果我問(wèn)您什么方面會(huì)與IT基礎(chǔ)架構(gòu)、運(yùn)營(yíng)管理、以及DevOps都有聯(lián)系,您可能會(huì)脫口而出是“系統(tǒng)加固”。的確,系統(tǒng)加固不但是擁有多樣化基礎(chǔ)架構(gòu)的大型IT團(tuán)隊(duì)的日常工作之一,而且能夠給系統(tǒng)保護(hù)帶來(lái)廣泛的安全功能。
下面,我將和您探討什么是系統(tǒng)加固、加固的重要性、加固的標(biāo)準(zhǔn)、以及Chef如何幫助DevSecOps團(tuán)隊(duì)快速、輕松地加固異構(gòu)化的系統(tǒng)。
什么是系統(tǒng)加固?
系統(tǒng)加固是一種通過(guò)減少服務(wù)器、應(yīng)用程序、固件、以及其他面向網(wǎng)絡(luò)的系統(tǒng)級(jí)漏洞,來(lái)抵御網(wǎng)絡(luò)攻擊的方法。系統(tǒng)加固往往需要在基礎(chǔ)設(shè)施和安全管理工具的幫助下來(lái)實(shí)現(xiàn)。這些工具將有助于審計(jì)各種系統(tǒng)、檢測(cè)潛在的攻擊向量、并最小化攻擊面。
鑒于網(wǎng)絡(luò)安全攻擊對(duì)于企業(yè)的各種??影響??,系統(tǒng)加固可以做出針對(duì)攻擊者的一種戰(zhàn)略性防御,去彌補(bǔ)那些經(jīng)常被用來(lái)攻擊系統(tǒng)、以及訪問(wèn)敏感數(shù)據(jù)的系統(tǒng)級(jí)漏洞。下面是一些與系統(tǒng)加固相關(guān)的關(guān)鍵性操作:
- 刪除或禁用不再使用的系統(tǒng)
- 限制各種權(quán)限
- 刪除多余的應(yīng)用程序、端口、功能、以及用戶帳戶
- 監(jiān)控各種漏洞
理想情況下,運(yùn)行漏洞掃描是系統(tǒng)加固的絕好起點(diǎn)。因?yàn)樗鼈儠?huì)發(fā)現(xiàn)各種缺失的補(bǔ)丁與安全更新,以及那些可被作為攻擊入口的開(kāi)放端口。系統(tǒng)加固也會(huì)要求更改服務(wù)與應(yīng)用程序的默認(rèn)密碼,使用應(yīng)用防火墻的嚴(yán)格規(guī)則來(lái)限制或控制流量,啟用帳戶鎖定機(jī)制,以及執(zhí)行持續(xù)的合規(guī)性審計(jì)。由于系統(tǒng)加固是一個(gè)持續(xù)的動(dòng)態(tài)過(guò)程,因此我們需要事先確定好對(duì)此負(fù)責(zé)的團(tuán)隊(duì),以及可長(zhǎng)期實(shí)施的系統(tǒng)加固策略。
目前,大多數(shù)企業(yè)都會(huì)遵循由??CIS??(Center for Internet Security,互聯(lián)網(wǎng)安全中心)、NIST(National Institute of Standards and Technology,美國(guó)國(guó)家標(biāo)準(zhǔn)與技術(shù)研究院)、以及ENISA(歐洲網(wǎng)絡(luò)與信息安全局)等組織頒布的嚴(yán)格的系統(tǒng)加固準(zhǔn)則。不過(guò),此類準(zhǔn)則并不能讓企業(yè)一勞永逸。企業(yè)需要持續(xù)通過(guò)構(gòu)建多層次的深度安全防御原則,在不減少應(yīng)用程序和操作系統(tǒng)的特性與功能的基礎(chǔ)上,來(lái)縮小各種網(wǎng)絡(luò)攻擊面。
從廣義上講,系統(tǒng)加固可被分為如下類型:
- 服務(wù)器加固:旨在保護(hù)服務(wù)器上的端口、功能、數(shù)據(jù)、以及權(quán)限。涉及到的技術(shù)包括:對(duì)服務(wù)器軟件予以定期更新、打補(bǔ)丁,以及使用強(qiáng)密碼機(jī)制。
- 軟件加固:通過(guò)編輯或更新應(yīng)用程序代碼,來(lái)升級(jí)所有應(yīng)用程序的安全措施,以應(yīng)對(duì)各類攻擊。
- 操作系統(tǒng)加固:旨在保障所有端點(diǎn)上運(yùn)行的操作系統(tǒng)的安全。涉及到的技術(shù)包括:更新系統(tǒng)級(jí)的補(bǔ)丁,以及限制訪問(wèn)操作系統(tǒng)的帳戶。
- 數(shù)據(jù)庫(kù)加固:旨在保障數(shù)據(jù)庫(kù)和DBMS的安全。涉及到的技術(shù)包括:限制用戶的訪問(wèn)權(quán)限,禁用不必要的服務(wù),以及加密數(shù)據(jù)庫(kù)里的信息等。
- 網(wǎng)絡(luò)加固:旨在保障服務(wù)器和端點(diǎn)之間的網(wǎng)絡(luò)中,所有通信通道的安全。
系統(tǒng)加固的重要性
系統(tǒng)加固極大地降低了網(wǎng)絡(luò)攻擊的風(fēng)險(xiǎn)。在系統(tǒng)級(jí)的審計(jì)中,一種常見(jiàn)的違規(guī)原因便是那些導(dǎo)致“合規(guī)性漂移(compliance drift)”的配置更改。也就是說(shuō),我們每次在添加新的服務(wù)器、用戶、以及應(yīng)用程序時(shí),都有可能產(chǎn)生新的漏洞。
一種常見(jiàn)現(xiàn)象是:當(dāng)企業(yè)擁有多種可配置的大量軟硬件資產(chǎn)時(shí),安全運(yùn)維人員都需要花時(shí)間以手動(dòng)或自動(dòng)的方式,對(duì)新、舊資產(chǎn)根據(jù)CIS之類的基準(zhǔn)予以配置與調(diào)整。而在完成的時(shí)候,他們卻無(wú)法保證沒(méi)有引入新的錯(cuò)誤。正是由于此類現(xiàn)象在各種IT生態(tài)系統(tǒng)中都普遍存在,因此我們需要特別注意那些不斷變化的IT基礎(chǔ)架構(gòu),確保對(duì)其動(dòng)態(tài)的安全配置和持續(xù)合規(guī)性進(jìn)行檢查。對(duì)此,企業(yè)往往需要實(shí)施自動(dòng)化的工具,通過(guò)持續(xù)監(jiān)控和審計(jì)異構(gòu)的IT資產(chǎn),來(lái)保證能夠在出現(xiàn)偏差時(shí),及時(shí)補(bǔ)救并協(xié)助加固IT系統(tǒng)。
系統(tǒng)加固的優(yōu)秀實(shí)踐
既然系統(tǒng)加固是一個(gè)必不可少的過(guò)程,那么我們綜合了NIST和CIS頒布的優(yōu)秀實(shí)踐標(biāo)準(zhǔn),提出如下全面加固系統(tǒng)的策略:
- 遵守CIS、NIST、ENISA等系統(tǒng)加固標(biāo)準(zhǔn)
- 基于企業(yè)的特定需求,制定系統(tǒng)加固計(jì)劃
- 使用基于CIS基準(zhǔn)的安全審計(jì)工具,來(lái)執(zhí)行持續(xù)審計(jì)、并識(shí)別系統(tǒng)中的漏洞
- 使用自動(dòng)化的漏洞掃描與修補(bǔ)工具,識(shí)別缺失的補(bǔ)丁、錯(cuò)誤的配置、安全類更新,進(jìn)而快速執(zhí)行漏洞的修復(fù)
- 運(yùn)用強(qiáng)大的用戶權(quán)限與訪問(wèn)規(guī)則,刪除整個(gè)基礎(chǔ)架構(gòu)中不必要的帳戶和權(quán)限
- 使用由CIS認(rèn)證的自動(dòng)化合規(guī)工具,自動(dòng)產(chǎn)生合規(guī)性偏差報(bào)告和修復(fù)建議
系統(tǒng)加固建議圖
系統(tǒng)加固與Chef Compliance
Chef Compliance是一種自動(dòng)化的解決方案,其中包括CIS和??DISA STIG??的各項(xiàng)基準(zhǔn),可被用于審計(jì)和修復(fù)系統(tǒng)中的各種漏洞,以促進(jìn)IT生態(tài)系統(tǒng)的合規(guī)與安全。在Chef Compliance中,企業(yè)可以同時(shí)使用Chef Infra(配置管理)和Chef InSpec(合規(guī)性)兩個(gè)模塊,來(lái)實(shí)現(xiàn):
- 執(zhí)行持續(xù)審計(jì),評(píng)估異構(gòu)資產(chǎn)的當(dāng)前配置與狀態(tài)
- 根據(jù)CIS和STIG推薦的基準(zhǔn),糾正錯(cuò)誤的配置
- 對(duì)特定控制的審計(jì),謹(jǐn)慎使用例外和豁免
- 自定義現(xiàn)有的補(bǔ)救內(nèi)容,以滿足企業(yè)的需求
- 如果安全基準(zhǔn)受到了破壞,則應(yīng)回滾到最后一次已知的可信狀態(tài)
- 從單一的儀表板處,查看所有端點(diǎn)的配置與合規(guī)狀態(tài)
借助Chef Compliance,企業(yè)可以保持跨混合云和多云環(huán)境的安全性,同時(shí)提高DevOps流程的整體效率。同時(shí),IT團(tuán)隊(duì)能夠在Chef的持續(xù)安全審計(jì)與修復(fù)的幫助下,執(zhí)行系統(tǒng)加固,從而檢測(cè)和修復(fù)不同IT組件中的漏洞。由于IT管理員獲得了完全的可見(jiàn)性,因此他們很容易根據(jù)企業(yè)的實(shí)際要求,去調(diào)整基線,以及輕松地維護(hù)合規(guī)性配置文件。同時(shí),他們也能夠針對(duì)大規(guī)模的分布式混合與邊緣基礎(chǔ)設(shè)施,實(shí)施系統(tǒng)級(jí)別的加固。
獲取、定義、監(jiān)控、補(bǔ)救和報(bào)告
使用Chef進(jìn)行系統(tǒng)加固的優(yōu)勢(shì)
從安全性和合規(guī)性的角度來(lái)看,使用Chef進(jìn)行系統(tǒng)加固的優(yōu)勢(shì)主要體現(xiàn)在:
- 改進(jìn)的安全態(tài)勢(shì):通過(guò)CIS和STIG的標(biāo)準(zhǔn)化配置文件,可持續(xù)開(kāi)展審計(jì)和修復(fù),確保降低系統(tǒng)的數(shù)據(jù)泄露、漏洞被利用、惡意軟件的安裝、未經(jīng)授權(quán)的訪問(wèn)等風(fēng)險(xiǎn)。
- 更好的可審計(jì)性:Chef精心規(guī)劃的配置文件,能夠使得復(fù)雜的安全審計(jì),變得更容易、更快速、更透明,進(jìn)而能夠交付出適用于主流平臺(tái)和操作系統(tǒng)的、易于閱讀的代碼。
- 改進(jìn)的系統(tǒng)功能:憑借著無(wú)差錯(cuò)(error-free)的自動(dòng)化、針對(duì)流程的提速、配置的一致性、以及全面安全的基礎(chǔ)設(shè)施,Chef提高了系統(tǒng)的整體效率、以及DevOps團(tuán)隊(duì)的生產(chǎn)力。
通過(guò)Chef InSpec掃描來(lái)檢查系統(tǒng)加固的態(tài)勢(shì)
如果您正在為系統(tǒng)加固尋找自動(dòng)化工具,以確保異構(gòu)IT資產(chǎn)的合規(guī)性,請(qǐng)下載免費(fèi)版的??Chef Workstation??,并針對(duì)Windows或Linux系統(tǒng),運(yùn)行公開(kāi)可用的Chef InSpec配置文件。
無(wú)需額外安裝,您可以僅在目標(biāo)節(jié)點(diǎn)上使用如下提供的DevSec基線,以分析Linux和Windows的系統(tǒng)態(tài)勢(shì)。由于下面的命令會(huì)從GitHub中提取內(nèi)容,因此您無(wú)需克隆存儲(chǔ)庫(kù)。通過(guò)提供SSH或WinRM的相關(guān)憑據(jù),您可以掃描本地、云端、以及邊緣系統(tǒng)中的IT資產(chǎn):
Linux:
- DevSec的??Linux基線??
- $ inspec exec
- -t ssh://user@node -i ~/.ssh/id_rsa
Windows:
- $ inspec exec
- -t winrm://user:password@node
無(wú)論您的系統(tǒng)最初是如何配置的,這些簡(jiǎn)單的命令都會(huì)立即報(bào)告各種已通過(guò)的和失敗了的測(cè)試結(jié)果,并且能夠突出顯示那些易受攻擊的地方。同時(shí),Chef Automate(Chef生態(tài)系統(tǒng)的儀表板)的用戶也可以利用各種默認(rèn)的、或自定義的系統(tǒng)加固配置文件,使用Chef Compliance去安排定期掃描。
譯者介紹
陳峻 (Julian Chen),51CTO社區(qū)編輯,具有十多年的IT項(xiàng)目實(shí)施經(jīng)驗(yàn),善于對(duì)內(nèi)外部資源與風(fēng)險(xiǎn)實(shí)施管控,專注傳播網(wǎng)絡(luò)與信息安全知識(shí)與經(jīng)驗(yàn);持續(xù)以博文、專題和譯文等形式,分享前沿技術(shù)與新知;經(jīng)常以線上、線下等方式,開(kāi)展信息安全類培訓(xùn)與授課。
原文標(biāo)題:??System Hardening Standards and Best Practices With Chef??,作者:Anugraha Benjamin