[陳子琨 陳龍如]
在2016 年4 月19 日召開的網(wǎng)絡(luò)安全和信息化工作座談會上,習(xí)近平總書記對互聯(lián)網(wǎng)管理提出明確要求:“金融、能源、電力、通信、交通等領(lǐng)域的關(guān)鍵信息基礎(chǔ)設(shè)施是經(jīng)濟(jì)社會運(yùn)行的神經(jīng)中樞,是網(wǎng)絡(luò)安全的重中之重,也是可能遭到重點(diǎn)攻擊的目標(biāo)?!盵1]根據(jù)國家互聯(lián)網(wǎng)應(yīng)急中心CNCERT 發(fā)布的《2020 年上半年我國互聯(lián)網(wǎng)網(wǎng)絡(luò)安全監(jiān)測數(shù)據(jù)分析報(bào)告》,我國境內(nèi)感染計(jì)算機(jī)惡意程序的主機(jī)數(shù)量約304 萬臺,同比增長25.7%。從我國境內(nèi)感染計(jì)算機(jī)惡意程序主機(jī)數(shù)量地區(qū)分布來看,主要分布在江蘇省(占我國境內(nèi)感染數(shù)量的15.3%)、浙江省(占11.9%)、廣東?。ㄕ?1.6%)等,具體分布如圖1 所示。
圖1 我國境內(nèi)感染木馬僵尸程序的主機(jī)數(shù)量按地區(qū)分布
運(yùn)營商的主機(jī)部署在公網(wǎng)和DCN/CN2 等內(nèi)部網(wǎng)絡(luò),一般安裝UNIX/LINUX 或WINDOWS 的操作系統(tǒng),其中UNIX/LINUX 的數(shù)量居多,占比超過90%以上。UNIX/LINUX 主機(jī)主要存在4 類漏洞:①服務(wù)、端口和權(quán)限沒有最小化;②服務(wù)存在弱口令或未經(jīng)授權(quán)就能登錄;③操作系統(tǒng)或應(yīng)用軟件存在高中風(fēng)險(xiǎn)的漏洞;④操作系統(tǒng)或應(yīng)用服務(wù)的敏感信息泄露。第三方團(tuán)體或個(gè)人可以利用主機(jī)的四類漏洞,獲取主機(jī)的敏感信息或操作權(quán)限,甚至進(jìn)行內(nèi)網(wǎng)滲透,拿下核心數(shù)據(jù)庫的權(quán)限,獲取大量運(yùn)營商用戶的信息。
防火墻是整個(gè)數(shù)據(jù)包要進(jìn)入主機(jī)前的第一道關(guān)卡,為了保護(hù)網(wǎng)絡(luò)的安全,Linux 系統(tǒng)中提供了可靠的防火墻機(jī)制Netfilter,并在此基礎(chǔ)上提供了Iptables 軟件實(shí)現(xiàn)數(shù)據(jù)包的過濾。[4]ACL 是英文單詞Access Control Lists 的首字母簡寫,意為訪問控制列表,這種訪問控制列表是通過對經(jīng)由交換機(jī)或路由器的數(shù)據(jù)流進(jìn)行判斷、分類和過濾的一種技術(shù)。其本質(zhì)是一系列包含著源地址、目的地址以及端口號等信息語句的集合,其中的每一條語句都可被稱為通信規(guī)則,因?yàn)槠湟?guī)定了對到達(dá)的數(shù)據(jù)包進(jìn)行處理的動(dòng)作,只有匹配相應(yīng)規(guī)則的數(shù)據(jù)包中的信息,才能通過訪問控制列表訪問相應(yīng)的數(shù)據(jù)信息,否則就會被拒絕訪問,這樣就能實(shí)現(xiàn)安全控制路由器和網(wǎng)絡(luò)。[5]通過啟動(dòng)Iptables 軟件,配置ACL,實(shí)現(xiàn)主機(jī)訪問流量的精準(zhǔn)控制,這是實(shí)際安全防護(hù)中“零成本”且有效的一種方法。
主機(jī)ACL 配置完整和準(zhǔn)確,則可以減少99%的主機(jī)安全威脅,但是由于配置主機(jī)ACL 有如下問題,主機(jī)管理員存在不敢配,不會配和不想配的心態(tài),導(dǎo)致主機(jī)ACL配置缺失,或者不完整,或者不準(zhǔn)確等情況。配置主機(jī)ACL 的主要問題如下。
(1)端口和IP 數(shù)量多:主機(jī)數(shù)量多,開放端口較多,訪問IP 數(shù)量較多,收集端口和IP 的工作量很大。
(2)可能影響業(yè)務(wù):主機(jī)端口承載著核心業(yè)務(wù),ACL 配置不當(dāng)容易導(dǎo)致業(yè)務(wù)異常甚至全阻。
(3)端口變化:日常主機(jī)的應(yīng)用升級或變更,會改變主機(jī)端口,需要更新主機(jī)ACL。
PDCA 環(huán)是由著名的質(zhì)量管理大師戴明于20 世紀(jì)60年代初創(chuàng)立的,又稱戴明環(huán).其反復(fù)強(qiáng)調(diào)質(zhì)量控制的重要性,是一套能夠全面遵循質(zhì)量管理的科學(xué)程序,這個(gè)循環(huán)主要包括4 個(gè)階段:計(jì)劃(Plan)、實(shí)施(Do)、檢查(Check)和處理(Action)。本文遵循工信部的系列規(guī)范與準(zhǔn)則,對運(yùn)營商主機(jī)網(wǎng)信安全的管理進(jìn)行深度研究與分析,希望建設(shè)一套更理想、更科學(xué)的運(yùn)營商主機(jī)網(wǎng)信安全數(shù)字化防護(hù)管理機(jī)制,將PDCA 循環(huán)引入運(yùn)營商主機(jī)網(wǎng)信安全數(shù)字化防護(hù)的全面質(zhì)量管理體系,通過PDCA 運(yùn)轉(zhuǎn)的基本方法,綜合運(yùn)用PDCA 過程方法和系統(tǒng)方法,遵循PDCA 環(huán)來構(gòu)建運(yùn)營商主機(jī)網(wǎng)信安全數(shù)字化防護(hù)質(zhì)量管理體系的運(yùn)行,使網(wǎng)絡(luò)安全質(zhì)量得以持續(xù)改進(jìn),不斷地滿足與超出各相關(guān)方的需求。[3]
借鑒PDCA 循環(huán)的管理思路,某運(yùn)營商建立了基于PDCA 的主機(jī)網(wǎng)信安全數(shù)字化防護(hù)“五步法”管理機(jī)制,如圖2,基于PDCA循環(huán)分為建立訪問矩陣、智能分析風(fēng)險(xiǎn)、正式啟用配置、智能交叉核查、整改ACL 配置5 個(gè)階段,在確保網(wǎng)絡(luò)和業(yè)務(wù)運(yùn)行穩(wěn)定的前提下,分級防護(hù),先觀察后攔截,逐步完善策略。5 個(gè)階段逐步進(jìn)行,像車輪一樣向前滾進(jìn),周而復(fù)始,不斷循環(huán)。
圖2 主機(jī)網(wǎng)信安全數(shù)字化防護(hù)的“五步法”管理機(jī)制流程圖
建立訪問矩陣是主機(jī)網(wǎng)信安數(shù)字化防護(hù)“五步法”管理機(jī)制的第一步,對應(yīng)PDCA 循環(huán)的計(jì)劃(Plan)階段,主要是明確平臺的防護(hù)等級,主機(jī)ACL 配置規(guī)則和配置標(biāo)準(zhǔn),然后通過數(shù)字化的方式,收集端口信息和訪問關(guān)系,形成數(shù)字化的端口訪問矩陣,助力管理員全面梳理業(yè)務(wù)系統(tǒng)的應(yīng)用服務(wù)運(yùn)行和內(nèi)外調(diào)用關(guān)系,掌握業(yè)務(wù)系統(tǒng)運(yùn)行情況的全景視圖,為保障業(yè)務(wù)系統(tǒng)的穩(wěn)定運(yùn)行和網(wǎng)信安全打下堅(jiān)實(shí)基礎(chǔ)。
首先,根據(jù)平臺承載的用戶數(shù)量、重要性以及平臺的接入網(wǎng)絡(luò)和互聯(lián)網(wǎng)暴露面來分級,用戶數(shù)量多,接入公網(wǎng)且存在互聯(lián)網(wǎng)暴露面的平臺等級高,反之則低,從高到低,可以分為5 級。每個(gè)等級有相應(yīng)的防護(hù)規(guī)則和防護(hù)配置標(biāo)準(zhǔn)。每一級的防護(hù)配置標(biāo)準(zhǔn)如表1 所示,本文重點(diǎn)研究的是主機(jī)ACL 白名單模式的配置。
表1 平臺/系統(tǒng)分級防護(hù)的標(biāo)準(zhǔn)
一級防護(hù):部署在公網(wǎng)的平臺數(shù)據(jù)庫主機(jī)。
二級防護(hù):部署在公網(wǎng)的平臺且設(shè)置了默認(rèn)路由的主機(jī),安全防護(hù)配置要求最低為二級防護(hù)。部署在CN2/DCN 的數(shù)據(jù)庫主機(jī)安全防護(hù)配置要求最低為二級防護(hù)。
三級防護(hù):部署在私網(wǎng)的平臺,安全防護(hù)配置要求最低為三級防護(hù)。
四級防護(hù):工程施工期間且部署在公網(wǎng)的平臺,安全防護(hù)配置要求最低為四級防護(hù)。
五級防護(hù):工程施工期間且部署在私網(wǎng)的平臺,安全防護(hù)配置要求最低為五級防護(hù)。
管理員先初步收集系統(tǒng)主機(jī)的重要服務(wù)端口以及其他端口,主機(jī)內(nèi)部的互訪關(guān)系,主機(jī)和外系統(tǒng)的互訪關(guān)系,建立一個(gè)基礎(chǔ)的端口資源列表和端口訪問矩陣,如表2 所示。重要服務(wù)端口的收集可參考漏洞掃描結(jié)果中具有中高危風(fēng)險(xiǎn)的服務(wù)端口,并結(jié)合服務(wù)的重要性,如Oracle 服務(wù)(1521 端口)、MySQL 服務(wù)(3389)、SSH 服務(wù)(22 端口)、FTP 服務(wù)(21 端口)、Web 服務(wù)(80、8080 端口)等。其中對于SSH 服務(wù)(22 端口),一般建議先配置白名單,源IP 為4A/網(wǎng)管/SOC 平臺的地址,限制只能從4A/網(wǎng) 管/SOC 平臺登錄主機(jī)。
表2 主機(jī)端口訪問矩陣
根據(jù)基礎(chǔ)的端口資源列表和端口訪問矩陣,配置主機(jī)ACL,模式是不攔截只做記錄,然后開啟iptables 防火墻,ACL開始生效。管理員在收集一周到一個(gè)月的訪問日志后,通過運(yùn)行智能化腳本,去重提取出所有訪問的源IP、目的IP、源端口、目的端口和協(xié)議類型。經(jīng)管理員和外部門確認(rèn)后,更新端口資源列表和端口訪問矩陣,同步更新主機(jī)ACL,然后繼續(xù)觀察一周的訪問日志,最終完成主機(jī)端口資源列表和端口訪問矩陣的確認(rèn)。
智能分析風(fēng)險(xiǎn)是“五步法”管理機(jī)制中很重要的一步,對應(yīng)PDCA 循環(huán)的實(shí)施(Do)階段,通過智能化的腳本,提高了管理員的工作效率,解決了主機(jī)ACL 的端口和IP信息量較多而產(chǎn)生的工作量大問題,通過一段時(shí)間的觀察,確保端口訪問矩陣信息準(zhǔn)確完整,做到了“顆粒歸倉”,解決了主機(jī)ACL 配置不準(zhǔn)確可能影響業(yè)務(wù)的問題,保證主機(jī)ACL 正式啟用后,網(wǎng)絡(luò)和業(yè)務(wù)依然可以穩(wěn)定運(yùn)行,實(shí)現(xiàn)了主機(jī)網(wǎng)信安全數(shù)字化安全防護(hù)的“零成本”和“零影響”。
正式啟用配置是“五步法”管理機(jī)制的關(guān)鍵一步,仍處于PDCA 循環(huán)的實(shí)施(Do)階段。它承前啟后,在第2步通過觀察確定的端口訪問矩陣基礎(chǔ)上,管理員修改主機(jī)防火墻ACL 的模式,從只記錄不攔截,改為攔截且記錄,允許白名單的IP 通過,拒絕其他IP,同時(shí)繼續(xù)記錄端口的訪問日志,觀察業(yè)務(wù),直到業(yè)務(wù)運(yùn)行正常一周以上。
雖然通過第二步的觀察,端口訪問矩陣的信息應(yīng)該是準(zhǔn)確和完整的,但由于觀察時(shí)間在一個(gè)月左右,仍不排除缺漏了一些端口訪問關(guān)系,因此正式啟用配置還是具有很大的操作風(fēng)險(xiǎn),可能會影響核心業(yè)務(wù)的運(yùn)行,因此在正式啟用配置后,應(yīng)組織支撐廠商和外部門實(shí)施充分的業(yè)務(wù)回歸測試,在測試通過后,管理員應(yīng)繼續(xù)觀察一段時(shí)間業(yè)務(wù)的運(yùn)行情況,若發(fā)現(xiàn)業(yè)務(wù)運(yùn)行異常,則應(yīng)檢查主機(jī)防火墻的訪問日志,核對無誤后,更新端口訪問矩陣以及主機(jī)ACL 配置,如此循環(huán),直至業(yè)務(wù)高峰期過后,系統(tǒng)依然運(yùn)行正常。
智能交叉核查是“五步法”管理機(jī)制的重要?jiǎng)?chuàng)新,處于PDCA 循環(huán)的檢查(Check)階段,是PDCA 循環(huán)的核心體現(xiàn),遵循PDCA 循環(huán)的定義,通過程序每天智能化掃描主機(jī)端口的開放情況,以及定期組織經(jīng)驗(yàn)豐富的專家交叉復(fù)核主機(jī)的ACL 配置,雙管齊下,全面發(fā)現(xiàn)主機(jī)ACL 的配置缺漏或不當(dāng),進(jìn)而去推動(dòng)管理員去整改,最終實(shí)現(xiàn)主機(jī)ACL 配置的閉環(huán)管理。
為了及時(shí)發(fā)現(xiàn)主機(jī)端口的變更情況,以及主機(jī)ACL缺漏或配置不當(dāng)?shù)那闆r,解決管理員人工檢查的低效和易失誤問題,提高主機(jī)ACL 的工作效率,某運(yùn)營商組織開源和安全人才自研Xnmap 端口掃描系統(tǒng),實(shí)現(xiàn)對主機(jī)端口開放情況的每天自動(dòng)掃描和核查,對于確認(rèn)開放且未備案的端口,自動(dòng)發(fā)郵件給管理員提醒處理,確保管理員能及時(shí)配置主機(jī)ACL。
在Xnmap 端口掃描系統(tǒng)的智能化掃描基礎(chǔ)上,增加主機(jī)ACL 配置經(jīng)驗(yàn)豐富的專家人工核查方式,彌補(bǔ)程序核查不夠全面準(zhǔn)確的缺陷,為此某運(yùn)營商從各專業(yè)科室抽調(diào)熟悉主機(jī)ACL 配置的專家組成多個(gè)檢查組,由檢查組之間交叉核查主機(jī)ACL 的配置,檢查系統(tǒng)的端口開放情況和主機(jī)ACL 配置,查看配置是否符合等級標(biāo)準(zhǔn)要求,檢查記錄表如表3 所示。
表3 交叉檢查組的檢查記錄表
整改ACL 配置是“五步法”管理機(jī)制的最后一步,處于PDCA 循環(huán)的處理(Action)階段,是PDCA 循環(huán)的精華,遵循PDCA 循環(huán)的定義,只有不斷整改發(fā)現(xiàn)的問題,完善相關(guān)的操作指引,主機(jī)網(wǎng)信安全數(shù)字化防護(hù)工作才能不斷完善,適應(yīng)主機(jī)網(wǎng)信安全防護(hù)最新的要求。
根據(jù)智能交叉核查的結(jié)果,發(fā)現(xiàn)主機(jī)ACL 配置還存在如下典型問題。各專業(yè)科室完成了主機(jī)ACL 配置的整改,并通過了檢查組的復(fù)核。
(1)部分系統(tǒng)的ACL 策略未啟用全端口白名單方式。
(2)ACL 配置的源IP 范圍過大。
(3)部分端口允許同網(wǎng)段IP 訪問。
(4)ACL 配置缺漏了部分端口。
本成果自2016 年1 月4 日起在某運(yùn)營商推廣,歷時(shí)5 年,已應(yīng)用到移動(dòng)核心網(wǎng)和網(wǎng)信安系統(tǒng)等核心網(wǎng)元及重要系統(tǒng)的主機(jī),建立多個(gè)核心網(wǎng)元的業(yè)務(wù)訪問關(guān)系矩陣,配置了11 759 臺主機(jī)的ACL,關(guān)閉了6 894 個(gè)非必要的端口,部署了40 萬+條主機(jī)ACL,并且通過智能交叉核查,發(fā)現(xiàn)1 326 個(gè)ACL 配置不符合規(guī)范,已經(jīng)全部修正。
通過嚴(yán)格執(zhí)行主機(jī)網(wǎng)信安數(shù)字化防護(hù)“五步法”管理機(jī)制,落實(shí)主機(jī)ACL 配置,守好主機(jī)的第一道大門,某運(yùn)營商的主機(jī)安全風(fēng)險(xiǎn)隱患數(shù)持續(xù)下降,核心業(yè)務(wù)系統(tǒng)的主機(jī)網(wǎng)信安保障水平得到顯著提升。
本文提出的基于PDCA 的主機(jī)網(wǎng)信安全數(shù)字化防護(hù)“五步法”管理機(jī)制,通過建立訪問矩陣、智能分析風(fēng)險(xiǎn)、正式啟用配置、智能交叉核查、整改主機(jī)ACL 五個(gè)階段的循環(huán)開展,保證了主機(jī)防護(hù)配置的準(zhǔn)確性、完整性和業(yè)務(wù)風(fēng)險(xiǎn)可控,解決維護(hù)人員不敢配、不會配和不想配的問題,實(shí)現(xiàn)了主機(jī)ACL 配置的“零成本,零影響,精準(zhǔn)控制”,可以減少部署網(wǎng)絡(luò)防火墻、蜜罐、全流量檢測系統(tǒng)等安全設(shè)備,預(yù)計(jì)節(jié)省運(yùn)營商至少3 000 萬元網(wǎng)信安類軟硬件的建設(shè)投資?;赑DCA 的主機(jī)網(wǎng)信安全數(shù)字化防護(hù)“五步法”管理機(jī)制有效構(gòu)建了核心業(yè)務(wù)平臺的主機(jī)安全防護(hù)能力,成為核心業(yè)務(wù)平臺安全防護(hù)體系至為重要的組成部分,在全國范圍內(nèi)具有借鑒推廣價(jià)值。