隨着科技的發展,工業控制系統逐漸的接入互聯網,而當前互聯網上存在着大量的攻擊,直接影響着工業控制系統的安全,工控系統面臨的安全形勢也越來越嚴重。2010年的伊朗震網病毒事件、2011年的duqu木馬事件、2014年的Havex、2015年的烏克蘭電力事件都在用事實證明了工控系統的安全形勢嚴峻。
為了增強工業控制網絡安全,很多研究人員都採用蜜罐技術對系統進行防護。蜜罐作為一種主動防禦技術可以吸引攻擊,分析攻擊,推測攻擊意圖,並將結果補充到防火牆、IDS以及IPS等威脅阻斷技術。
蜜罐技術介紹
蜜罐的發展主要分為三個階段
1.初級階段,蜜罐思想首次被提出,這是蜜罐的形成階段;
2.中期階段,蜜罐工具的大規模開發,比如DTK、honeyd、honeybrid等工具的提出;
3.後期階段,採用虛擬仿真、真實設備、真實系統、IDS、數據解析工具以及數據分析技術等綜合構建的網絡體系進行入侵誘捕。
近年來,隨着工控安全形勢的嚴峻,蜜罐技術被越來越多的應用在工控領域,從協議的仿真做起到工控環境的模擬,交互能力越來越高,結構也日趨複雜。開源工控蜜罐中,主要針對modbus、s7、IEC-104、DNP3等工控協議進行模擬。其中,conpot和snap7是相對成熟的蜜罐代表,conpot實現了對s7comm、modbus、bacnet、HTTP等協議的模擬,屬於低交互蜜罐,conpot部署簡單,協議內容擴展方便,並且設備信息是以xml形式進行配置,便於修改和維護。Snap7是專門針對西門子PLC的蜜罐,基本實現了s7comm協議棧。它可以模擬實際設備的信息與狀態,而且實現常用PLC操作的交互。但這些這些主流的虛擬蜜罐只能模擬單一工控協議,因此只能捕獲單一工控協議的攻擊數據。
新型蜜罐技術
為提高蜜罐的部署能力,降低蜜罐部署成本,陸續有研究者提出採用低交互蜜罐與高交互蜜罐混合部署的架構,在合適的時候調度合適的蜜罐,在學術領域陳之為混合蜜罐。以下是一些示例
Snort honeybrid方案
在本方案中,Snort主要進行低高交互流量的鑑別,並通知Honeybrid網關,便於後續步驟的進行。Honeybrid網關包括決策引擎和重定向引擎,負責協調前端和後端之間的過濾和重定向。決策引擎用於選擇感興趣的流量,重定向引擎用於透明地重定向流量。
其中honeybrid是一種典型的混合蜜罐框架,主要有如下四部分模塊,示意圖如下:
決策引擎 :決定哪些業務是要哪個蜜罐;
重定向引擎:以決定是否有些業務需要被重定向進行更詳細的分析;
控制引擎:限制由潛在的被損害蜜罐發送的傳出網絡流量;
日誌引擎:繼續處理的數據流,進行詳細記錄。
這四個組件圍繞目標概念進行闡述,目標概念包含基於蜜罐的實驗的規範。因此,每當我們想要運行基於蜜罐的新實驗時,我們必須考慮我們想要收集的流量類型以及我們想要收集它的方式,即具有多少粒度和控制程度。目標由四個聲明組成:一個 過濾規則,它使用tcpdump語法定義此目標應處理的確切流量類型,
一個前端規則,定義哪個蜜罐應該首先與傳入的攻擊流量進行交互,以及接受此傳入流量的標準是什麼;
一個可選的後端規則,用於定義流量被重定向到哪個蜜罐以進行更詳細的分析,以及決定重定向流量的標準是什麼;
一個可選的控制 規則,定義如何限制蜜罐啓動的傳出流量。
Snort SDN方案
SDN是軟件定義網絡,它以下發flowtable的形式完成對流量的控制。右圖顯示了作者所提出的混合蜜罐架構圖。它主要由一個基於 OpenFlow的交換機來管理控制平面,它負責重定向攻擊者和不同蜜罐之間的連接。在控制平面中,開源IDSSnort用於分析流量以生成警報,並通過UNIX 套接字將警報消息發送到控制器應用程序。根據警報消息,決策引擎將決定轉發或重定向連接併發信號通知重定向引擎 以執行相應的動作。
在上述方案中都是用了Snort工具,Snort是一種入侵檢測工具,可以針對數據包進行單包解析,在監聽到數據包後首先會對來源數據包進行解析,然後提取特徵,匹配規則,從而發出告警信息,示意圖如下:
利用在蜜罐框架中,是利用了它的數據解析功能與告警功能;它在匹配到對應的信息後,可以發出信號,從而使得下一步的處理程序可以進行處理。
總結
本文主要對蜜罐技術進行了介紹,從蜜罐的起源到發展,以及工控蜜罐的出現到發展。並描寫了典型的蜜罐架構,通過採用這些架構可以較為高效的進行蜜罐部署,同時也讓大家對蜜罐技術有一個較為大概對理解。當前蜜罐的能力永遠是看向蜜罐交互性這一指標,為了提高蜜罐交互性研究人員採用了很多方法,本文主要介紹了選擇合理部署的方式提高整體蜜罐的交互性。
但當前大多數的蜜罐框架僅從技術層面進行了闡述,併為指出無懈可擊的理論依據,尚存在諸多問題需要解決,比如合理的調度依據。而缺乏這些依據的原因也是我們缺乏對攻擊的瞭解,無法獲取精確且普適性較高的攻擊分析方法。