攻防實戰之藍隊視角下的戰前準備
孫子兵法中曾講到“知己知彼,百戰不殆”。在攻防實戰開始之前,充分了解自身安全狀況是防守藍隊在備戰前不可或缺的重要一步,從資產梳理、風險排查、安全管理等各方面有序進行,確定公司企業自身的安全防護能力,能夠為后續工作提供強有力的支撐。下面就防守藍隊備戰前的準備工作進行簡要敘述。
一、資產梳理
隨著企業業務的不斷膨脹,越來越多的設備、系統等管理混亂,私搭亂建現象較為嚴重,安全管理分工不明確等問題依然嚴峻。在攻防實戰開始之前防守藍隊有必要進行資產梳理,其目的是為公司企業能夠做到“摸清家底”,對自己當前資產做一個詳細梳理,以便在攻防實戰期間能夠坦然應對。
1.1 安全設備資產
安全設備是阻擋紅隊攻擊的重要屏障。對現有安全設備進行有效清點,防守藍隊需明確每臺安全設備功能,有效期限,廠家聯系人,管理運維人員,設備責任人,運行狀態,防護區域,是否需要升級等情況進行有效梳理和檢查,并對存在的相關問題及時協商解決。如有條件企業可購進新型安全產品進行部署。
1.2 開發環境、測試環境
開發環境是程序猿們專門用于開發的環境。測試環境是在產品上線前進行的功能測試與安全測試的環境。
開發環境與測試環境的服務器配置比較隨意,存在的安全問題較多,資產私搭亂建,較為很難梳理,在攻防演練前有必要做好以下幾點的安全防護:
(1)代碼倉庫排查:嚴禁泄露公網(github)、公司內部代碼倉庫安全性排查等;
(2)禁止開發環境、測試環境被攻防訪問;
(3)禁止開發環境、測試環境的弱口令問題;
(4)禁止開發環境、測試環境使用已公開的、存在安全問題的相關組件或者工具設備;
1.3 生產環境資產
對外服務資產是紅隊密切的關注點。針對對外服務資產進行有效清點,防守藍隊可對現有的web服務進有效分類,明確主機系統類型及版本,web系統功能,系統間關聯性,web資產域名,ip地址,端口號,開發框架,中間件類型及版本號,服務器地理方位,使用者、維護者、責任人姓名,聯系方式等。
1.4 外包業務資產
外包管理是“剛需”,近年來企業科技外包發展趨勢迅猛,外包涉及范圍逐漸擴大,已幾乎涵蓋了培訓、要求、設計、實施等生命周期的各個階段。部分企業由于外包問題所引發的敏感信息泄露層出不窮,外包業務作為攻防實戰中的暴露口,必須加以重視。針對外包業務資產業務進行有效清點,公司企業需提前通知攻防實戰開始及截至時間,簽署責任協議,明確外包聯系人、值班安排狀況等。
二、風險排查
風險排查在攻防實戰之前扮演著舉足輕重的角色。全面的風險排查,可以有效的降低實戰過程中被紅隊攻破的可能,在攻與防的競賽中處于主動狀態,進而保證藍隊人員有條不紊的持續進行。
2.1 基礎設施風險排查
2.1.1 設備功能排查
對公司企業的服務器、審計系統、防火墻、堡壘機、流量檢測設備、IPS\IDS等設備功能是否正常運行進行有效排查(廠商審核),對重要設備有選擇性升級,更新特征庫。對于安全設備所覆蓋范圍進行有效排查,盡可能做到無死角全覆蓋。有條件的公司也可引進新型的安全設備進行部署。也可采用矩陣監控的方式,以橫向和縱向雙維度進行匹配排查設備運行狀態。
2.1.2 安全漏洞管理
技術漏洞管理通常用于緩解或防止系統中存在技術漏洞的利用問題。通常可包括五個關鍵步驟:計劃漏洞管理、發現已知漏洞、掃描漏洞、記錄報告、補丁修復。其中,后四步在攻防實戰前的安全排查尤為重要。

