朱宏宇,田崢,薛海偉,漆文輝,鄭穎慧
(1.國網(wǎng)湖南省電力公司電力科學(xué)研究院,湖南長沙410007;2.湖南省湘電試驗(yàn)研究院有限公司,湖南長沙410004)
電力信息網(wǎng)絡(luò)邊界端口自動化監(jiān)測工具實(shí)踐
朱宏宇1,田崢1,薛海偉1,漆文輝1,鄭穎慧2
(1.國網(wǎng)湖南省電力公司電力科學(xué)研究院,湖南長沙410007;2.湖南省湘電試驗(yàn)研究院有限公司,湖南長沙410004)
隨著智能電網(wǎng)和全球能源互聯(lián)網(wǎng)的發(fā)展深入,電力行業(yè)中眾多專業(yè)的信息化程度不斷提高,信息安全在電力系統(tǒng)的安全運(yùn)行中正處于越來越基礎(chǔ)的地位。信息網(wǎng)絡(luò)邊界監(jiān)測是一項(xiàng)需要常態(tài)化、人工分析工作量大的信息安全工作。本文通過深入分析邊界監(jiān)測工作的特點(diǎn)和難點(diǎn),設(shè)計(jì)研發(fā)出一種自動化端口掃描及結(jié)果分析工具,提高了邊界端口監(jiān)測工作的效率和準(zhǔn)確度。
電力信息;信息安全;邊界監(jiān)測
隨著 《中華人民共和國網(wǎng)絡(luò)安全法》的出臺,網(wǎng)絡(luò)信息安全已成為國家發(fā)展的最高戰(zhàn)略方向之一,作為安全法中定義的關(guān)鍵信息基礎(chǔ)設(shè)施運(yùn)營者、網(wǎng)絡(luò)運(yùn)營者、網(wǎng)絡(luò)產(chǎn)品服務(wù)提供者,國家電網(wǎng)公司正在不斷加快強(qiáng)化信息安全防護(hù)能力,以保障電力信息系統(tǒng)的網(wǎng)絡(luò)信息安全〔1〕。信息安全技術(shù)監(jiān)督是保障信息安全的重要途徑,它通過信息安全技術(shù)手段對現(xiàn)有的信息系統(tǒng)進(jìn)行深入檢查以暴露其存在的隱患和漏洞,并且持續(xù)跟蹤與監(jiān)控漏洞或隱患的整改情況,從而形成閉環(huán)的監(jiān)督機(jī)制〔2〕。
信息安全督查工作中需要定期對一定數(shù)量的信息系統(tǒng)進(jìn)行清查,將掃描出的、當(dāng)前實(shí)際開放的端口與已備案的、允許開放的端口進(jìn)行比對,從而及時發(fā)現(xiàn)是否有端口違規(guī)開放〔3〕。端口掃描清查工作具有以下特點(diǎn):1)定期性和持續(xù)性。為了保障信息網(wǎng)絡(luò)的安全,需要定期、多次地對目標(biāo)網(wǎng)段的端口進(jìn)行掃描,持續(xù)關(guān)注目標(biāo)網(wǎng)段的端口開放情況。2)掃描結(jié)果分析比對工作量大且繁瑣。每次完成端口掃描后,需要將掃描到的開放端口與備案表中允許開放的端口進(jìn)行對比,以發(fā)現(xiàn)違規(guī)開放的端口。隨著企業(yè)信息化建設(shè)的推進(jìn),在運(yùn)的信息系統(tǒng)數(shù)量持續(xù)增加,使得人工分析掃描結(jié)果的工作量不斷增加,也加大了人工分析出現(xiàn)差錯的風(fēng)險(xiǎn)。已有文獻(xiàn)中重點(diǎn)關(guān)注網(wǎng)絡(luò)掃描技術(shù)的實(shí)現(xiàn),而對網(wǎng)絡(luò)端口掃描結(jié)果的分析技術(shù)研究不多,缺少一種切合實(shí)際的端口掃描及結(jié)果分析工具。
文中提出了一種自動化端口掃描及結(jié)果分析工具(以下簡稱 “工具”),以提高端口清查工作的效率和準(zhǔn)確度。
從功能上看,此工具可分為三大部分:掃描分析比對、用戶交互、主流程。掃描分析比對部分是工具的主要功能實(shí)現(xiàn)部分,主要完成以下功能:調(diào)用掃描工具進(jìn)行掃描,解析多種格式的掃描結(jié)果文件,比對掃描結(jié)果并生成告警文件。用戶交互部分主要完成參數(shù)輸入及檢查、工具運(yùn)行信息及異常信息實(shí)時輸出等與用戶產(chǎn)生交互的功能。主流程部分是工具的調(diào)度部分,它根據(jù)用戶輸入的參數(shù)類型以一定順序來調(diào)用 “掃描分析比對”和 “用戶交互”部分不同的功能模塊。工具的總體設(shè)計(jì)邏輯如圖1所示。
圖1 工具總體設(shè)計(jì)邏輯
1.1 用戶交互設(shè)計(jì)
為了兼顧運(yùn)行效率與用戶友好性,本工具同時支持命令行與圖形兩種交互界面,使用圖形界面可以直觀方便地選擇功能模式以及設(shè)置參數(shù),而使用命令行方式可以方便地進(jìn)行腳本批處理。本工具在設(shè)計(jì)過程中采用了接口與實(shí)現(xiàn)相分離的設(shè)計(jì)思想,在用戶交互基類中定義其與主流程之間的接口,在兩個用戶交互子類中再去實(shí)現(xiàn)接口,將用戶交互處理與主流程分離開〔4〕,并且統(tǒng)一兩種用戶交互方式與主流程之間的接口,從而最大程度地重用主流程部分的代碼。
通過梳理主流程程序需要與用戶發(fā)生交互的場景,共定義了表1中3個用戶交互部分與主流程部分之間的接口。
表1 用戶交互模塊與主流程模塊之間的接口
本工具中3個類的UML設(shè)計(jì)如圖2所示〔5〕。在UI基類中定義出異常處理、程序過程和結(jié)果信息顯示這3個接口,并在其2個基類——命令行UI類和圖形界面UI類——中具體實(shí)現(xiàn)這3個接口。另外,參數(shù)檢查這個函數(shù)放在UI基類進(jìn)行實(shí)現(xiàn),如此設(shè)計(jì),能保證兩種界面對于參數(shù)的有效性檢查是一致的。工具類具體實(shí)現(xiàn)了掃描分析比對功能,工具類中的部分函數(shù)會與UI類進(jìn)行交互,以處理異常或顯示處理信息。主流程類根據(jù)UI類收集到的用戶參數(shù),調(diào)用工具類中的相應(yīng)函數(shù)以完成相應(yīng)功能。
圖2 工具中類的UML設(shè)計(jì)
1.2 文件解析與結(jié)果比對
本工具要處理的一個關(guān)鍵問題是如何在多種不同格式的結(jié)果文件之間實(shí)現(xiàn)靈活比對,這個問題又可以分解成2個子問題:1)找到解析不同格式文件的方法;2)適當(dāng)調(diào)整函數(shù)粒度,讓不同格式的文件處理之間能靈活重用代碼。
在需求分析階段,首先確定了需要解析的文件格式為純文本、XML和Excel格式,其中掃描工具nmap的掃描結(jié)果文件一般為純文本或XML格式,信息系統(tǒng)備案信息表一般為Excel格式。不同格式的解析文件特點(diǎn)如下:
1)純文本格式的掃描結(jié)果文件。文件后綴為“.gnmap”,也稱為 “Grep輸出”,是一種簡單格式,每行一個主機(jī),可以通過UNIX工具(如grep,awk,cut,sed,diff)和Perl方便地查找和分解,常可用于在命令行上進(jìn)行一次性測試。
2)XML格式的掃描結(jié)果文件。它引用了一個XSL樣式表,用于格式化輸出結(jié)果,類似于HTML。最方便的方法是將XML輸出加載到一個Web瀏覽器,就可以跟瀏覽網(wǎng)頁一樣瀏覽掃描結(jié)果文件。
3)Excel格式的信息系統(tǒng)備案表。這個表中存儲了允許開放的信息系統(tǒng)相關(guān)信息,用于跟掃描結(jié)果文件中的信息進(jìn)行對比。
針對這3種格式的文件,python中都有官方或第三方的模塊可以進(jìn)行解析。
為了更大程度地重用代碼,將掃描結(jié)果比對分析功能細(xì)化為流程,如圖3所示。
圖3 掃描結(jié)果比對分析流程
流程中的第一步和第二步是可選的,根據(jù)用戶的輸入文件類型和參數(shù)來決定是否進(jìn)行這兩步。
本工具支持圖形和命令行兩種用戶界面,為了方便展示,本文只截取了圖形界面。所有圖形界面中可以完成的功能在命令行界面中也可以完成,另外,使用命令行方式可以更方便地進(jìn)行批處理和定時自動運(yùn)行。圖4是本工具的啟動界面。
圖4 工具主界面
本工具支持兩種功能模式:“All”模式和“CmpOnly”模式?!癆ll”模式將用nmap對要掃描的IP端口文件的IP地址進(jìn)行全端口掃描,將掃描出的開放端口與允許開放的IP端口文件中的IP和端口進(jìn)行對比,將違規(guī)開放的端口記錄在報(bào)警文件中。而“CmpOnly”模式將已有的掃描結(jié)果文件中的開放端口與允許開放的IP端口文件中的IP和端口進(jìn)行對比,將違規(guī)開放的端口記錄在報(bào)警文件中。因此,“All”模式適用于還未進(jìn)行過端口掃描的情形,“CmpOnly”模式適用于已經(jīng)進(jìn)行了。
圖5是選擇了 “All”這種功能模式,即點(diǎn)擊了 “All”按鈕后的界面。此時界面上出現(xiàn)了相應(yīng)的功能描述和參數(shù)輸入框。在 “All”模式下,工具將用nmap對要掃描的IP端口文件的IP地址進(jìn)行全端口掃描,將掃描出的開放端口與允許開放的IP端口文件中的IP和端口進(jìn)行對比,將違規(guī)開放的端口記錄在報(bào)警文件中。
圖5 “All”模式界面
在提供了輸入文件和參數(shù)后,點(diǎn)擊開始按鈕開始運(yùn)行程序。界面上會實(shí)時顯示程序運(yùn)行信息,程序運(yùn)行結(jié)束后,通過彈出框提示用戶是否存在違規(guī)開放端口,以及記錄違規(guī)開放端口文件的文件名,如圖6所示。
圖6 “All”模式下的工具運(yùn)行信息
功能模式選擇 “CmpOnly”后,本工具將已有的掃描結(jié)果文件中的開放端口與允許開放的IP端口文件中的IP和端口進(jìn)行對比,將違規(guī)開放的端口記錄在報(bào)警文件中,如圖7所示。
圖7 “CmpOnly”模式下的工具運(yùn)行
在實(shí)際工作中使用此工具能夠提高端口清查的工作效率。原來人工分析需要1~2天的端口比對分析工作,通過本工具,不到一秒鐘就可以自動完成。不但節(jié)省了工作人員核對的時間也能快速地看到比對結(jié)果,大大提高了未備案端口清查的工作效率。此工具還提升了端口分析的準(zhǔn)確度。本工具保證了端口比對分析的 “零”錯誤率,杜絕了人為因素對端口清查結(jié)果的影響,提高了端口分析的準(zhǔn)確性。
文中自動化端口掃描及結(jié)果分析工具實(shí)現(xiàn)了端口掃描、掃描結(jié)果分析、未備案端口告警的自動化,使用此工具,信息安全督查人員將不需要人工分析、人工比對掃描結(jié)果,極大地提高了未備案端口清查工作的效率和準(zhǔn)確度。下一步的工具改進(jìn)方向是:提高后臺程序運(yùn)行的并行度,以滿足監(jiān)測大量端口的需求;集成更多邊界端口監(jiān)測功能,形成監(jiān)測工具集。
〔1〕王棟,陳傳鵬,顏佳,等.新一代電力信息網(wǎng)絡(luò)安全架構(gòu)的思考 〔J〕.電力系統(tǒng)自動化.2016,40(2):6-11.
〔2〕呂廣娟.網(wǎng)絡(luò)安全監(jiān)測分析系統(tǒng)的研究與實(shí)現(xiàn) 〔D〕.北京:華北電力大學(xué),2010.
〔3〕中國國家標(biāo)準(zhǔn)化管理委員會.信息安全技術(shù)信息系統(tǒng)安全管理要求:GB/T 20269—2006〔S〕.北京:中國標(biāo)準(zhǔn)出版社,2006.
〔4〕Erich Gamma,Richard Helm,Ralph.設(shè)計(jì)模式:可復(fù)用面向?qū)ο筌浖幕A(chǔ) 〔M〕.劉建中,譯,北京:機(jī)械工業(yè)出版社,2007.
〔5〕冀振燕.UML系統(tǒng)分析與設(shè)計(jì)教程 〔M〕.北京:人民郵電出版社,2009.
Practice of Automatic Monitoring Tool for Boundary Port of Electric Power Information Network
ZHU Hongyu1,TIAN Zheng1,XUE Haiwei1,QI Wenhui1,ZHENG Yinghui2
(1.State Grid Hunan Electric Power Corporation Research Institute,Changsha 410007,China;2.Hunan Xiangdian Test&Research Institute Co.,Ltd,Changsha 410004,China)
With the development of smart grid and the global energy Internet,the information technology in power industry continues to improve.Information security in the safe operation of power systems are in an increasingly basic position. Information network boundary monitoring is a need for normalization and massive manual analysis.In this paper,through the analysis of the characteristics and difficulties of boundary monitoring,an automated port scanning and result analysis tool is designed and developed to improve the efficiency and accuracy of boundary port monitoring.
power information;information security;boundary monitoring
TP393.0
B
1008-0198(2017)04-0049-04
朱宏宇(1991),女,湖南長沙人,助理工程師,碩士,從事電力信息安全研究。
10.3969/j.issn.1008-0198.2017.04.014
2017-03-01 改回日期:2017-05-14