茍杰 李春強 丘國偉
摘 要:FBI和CSI曾對484家公司進行了網(wǎng)絡安全專項調(diào)查,調(diào)查結果顯示:超過85%的安全威脅來自公司內(nèi)部。隨著時間的增長互聯(lián)網(wǎng)技術愈發(fā)成熟,企業(yè)內(nèi)部網(wǎng)絡系統(tǒng)更加復雜,這些系統(tǒng)更加頻繁地被曝出漏洞。此外,黑客水平越來越高,漏洞利用門檻也越來越低,這些趨勢使得企業(yè)內(nèi)網(wǎng)安全防御變得十分緊要。此次研究開發(fā)企業(yè)內(nèi)部聯(lián)網(wǎng)設備安全風險檢測與防御系統(tǒng),目的在于探索一種集監(jiān)測、主動發(fā)現(xiàn)、威脅解決為一體的閉環(huán)內(nèi)網(wǎng)安全防御體系。此次研究中,完成了被動監(jiān)測、主動發(fā)現(xiàn)、漏洞修復等模塊的設計實施工作,這些工作使得防御體系,可以克服當下安全軟件功能強大但解決問題單一、多個軟件間的協(xié)作困難的問題。
關鍵詞:網(wǎng)絡安全 ;被動防御 ;主動防御 ;計算機網(wǎng)絡
中圖分類號:TP393.08 文獻標識碼:B
Abstract: The FBI and CSI conducted a special survey of network security for 484 companies. The survey results show that more than 85% of the security threats come from inside the company. With the growth of time, Internet technologies have become more mature, and the internal network systems of enterprises have become more complicated. These systems have been exposed to Vulnerability more frequently. In addition, the level of hackers is getting higher and higher, and the threshold for exploitability is getting lower and lower. These trends make intranets Security defense has become very important. Our research and development of enterprise internal networked device security risk detection and defense systems aims to explore a closed-loop internal network security defense system that integrates passive monitoring, active discovery, and active threat resolution. In this study, passive monitoring, active discovery, and bug fixes were implemented. These efforts made it possible for the defense system to overcome the problems of the current security software, which is powerful but just has a single function and the collaboration between multiple softwares is difficult.
Key words: network security; passive defense; active defense; compute network
1 引言
任何內(nèi)網(wǎng)系統(tǒng)都面臨威脅,企業(yè)內(nèi)部網(wǎng)絡系統(tǒng)則是更有價值的被攻擊對象,這里可能有企業(yè)商業(yè)機密,有用戶數(shù)據(jù),有企業(yè)員工隱私,一旦被攻破必將損失巨大,而且更加令人不寒而栗的情況是黑客拿走了企業(yè)的機密數(shù)據(jù)企業(yè)卻并不知情,這將使得企業(yè)和用戶,員工都深陷危機而不自知。
黑客可以有多種手段攻擊企業(yè)內(nèi)網(wǎng),比如利用惡意軟件、系統(tǒng)漏洞、企業(yè)內(nèi)部系統(tǒng)漏洞等等。為此多數(shù)企業(yè)采用了網(wǎng)段隔離、防火墻等基本手段來進行內(nèi)網(wǎng)邊界防護安全建設,這些方法都效果顯著的阻止外部的網(wǎng)絡入侵,但是一旦有黑客控制了內(nèi)網(wǎng)中的某一臺機器,邊界防護便再也無法提供有效防護,很明顯我們需要一套內(nèi)網(wǎng)威脅監(jiān)測處理的安全解決方案,這也是我們所做工作的目的。
當然,市面上有很多安全防護軟件用以解決上述問題,我們所用的開源蜜罐系統(tǒng)MHN用于被動監(jiān)測多種內(nèi)網(wǎng)威脅信息,使用的開源OMP(OpenVAS Management Protocol)協(xié)議來源的開源漏掃工具Openvas是一款優(yōu)秀的主動威脅發(fā)現(xiàn)工具,不過這些工具不是專門為內(nèi)網(wǎng)設計的,在內(nèi)網(wǎng)應用中會有一些不足,并且在軟件之間的配合使用上,需要大量依靠人工處理。因為他們互相之間沒有一個有效的通信機制。此外,在市場上未找到優(yōu)秀的網(wǎng)絡漏洞修復工具(并非指系統(tǒng)漏洞修工具),因此會嘗試制作一個漏洞修復工具,使得整個過程能夠形成閉環(huán)并且盡量減少人工操作。
除了展示如何設計實施內(nèi)網(wǎng)防御系統(tǒng),本文也將基于局域網(wǎng)搭建的環(huán)境展示如何利用制作的工具進行漏洞防御。
2 基于MHN和OMP的企業(yè)內(nèi)網(wǎng)安全防御工具設計與實施
由于目的是要構建自動化的內(nèi)網(wǎng)安全防御體系,因此需要能夠?qū)?nèi)網(wǎng)網(wǎng)絡威脅動態(tài)實時掌控,需要對內(nèi)網(wǎng)設備進行安全排查以及修復檢查出來的威脅。
對于內(nèi)網(wǎng)威脅動態(tài)的掌握我們不能簡單的采取截獲內(nèi)網(wǎng)流量方式,因為截獲流量之后分析流量將十分困難。蜜罐系統(tǒng)是一個不錯的選擇,由于不同蜜罐可以截獲不同種類的威脅信息而不需要再次處理原始數(shù)據(jù),因此很適合用作內(nèi)網(wǎng)威脅預警。
對于內(nèi)網(wǎng)設備的安全排查,這是一項工作量很大的工作,因為漏洞數(shù)量不斷增加,安全排查的范圍也在不斷增加。不過幸運的是市場上已經(jīng)有成熟的網(wǎng)絡漏洞掃描器,只需要基于這些掃描器進行適當?shù)男薷木涂梢杂糜趦?nèi)網(wǎng)安全排查了。
至于威脅修復目前沒有找到合適的產(chǎn)品,需要自己實現(xiàn)。此處,我們面臨最大的問題就是漏洞修復方式:是使用端口屏蔽,還是利用漏洞本身控制設備進行修復。使用端口屏蔽方式實現(xiàn)簡單,但是業(yè)務端口不適用此方法。使用漏洞本身控制設備這一方式,可以精準修復,但是實現(xiàn)復雜(每個漏洞都有不同的利用方法),并且企業(yè)也不會希望安全防御軟件利用漏洞控制企業(yè)設備。最終,決定采用端口屏蔽方式,并且將端口屏蔽無法處理的業(yè)務端口漏洞提交給人工修復。
根據(jù)上述初步系統(tǒng)設計之后,系統(tǒng)的基本結構如圖1所示(蜜罐系統(tǒng)選用MHN,掃描器基于Openvas的OMP協(xié)議)。
2.1 MHN蜜罐系統(tǒng)改造
之所以選用MHN蜜罐系統(tǒng)是因為其開源、成熟,且相比較與其他的蜜罐系統(tǒng)其支持蜜罐種類更加豐富。
首先從github地址github.com/threatstream/mhn處按照說明安裝開源MHN系統(tǒng),此系統(tǒng)僅適用于Linux系統(tǒng)。
MHN系統(tǒng)結構如圖2所示。
由圖2可以看出,MHN系統(tǒng)以mongoDB為中心,以mongoDB為分界左邊是蜜罐數(shù)據(jù)收集部分,右邊是與用戶交互部分,此次要修改的就是其中的Webapp模塊,目標是通過修改使得此系統(tǒng)更加適合內(nèi)網(wǎng)監(jiān)測,并且可以和后續(xù)的掃描模塊進行配合。
MHN的Webapp目錄位于opt/mhn/server下,此Webapp使用flask+python為主要開發(fā)環(huán)境,Webapp使用的非蜜罐信息都存儲于opt/mhn/server/mhn。db中,蜜罐返回信息存儲于mongoDB中。
首先,在首頁添加了詳細概覽頁方便查看攻擊情況,如圖3所示。
然后,添加了基于內(nèi)網(wǎng)IP過濾的攻擊—網(wǎng)關—目標溯源拓撲圖展示,并且在檢測到攻擊節(jié)點之后,將會調(diào)用SCANNER模塊對來源及其進行主動漏洞發(fā)現(xiàn),并且掃描結果會傳入修復模塊進行可能的修復,如圖4所示。
添加權限管理,方便部署在各個網(wǎng)段的蜜罐有對應人員管理,如圖5所示。
如何修改或添加這些功能,鑒于文章篇幅此處不再細說,使用普通的Web開發(fā)技術(Python+Flask)即可完成
完成上述工作之后就可以部署自己的蜜罐了。在軟件的部署檢測器選項卡處可以看到,只需要在蜜罐機中下載并執(zhí)行本MHN系統(tǒng)中的一個basn腳本,即可完成蜜罐安裝,十分方便,如圖6所示。
安裝完成之后蜜罐被自動添加到,監(jiān)測器選項卡界面中,如圖7所示。
至此蜜罐系統(tǒng)修改部署完成。
2.2 基于OMP的SCANNER掃描模塊設計實施
在網(wǎng)絡漏洞掃描器領域做得領先的就屬Nessus了。但是,由于其為商業(yè)軟件,無法對其進行修改,因此選擇了它的開源分支Openvas。Openvas同樣是一款優(yōu)秀的網(wǎng)絡漏洞掃描器,它有超過5萬個插件,并且仍然在持續(xù)增加中。
基于Openvas提供的OMP協(xié)議,我們對這款開源漏掃工具進行了一些定制,使得其能更好地與MHN被動監(jiān)測和漏洞修復模塊進行協(xié)作,以及用戶在使用上更加簡單。Openvas的架構如圖8所示。
在圖8中可以看到,OMP協(xié)議位于Services和Client之間,即Service與Client通信使用的是OMP協(xié)議,因此在這里是使用OMP協(xié)議調(diào)用Openvas底層服務完成掃描需求,使用Python+Django+MySQL編寫掃描控制。
本文僅以新建任務為例說明實現(xiàn)原理。
首先,在OMP文檔中找到新建任務的控制語句:
然后,再在程序中調(diào)用此語句并解析返回XML完成任務創(chuàng)建,調(diào)用上述XML命令方法為omp–u、用戶名–w、密碼-iX、“XML語句”,實際代碼實現(xiàn),如圖10所示,代碼功能為創(chuàng)建任務并且獲取返回任務ID字符串;簡要展示掃描控制流程。
任務創(chuàng)建:包含名稱、配置、目標以及定時任務,如圖11所示。
任務管理:包含開始、停止、刪除、狀態(tài)、報告、進度等等基本功能,如圖12所示。
2.3自動修復模塊設計實施
為了簡化工作量,我們設計自動修復模塊只提供修復相關功能,與用戶交互部分被整合在掃描控制的Webapp中。在掃描控制的Webapp界面中用來呈現(xiàn)修復結果,也用來設置是否開啟自動修復等。
自動修復模塊依賴于SCANNER掃描模塊傳入的掃描結果信息,修復模塊進行處理之后,存入修復結果進入數(shù)據(jù)庫。
該模塊被設計成使用Tcp Server接收掃描結果信息,處理漏洞方式為:調(diào)用漏洞所需的修復插件(該插件與掃描插對應),或者針對網(wǎng)絡端口進行屏蔽實現(xiàn)漏洞緩解,如果當前插件和環(huán)節(jié)措施都無法解決此漏洞就返回無法修復結果至漏洞修復的交互界面,具體表現(xiàn)為已修復的漏洞為藍色條目,需要手動修復的為紅色條目,如圖13所示。
3 防御系統(tǒng)實例分析
3.1簡述
本節(jié)將使用一臺至今已有18個月未更新過的Windows虛擬機作為靶機,該靶機含有多個SMB服務高危漏洞,我們將詳細闡述被入侵之后的系統(tǒng)防御以及簡要介紹未被入侵的的情況下的系統(tǒng)防御(因為兩種方式的防御步驟很相似)。
3.2 SMB服務簡述以及SMB漏洞
SMB全稱Server Message Block,是Microsoft基于NetBIOS設定的一套文件共享協(xié)議應用程序可以通過協(xié)議訪問遠程服務器端的文件、打印機、郵件槽(Mailslot)、命名管道(Namedpipe)等資源。
在2017年NSA方程式的工具泄露事件暴露了多個SMB多個0day漏洞,這些漏洞產(chǎn)生了很多大規(guī)模的惡劣影響諸如WannaCry、EternalRocks蠕蟲、UIWIX勒索軟等。
具體的SMB高危漏洞可以根據(jù)CVE編號詳細了解: CVE-2017-7494、CVE-2017-0143、CVE-2017-0144、CVE-2017-0145、CVE-2017-0146、CVE-2017-0147和CVE-2017-0148,這些都是可以造成遠程代碼執(zhí)行的最近的高危漏洞??梢钥闯?,SMB的漏洞威力巨大,且數(shù)量較多。
3.3實驗環(huán)境
本次實驗環(huán)境由多個不同系統(tǒng)的虛擬組成,如表1所示。
3.4 防御流程簡述
被入侵之后的防御流程,如圖14所示。
定期常規(guī)檢測流程,如圖15所示。
3.5 被入侵之后的防御流程
(1)在靶機192.168.204.151上使用Nmap掃描蜜罐機192.168.204.150模擬被入侵之后局域網(wǎng)內(nèi)部感染,此處并不是一定要使用Nmap掃描,因為即使是使用簡單的ping命令也同樣可以被蜜罐捕獲,Nmap掃描命令為: nmap -T4 -A -v 192.168.204.150
(2)掃描信息被蜜罐機捕獲,將捕獲信息發(fā)送至MHN服務器192.168.204.200。 MHN服務器存儲結果并且溯源攻擊機器(溯源使用Tracerroute工具),通過Web界面展示結果,如圖16所示。
(3)MHN在溯源的同時訪問掃描修復服務器192.168.204.152添加掃描任務開始掃描,掃描結果如圖17、圖18和圖19所示。
(4)掃描修復服務器執(zhí)行完掃描任務后將執(zhí)行修復,具體的修復方式是調(diào)用修復服務器下的與NVT掃描插件相對應的修復插件。此處針對這兩個高危SMB漏洞的插件原理是設置靶機的防火墻規(guī)則,即屏蔽445端口,由于該機器已經(jīng)被感染,此機器會被注銷。由于修復機器本身沒有權限在靶機上執(zhí)行代碼,因此靶機會事先打開一個TCP Server,接收一個端口參數(shù),用來遠程關閉端口。
插件核心代碼示意如圖20所示。
靶機上運行的代碼,主要負責操作防火墻和注銷機器。
掃描修復機器上運行的代碼,主要發(fā)送需要關閉的端口號,如圖21所示。修復后的靶機防火墻配置,如圖22所示。
這里由于實驗條件限制(沒有局域網(wǎng)網(wǎng)防火墻),只能操作靶機防火墻進行端口屏蔽,但是實際中企業(yè)的局域網(wǎng)會有網(wǎng)段防火墻,只需要操作網(wǎng)段防火墻即可,無需在靶機上設置TCP Server。
修復結果(藍色代已修復,紅色代表未修復),如圖23和圖24所示。
4 結束語
本次研究基本實現(xiàn)了所希望的閉環(huán)內(nèi)網(wǎng)的安全防護,即從監(jiān)測到檢測到修復的一個回路,使得多個軟件可以互相配合,且讓防御流程盡量實現(xiàn)自動化。實現(xiàn)防御回路的根本目的就是為了實現(xiàn)內(nèi)網(wǎng)安全防御的自動化,這樣不僅有利于減少人工成本開支,而且重要的是自動化的處理比人工處理更加敏捷高效,這對于控制漏洞造成的損失來說是十分關鍵的。更高的自動化程度,也意味著更低的概率出現(xiàn),因為人的大意操作導致修復完一個漏洞卻暴露出其他漏洞的情況。不過,仍有許多需要完善的部分。
自動修復。整個系統(tǒng)唯一需要人工處理的部分就是修復模塊了。當前實現(xiàn)的只能算是半自動的修復,因為業(yè)務端口的漏洞需要手動修復。需要更加完善的自動修復機制使得其能夠?qū)I(yè)務端口漏洞也實現(xiàn)有效且安全的自動修復。
同時,還需要進行更多的研究和實驗用來完善不足之處,以應付更復雜的實際網(wǎng)絡情況,更大限度地提高內(nèi)網(wǎng)設備的安全性。
基金項目:
核高基重大專項資助項目(項目編號:2012ZX01039-004-48),中國科學院網(wǎng)絡測評技術重點實驗室資助。
參考文獻
[1] 王順.Web網(wǎng)站漏洞掃描與滲透攻擊工具揭秘[M].北京:清華大學出版社,2016.
[2] Greenbone(公司).OpenVAS Management Protocol (OMP)[EB/OL].2017.
[3] Threatstream(公司).Modern Honey Network[EB/OL].2017.
[4] 董偉明.Python Web開發(fā)實戰(zhàn)[M].北京:電子工業(yè)出版社,2016.
[5] 熊華.網(wǎng)絡安全:取證與蜜罐[M].北京:人民郵電出版社,2003.
[6] 林寬勝.基于企業(yè)信息系統(tǒng)的網(wǎng)絡安全研究[J].網(wǎng)絡空間安全,2016.
[7] 胡國強.從勒索病毒看網(wǎng)絡信息安全的隱患與對策[J].網(wǎng)絡空間安全,2018.
作者簡介:
茍杰(1995-),男,漢族,四川巴中人,北京信息科技大學;主要研究方向和關注領域:網(wǎng)絡攻防。
李春強(1973-),男,漢族,吉林敦化人,北京理工大學,計算機應用技術專業(yè),博士;主要研究方向和關注領域:智能信息處理技術、網(wǎng)絡空間安全。
丘國偉(1987-),男,漢族,福建上杭人,北京信息科技大學,本科,學士,高級工程師;主要研究方向和關注領域:信息安全技術、智能信息處理技術。