摘要:終端作為信息安全的薄弱地帶,逐漸成為各類安全事件的目標和發(fā)生地。隨著信息技術的發(fā)展,網(wǎng)絡攻擊手段進一步豐富,大量樣本變種涌現(xiàn),采用病毒庫升級、定時查殺等傳統(tǒng)方式,已經(jīng)難以應對網(wǎng)絡中大規(guī)模、無差別的攻擊行為。針對未知威脅的檢測能力和響應能力,是對終端安全提出的新的要求。通過對傳統(tǒng)防火墻、入侵檢測技術進行研究,基于安全聯(lián)動思想提出了一套終端框架安全,并在Linux平臺下給出具體的設計方案和策略建議,為終端安全研究提供思路。
0 引言
工信部印發(fā)的《大數(shù)據(jù)產(chǎn)業(yè)發(fā)展規(guī)劃(2016—2020)》指出,到2020年,大數(shù)據(jù)產(chǎn)業(yè)體系基本形成,其相關的產(chǎn)品和服務業(yè)務收入突破1萬億元,年均復合增長率保持在30%左右。近年來,大數(shù)據(jù)技術的創(chuàng)新和發(fā)展為人們的生活帶來了極大的便利,同樣也為信息安全引入了一系列的挑戰(zhàn)。個人隱私泄露、終端被植入木馬等各類安全事件頻出,傳統(tǒng)的防御手段面臨著嚴峻挑戰(zhàn),對新一代網(wǎng)絡安全技術的研究逐漸成為全球關注的焦點。
一個安全事件,無論在網(wǎng)絡中經(jīng)過多少環(huán)節(jié),使用多少技術手段,最終目的都是為了完成某些未經(jīng)授權的工作,如竊取數(shù)據(jù)、破壞系統(tǒng),或者潛伏下來以備后用。這些動作的完成,大多數(shù)是通過終端實現(xiàn)的。然而,由于終端部署具備分散性的特點,直接接觸用戶,物理環(huán)境、網(wǎng)絡環(huán)境復雜多變,可以說終端是最難實施有效管理的環(huán)節(jié),可能成為信息安全體系的薄弱地帶。因此,終端逐漸成為安全事件的目標和發(fā)生地,也成為數(shù)據(jù)安全的主戰(zhàn)場。
本文基于Linux平臺提出了一套終端安全框架,結(jié)合傳統(tǒng)的主動防御機制與防火墻技術,重點探討了安全聯(lián)動功能的設計與實現(xiàn)。第一部分從新時代終端安全防護體系入手,介紹了終端安全框架的組成。第二、第三部分從終端的角度,分別探討Iptables防火墻規(guī)則配置策略和入侵檢測模塊的選擇。第四部分提出利用決策響應模塊,實現(xiàn)防火墻與入侵檢測的安全聯(lián)動功能。最后一部分對全文進行總結(jié)。
1 終端安全框架
360企業(yè)安全集團副總裁張聰認為,新時代的終端安全體系應該具備:針對已知威脅的評估能力、攔截能力,以及針對新威脅的檢測能力和響應能力[1]。因此,基于終端構建網(wǎng)絡安全框架,防火墻和入侵檢測是其中必不可少的組成部分。
然而,防火墻是一種靜態(tài)安全技術,需要設置規(guī)則才能起到防護作用,無法主動跟蹤入侵源,也不能對實時攻擊做出響應;入侵檢測作為主動防御機制,雖然可以監(jiān)控網(wǎng)絡傳輸、檢測入侵行為,但無法做到實時阻斷。因此,必須有一套安全、合適的技術,在終端上將兩個功能模塊聯(lián)合起來發(fā)揮效用,做到動靜結(jié)合、優(yōu)勢互補。
本方案提出的終端安全框架包括:防火墻、入侵檢測和決策響應三個組成部分。通過決策響應實現(xiàn)安全聯(lián)動功能,將入侵檢測同防火墻聯(lián)系起來,入侵檢測的數(shù)據(jù)不再來源于網(wǎng)絡,而是流經(jīng)防火墻的數(shù)據(jù)包。網(wǎng)絡數(shù)據(jù)在通過防火墻后,拷貝一份進行入侵檢測,如果在網(wǎng)絡數(shù)據(jù)包中檢測到攻擊行為,則通過決策響應模塊調(diào)整防火墻的過濾規(guī)則,及時阻斷攻擊行為,將網(wǎng)絡安全隱患降至最低。終端安全框架的組成及流程示意如圖1所示。
圖1 終端安全框架
2 防火墻規(guī)則配置策略
Linux2.4及之后的版本集成了Netfilter/Iptables防火墻系統(tǒng),該系統(tǒng)利用Netfilter提供可擴展的結(jié)構化底層框架,實現(xiàn)數(shù)據(jù)包過濾、深度包檢測、動態(tài)地址轉(zhuǎn)換、網(wǎng)絡地址偽裝和透明代理等功能;Iptables作為防火墻的配置、管理工具,由一組規(guī)則列表組成,用戶通過配置相應的規(guī)則,阻斷網(wǎng)絡層、傳輸層的非法數(shù)據(jù)包。
在Iptables結(jié)構中,鏈是作為規(guī)則的容器,串接著擁有相同標簽的規(guī)則,如INPUT、OUTPUT、FORWARD、PREROUTING和POSTROUTING等,分別代表數(shù)據(jù)包通過協(xié)議棧的各個位置點。表作為鏈的容器,包含著具有相同功能的鏈,Iptables管理著Raw(鏈接跟蹤)、Mangle(修改)、Nat(地址轉(zhuǎn)換)和Filter(過濾)4個不同的規(guī)則表,每個表的功能均由獨立的內(nèi)核模塊實現(xiàn)。
一個合理、高效的規(guī)則集是防火墻良好工作的前提。新時代的終端安全框架,要求系統(tǒng)能夠根據(jù)網(wǎng)絡實際情況動態(tài)調(diào)整防火墻過濾規(guī)則,但規(guī)則的動態(tài)調(diào)整可能造成規(guī)則的冗余,導致系統(tǒng)對數(shù)據(jù)包處理時間延長、過濾效率降低,反而影響系統(tǒng)的性能。
優(yōu)秀的防火墻配置策略可以有效減少規(guī)則的數(shù)量,降低規(guī)則冗余引入的消耗,提高防火墻的工作效率。在實際應用中,根據(jù)終端的部署環(huán)境、安全需求和業(yè)務能力的不同,防火墻配置策略一般有以下兩種: ①先允許所有的數(shù)據(jù)包通過防火墻,然后根據(jù)網(wǎng)絡實際情況,依次禁止有危險的數(shù)據(jù)包通過,本策略適用于功能復雜、對安全性要求較低的綜合型終端;②先禁止所有的數(shù)據(jù)包通過防火墻,然后根據(jù)業(yè)務需求和所需服務,依次允許特定的數(shù)據(jù)包通過防火墻,本策略適用于網(wǎng)絡環(huán)境簡單、業(yè)務穩(wěn)定、對安全性要求較高的終端。
3 入侵檢測模塊的抉擇
Snort是一個輕量級的入侵檢測系統(tǒng),由數(shù)據(jù)包捕獲庫Libpcap、包解碼器、預處理程序、檢測引擎和報警輸出模塊等部分組成。作為一種主動防御機制,Snort利用以太網(wǎng)的共享特性,對網(wǎng)絡中的數(shù)據(jù)包進行捕獲,通過規(guī)則匹配識別網(wǎng)絡攻擊行為,從而完成用戶行為監(jiān)控、網(wǎng)絡異常分析、系統(tǒng)弱點探測,以及網(wǎng)絡攻擊報警等功能。
目前Snort已經(jīng)遍布全球,成為企業(yè)級的分布式入侵檢測體系。考慮到終端資源的有限性,以及“盡量減小對網(wǎng)絡數(shù)據(jù)傳輸?shù)挠绊憽钡囊螅桨笡Q定采用Snort作為終端安全框架的入侵檢測工具。
Snort將攻擊事件的行為特征定義為規(guī)則,一系列規(guī)則按照樹形結(jié)構管理稱為規(guī)則樹,即攻擊特征庫。Snort利用Libpcap函數(shù)實時捕獲數(shù)據(jù)包,經(jīng)過解碼、預處理后,檢索攻擊特征庫,通過規(guī)則匹配判斷包中是否含有攻擊特征。Snort完整的工作流程示意如圖2所示。
圖2 Snort工作流程示意
在本方案的設計中,Snort部署于Iptables防火墻之后,通過防火墻的網(wǎng)絡數(shù)據(jù),經(jīng)過拷貝后進行分流,一份送至上層處理,一份送到入侵檢測模塊,如果在數(shù)據(jù)包中檢測到攻擊特征,則在第一時間發(fā)出告警信息。
Snort缺乏手段阻止攻擊行為,終端依然會遭受入侵,而且Snort對攻擊特征庫的依賴性較強,終端需要及時更新攻擊特征庫,以保證系統(tǒng)能夠識別最新的攻擊手段。鑒于入侵檢測與防火墻之間功能的互補性,終端安全框架在設計時,還需要有一套獨立的機制,不僅能夠?qū)⒍哂行У芈?lián)動起來,而且能夠保證Snort攻擊特征庫的實時更新。
4 安全聯(lián)動機制設計
作為框架實施的核心和安全防護的依據(jù),決策響應模塊主要負責安全聯(lián)動功能的實現(xiàn),同時接受區(qū)域安全管理中心的統(tǒng)一調(diào)度,完成攻擊特征庫的更新和系統(tǒng)安防策略的調(diào)整等工作。決策響應模塊包括入侵行為分析、安全決策和防護策略調(diào)整三部分。
其中,入侵行為分析負責檢測Snort產(chǎn)生的報警信息和日志文件,通過對各類安全事件進行分析、轉(zhuǎn)換,識別具體的攻擊行為,并通知安全決策進行處理。安全決策主要負責終端防護策略的生成與下發(fā),支持自動防御和中心干預兩種方式完成安防策略的調(diào)整。
在自動防御模式下,終端設備能夠針對各種不同的攻擊行為,制定相應的安全策略進行防護;而在中心干預模式下,終端設備接受區(qū)域安全管理中心的統(tǒng)一調(diào)度,接收并啟用管理中心下發(fā)的安全策略,進而構建區(qū)域分布式防火墻。防護策略調(diào)整根據(jù)安全決策制定的防護規(guī)則,更新防火墻配置,達到實時防護的目的。
在決策響應模塊的設計中,有以下要點需要關注:
( 1 ) 由于終端資源的有限性,對Snort日志文件的分析,建議采用Select多路復用機制實現(xiàn),以節(jié)省系統(tǒng)資源,提升工作效率;如果采用定時掃描機制,則需要設定合理的掃描頻率,在處理器資源消耗和入侵響應速度之間,尋找一個可接受的平衡。
( 2 ) 安全聯(lián)動機制在設計實現(xiàn)過程中,盡量維持防火墻、入侵檢測兩個模塊的獨立性和完整性,避免將入侵檢測作為一個功能模塊,直接集成到防火墻中。這種高耦合的設計模式,不僅增加了防火墻的復雜程度,而且不利于終端安全框架整體的開發(fā)和維護。
( 3 ) 重視Iptables防火墻規(guī)則集的優(yōu)化,在添加新規(guī)則時,建議對新添加的規(guī)則和已有的規(guī)則進行分析、比較,刪除被包含的規(guī)則,合并功能類似的規(guī)則,對于提升防火墻的工作效率、穩(wěn)定設備性能至關重要。
5 結(jié)語
本方案實現(xiàn)的終端安全框架,充分保證了Iptables防火墻、Snort入侵檢測兩個模塊的獨立性和完整性,不僅易于移植、開發(fā)和維護,而且將二者有效地聯(lián)動起來,形成決策、防護、檢測、響應于一體的終端安全體系。同時,支持人為干預和中心干預的方式調(diào)整安防策略,在緊急情況下能夠斷開聯(lián)動,通過區(qū)域安全管理中心直接更新規(guī)則,形成區(qū)域分布式防火墻,最大限度地保證系統(tǒng)安全。