圖2.1 漏洞管理的步驟
1) 發現已知漏洞,可通過相關監控設備實時對漏洞數據庫平臺監控(美國國家標準與技術研究所,NIST;國家漏洞數據庫,NVDB;),對與企業資產相關的漏洞有效匹配和補丁核實。
2) 漏洞掃描:除了監控漏洞報告服務之外,企業也可應用掃描工具(綠盟漏掃等) 及時發現軟件、系統、網絡中的漏洞。為防止掃描產生大量誤報的情況,可使用多臺掃描工具,進行背靠背掃描。并生成掃描報告。
3) 記錄報告:對比掃描報告結果,可按多臺掃描工具的重復率、漏洞的危害程度進行有序排列,并與資產信息表進行核實。
4) 補丁修復:將重復率較高且影響較大的高危漏洞優先進行修復。將重復率較低的漏洞與公開數據庫和資產清單進行核實,著重修復。
2.1.3 訪問權限檢查
系統訪問是限制授權用戶為特定業務目的訪問業務應用程序、移動設備、系統和網絡的能力。系統訪問一般包括三種功能:認證、授權和訪問控制。有效的訪問限制和權限管理是將攻擊者拒之門外的最后1公里。應確保不同角色的用戶具有相應的訪問權限,刪除更改或者離開組織的關聯權限。管理員應全面檢查系統、數據庫、對外服務相關權限設置,以確保最小權限原則,過期的授權應予以刪除。
2.1.4 重要信息備份
在大型的紅藍對抗賽中,數據備份是必不可少的重要一步。在攻防實戰之前對重要的資產數據、用戶信息等進行數據備份,可以有效防止在實戰期間紅隊的不正當操作造成數據庫損壞、系統崩潰宕機等導致數據丟失,給公司企業造成不可挽回的經濟損失。
2.2 互聯網暴露面排查
2.2.1 冗余資產排查
所謂冗余資產主要指公司企業未使用卻仍占用系統資源的資產,例如:陳舊的web服務或數據庫,公司開放的測試環境等。由于公司的冗余資產往往缺乏人員管理與維護,很多系統漏洞未進行補丁升級,部分測試環境存在弱口令、未完全開發存在的邏輯漏洞等層出不窮,該部分業務非常容易遭紅隊攻擊。對于該類業務在攻防實戰之前建議關停。針對關停部分業務以后,對業務剩余存活主機的ip資產、端口開放、服務版本,內網主機ip信息、端口開放、服務版本進行精確梳理;
2.2.2 對外服務排查
公司的對外服務是攻擊者最近的接觸點,對外服務包括但不限于對外服務網站、微博、公眾號、郵件服務系統、api接口等。建議在攻防實戰之前對對外服務進行有效梳理和排查,關停或隱藏暴露于公網的后臺登陸界面、運營管理界面、設備管理界面等。有條件的公司企業也可統一更換服務網站、微博、公眾號、郵件系統等口令信息。
對于大中型企業,資產業務較為繁多,傳統的以人工識別為基礎方式效率較低而且容易出錯。目前常見的資產發現識別手段主要有三種:主動探測、被動流量發現、Agent獲取,一般為能夠較準識別和梳理可交叉使用以上三種方法:
主動探測,主要基于namp、msscan等探測技術對資產進行有效識別。
被動流量發現,主要指基于流量識別檢測正在使用的設備、服務和應用程序,可在公司核心路由部署流量檢測設備進行資產發現。
Agent獲取,指通過在服務器上部署安裝agent對資產進行有效識別。
2.2.3 對外開放端口
在攻防實戰之前有效的端口管控是將紅隊拒之門外的前提條件。對于大中型企業的資產較多,端口管控較為困難,紅隊通過對端口發起有效入侵是最直接、最有效的途徑之一。常見的開放端口服務包括但不限于:ssh、ftp、telnet、snmp、遠程桌面、mysql、oracle、postgresql、redis、memcached、hadoop、HBase、mangodb、JAVA RMI等。
對于對外服務系統,建議關閉不必要的端口,例如web服務器可只開放80,443端口,對于數據庫等可配置拒絕遠程連接操作。其次,可在防火墻上對對外開放的端口進行嚴格限制。原則上來講,DMZ服務器只允許開放80、443端口,而且DMZ服務器不允許主動訪問外部,訪問外部的業務需要一對一訪問。為了更加安全,以防紅隊人員探測到web服務,也可將低位端口改為高位端口,例如80端口可改為50080等。這樣可在一定程度上做到避免攻擊方的探測。同時,也可通過端口掃描工具對公司企業的對外服務進行集中掃面排查。例如nmap、msscan等。
2.3 賬號信息排查
攻防實戰之前對賬號信息的有效排查是將攻擊者拒之門外的最后十英尺。據統計,在以往攻防演練中,百分之99.8的攻擊隊伍都會應用口令枚舉、暴力破解等方式對目標系統發起攻擊。而百分之38.9的概率能夠被紅隊攻擊成功。所以在攻防實戰之前隊賬號信息的有效排查是非常有必要的。
1) 弱口令,伴隨信息化的發展,錯綜的復雜業務交織,人們為了方便記憶總會用一些簡單,容易記憶的口令作為自己的登陸密碼。攻擊者往往會利用這一特點對目標發起口令攻擊。公司企業在攻防實戰之前對弱口令進行有效排查也是必不可少的關鍵一步,排查包括但不限于:數據庫弱口令、主機弱口令、遠程連接弱口令、后臺管理弱口令等。
2) 離職人員賬號&僵尸賬號,檢查離職員工賬號是否正常刪除,以防止離職后的員工直接登陸或者賬號密碼外流等方式對公司的安全造成嚴重威脅。所謂僵尸賬號是指長時間未曾使用過的賬號,排查僵尸賬號是否存在一人多號,人號不匹配、人員調離等情況,并對審核后的僵尸賬號進行及時處理。
3) 共享賬號,共享賬號指多人共用單一賬號,建議對于該類賬號進行實名制區分管理,以防止事故發生后,無法溯源與責任追究等情況。
三、安全管理
此處的“安全管理”不同于企業安全架構中的安全管理中心。該處安全管理主要指在攻防實戰之前的臨時統一管控,保證在紅隊攻擊過程中能夠有效應對,各盡其職,有條不紊。其中可以包括員工安全意識培訓、建立合理的安全組織架構、建立有效的工作溝通渠道、成立防護工作組、紅隊滲透測試等。
1) 對全體員工進行信息安全意識和教育培訓,包括IT員工、IT安全人員、管理人員和其他員工。所有員工都有安全責任、都必須接受適當的安全意識培訓。讓員工了解不同類型的不恰當行為,例如:郵件釣魚、人員假冒等。可以有效降低紅隊攻擊人員的社工攻擊。
2) 建立合理的安全組織架構,結合工作小組的責任和內容,有針對性地制定工作計劃、技術方案及工作內容,責任到人、明確到位,按照工作實施計劃進行進度和質量把控,確保管理工作落實到位,技術工作有效執行。
3) 建立有效的工作溝通渠道,通過安全可信的即時通訊工具建立實戰工作指揮群,及時發布工作通知,群內簽到,共享信息數據,了解工作情況,實現快速、有效的工作溝通和信息傳遞。
4) 成立防護工作組,開展并落實技術檢查、整改和安全監測、預警、分析、驗證和處置等運營工作,例如:安全監測小組、安全處置小組、安全應急小組、安全保障小組、指揮中心等。用以完善安全監測、預警和分析措施,完善的安全事件應急處置和可落地的流程機制,提高事件的處置效率。其中,全流量安全威脅檢測分析系統是防護工作的重要關鍵節點,并以此為核心,有效地開展相關防護工作。
5) **紅隊滲透測試,**任何公司企業不可能做到百分百安全,為了檢驗公司的安全防護能力。公司可組織紅隊人員安全檢測評估。以紅隊攻擊報告為參考,對疏漏的安全問題及時進行修復。
四、相關參考
[1] 奇安信:《實戰攻防演練之藍隊視角下的防御體系構建》
[2] 聶君:《企業安全建設指南》
[3] 威廉·斯托林斯:《EFFECTIVE CYBERSECURITY》