基于蜜罐的嵌入式主動防御系統(tǒng)設(shè)計與實現(xiàn)
引 言
隨著智能設(shè)備的快速發(fā)展,嵌入式系統(tǒng)在工業(yè)制造、交通運輸、智能家電、家庭智能管理、POS 網(wǎng)絡(luò)、環(huán)境工程、國防軍事等各領(lǐng)域的高速發(fā)展,不僅優(yōu)化了我們的工作方式, 加快了工作節(jié)奏,方便了生活學(xué)習(xí),還大大降低了生活成本, 時刻發(fā)揮著重要作用。但嵌入式設(shè)備層出不窮的安全問題也為人們的日常帶來了不可估量的損失,比如汽車在行駛過程中被不法分子遠(yuǎn)程控制;家中的智能門禁設(shè)備遭到遠(yuǎn)程攻擊;智能機器人被遠(yuǎn)程控制對人行兇等,保證嵌入式系統(tǒng)的安全已成為人們關(guān)注的焦點。一般的嵌入式系統(tǒng)只有在受到攻擊后才去查找相應(yīng)的攻擊源并采取防御措施,但顯然這種被動式的防護策略無法有效保證嵌入式系統(tǒng)的正常運行。系統(tǒng)根據(jù)網(wǎng)絡(luò)安全問題防范對策的全局性,依據(jù)各類安全系統(tǒng)信息共享與互動的思想,利用蜜罐技術(shù)與防御系統(tǒng)聯(lián)動實現(xiàn)了主動防御,建立了基于蜜罐的嵌入式主動防御系統(tǒng)模型,使得嵌入式系統(tǒng)在遭受網(wǎng)絡(luò)攻擊時能夠更加有效的保證各類嵌入式設(shè)備的安全運行,提高容災(zāi)能力。
1 蜜罐
蜜罐是一種吸引不法分子入侵的 安全資源 ,在不法分子入侵時發(fā)揮作用 [1]。蜜罐一般虛擬成與被保護設(shè)備環(huán)境相同的虛擬設(shè)備,并主動暴露虛假的敏感數(shù)據(jù),它可以虛擬成一個網(wǎng)絡(luò)、一臺關(guān)鍵設(shè)備或一項服務(wù),也可以是數(shù)據(jù)庫中偽裝成敏感數(shù)據(jù)的某些無用數(shù)據(jù)項以及偽裝的用戶名及其弱口令,部署在各內(nèi)部子網(wǎng)或關(guān)鍵設(shè)備上,它并不對外提供正常服務(wù),只充當(dāng) 受害者 的角色,誘騙來自網(wǎng)絡(luò)內(nèi)部和外部黑客攻擊其 敏感數(shù)據(jù)或服務(wù) ,并進(jìn)行交互,消耗對方的時間和資源。與此同時,蜜罐還可實時記錄入侵過程,獲取攻擊信息,對攻擊進(jìn)行深入分析,提取入侵特征并寫入日志文件,使網(wǎng)絡(luò)管理者能夠在可能的攻擊發(fā)生前對真實設(shè)備修補安全漏洞,主動進(jìn)行防御[2],是一種在通過誘惑攻擊的同時對入侵行為進(jìn)行分析的誘騙技術(shù)[3]。蜜罐的工作模型如圖 1 所示。
2 系統(tǒng)體系結(jié)構(gòu)
蜜罐技術(shù)是一種具有主動性的入侵響應(yīng)技術(shù) [4],它可以虛擬出一臺或多臺與被保護設(shè)備環(huán)境相同的虛擬設(shè)備,充當(dāng)黑客的目標(biāo),誘騙攻擊者攻擊,從而有效保護真實設(shè)備的安全運行。與此同時,還會實時記錄入侵過程、獲取攻擊信息,對攻擊進(jìn)行深入分析,提取入侵特征,并寫入日志文件。系統(tǒng)根據(jù)網(wǎng)絡(luò)安全問題防范對策的全局性,依據(jù)各類安全系統(tǒng)信息共享與互動的思想,通過編寫聯(lián)動機制程序提取日志中攻擊者的特征信息,實時動態(tài)聯(lián)動netfilter/iptables 設(shè)置防火墻規(guī)則, 完善防御規(guī)則,保護真實設(shè)備,對各類攻擊行為進(jìn)行提前防御, 達(dá)到主動防御的目的??蓪⑵洳渴鹪诟鲀?nèi)部子網(wǎng)或關(guān)鍵設(shè)備上, 以有效防御來自網(wǎng)絡(luò)系統(tǒng)內(nèi)部及外部的攻擊 [5]。系統(tǒng)體系結(jié)構(gòu)如圖 2 所示。
3 系統(tǒng)實現(xiàn)
3.1 Honeyd
系統(tǒng)所應(yīng)用的蜜罐軟件為Honeyd,Honeyd 能夠虛擬出一臺或多臺環(huán)境各異的虛擬設(shè)備,因此也稱虛擬蜜罐。這些虛擬蜜罐能夠根據(jù)需要被配置以提供相應(yīng)的服務(wù),系統(tǒng)特征也與所保護設(shè)備一致,如同真實的系統(tǒng)在運行。Honeyd 可以根據(jù)需要虛擬出多個蜜罐,既可以單個蜜罐工作,也可以多個蜜罐組成一個蜜罐網(wǎng)絡(luò)體系,形成虛擬的蜜罐網(wǎng)絡(luò)。
與傳統(tǒng)安全軟件相比 [6],Honeyd 可以虛擬出任意 TCP/ UDP 網(wǎng)絡(luò)服務(wù), 如 IIS,Telnet,pop3 等;支持同時模擬多個 IP 地址主機 ;支持 ICMP,對 ping 和 traceroute 可做出響應(yīng);通過代理和重定向支持對實際主機、網(wǎng)絡(luò)服務(wù)的整合;提供UI 用戶界面;通過部署 Honeyd 誘騙黑客攻擊,可以對黑客的攻擊行為進(jìn)行捕獲和分析,了解黑客在干什么,捕獲黑客的攻擊方法、鍵擊記錄、攻擊工具,監(jiān)控其會話等。此外, Honeyd 還存在如下優(yōu)勢:
(1) Honeyd具有Linuxopen精神,用戶可根據(jù)需要進(jìn)行改進(jìn)。
(2) 基于程序的模塊化設(shè)計,Honeyd擁有滿足各樣功能的插件接口,也可根據(jù)用戶自身需要進(jìn)行改進(jìn)。
(3) 可以模擬的主機系統(tǒng)類型基本覆蓋現(xiàn)有的所有系統(tǒng), 如 Windows、Linux、FreeBSD、CiscoRouter7200、Zyxel Router等。
(4) Honeyd占用的系統(tǒng)資源非常少。
3.2 系統(tǒng)實現(xiàn)
將虛擬機作為被保護的設(shè)備,在虛擬機上利用 Honeyd 軟件虛擬出一臺(或多臺)蜜罐作為引誘黑客攻擊的設(shè)備,將虛擬蜜罐與被保護設(shè)備軟硬件條件及各項參數(shù)環(huán)境設(shè)置一致, 在Honeyd上建立Honeyd.log 文件,即 Honeyd 日志文件,當(dāng)有黑客攻擊時,Honeyd 日志文件會根據(jù)自定義編寫的規(guī)則實時動態(tài)捕獲攻擊者的信息,并寫入日志文件。將 Honeyd 日志文件中捕獲的攻擊者特征數(shù)據(jù)與iptables 建立聯(lián)動關(guān)系。系統(tǒng)實現(xiàn)模型如圖 3 所示。
編寫聯(lián)動機制程序,建立聯(lián)動關(guān)系。其操作內(nèi)容包括對蜜罐日志的讀取,啟動防火墻并將日志中捕獲的特征數(shù)據(jù)添加到防火墻列表中。自動啟動防火墻,對入侵行為過頻繁的源地址 IP 進(jìn)行阻攔(更多規(guī)則可自定義編寫)。程序運行流程圖如 圖 4 所示。
3.3 Honeyd 移植
Honeyd 移植,編譯環(huán)境建立在 Linux 操作系統(tǒng)的 PC 上,在 ARM-Linux 實驗平臺(ARM11)實現(xiàn) Honeyd 移植。 Honeyd 依賴三個庫和一個 Arpd 工具,三個庫分別為異步事 件響應(yīng)庫、數(shù)據(jù)包構(gòu)造與發(fā)送庫、數(shù)據(jù)包捕獲庫。Honeyd 所 需的庫文件成功創(chuàng)建之后,對 Honeyd 進(jìn)行編譯和安裝。
4 驗證系統(tǒng)功能及實例測試
系統(tǒng)功能測試圖如圖 5 所示。用一臺系統(tǒng)環(huán)境為 Win7 的電腦來模擬黑客對開發(fā)板進(jìn)行攻擊測試(其 IP 地址為 200.1.1.100),用已經(jīng)移植了 Honeyd 的嵌入式開發(fā)板(ARM11) 充當(dāng)被保護的對象(其 IP 地址為 200.1.1.101),打開超級終 端,設(shè)置好相應(yīng)的端口號和波特率,給板子加電,板子自動 運行 Honeyd_log.sh 腳本文件,然后虛擬一個具有 Win7 環(huán)境 及相應(yīng)配置的蜜罐(其 IP 地址為 200.1.1.88),建立日志文件 Honeyd.log,輸入相應(yīng)命令配置文件 Honeyd.conf 來創(chuàng)建所需 蜜罐系統(tǒng)環(huán)境,執(zhí)行 ./start-arpd.sh 和 ./start-Honeyd.sh 啟動 命令。此時,運行 scanport 端口掃描程序可以查看板子和板子 虛擬出來的端口號及 IP 地址,表示蜜罐虛擬成功。

主動防御系統(tǒng)功能測試:
(1) ICMP攻擊測試打開兩個 cmd,分別 ping 板子和蜜罐的IP,此時會發(fā)現(xiàn),板子的 IP一段時間后無法 ping通, 因為蜜罐的IP被訪問 10次后, 黑客 的IP地址會被防火墻自動屏蔽,訪問板子失敗。
(2) TCP攻擊測試,執(zhí)行./Honeyd_monitor命令打開監(jiān)控程序與瀏覽器,地址欄輸入 200.1.1.101/index.html,可正??吹降卿涰撁?。地址欄重新輸入 200.1.1.88,并多次刷新,即增加訪問次數(shù),達(dá)到 10次便關(guān)掉監(jiān)控程序,執(zhí)行 iptables-L 命令查看防火墻列表,同樣 黑客 IP 地址被防火墻屏蔽,訪問板子失敗。
(3) UDP 攻擊測試,打開網(wǎng)絡(luò)調(diào)試助手,選擇 UDP協(xié)議, 本地 IP地址為 200.1.1.100,選擇數(shù)據(jù)流循環(huán)發(fā)送,目標(biāo)主機IP地址為 200.1.1.88,若超過 10次, 黑客 IP地址被防火墻屏蔽,訪問板子失敗。
經(jīng)多次ICMP/TCP/UDP 攻擊測試驗證 [7-9],基于蜜罐的嵌入式主動型防御系統(tǒng)能夠達(dá)到設(shè)計要求,建立了蜜罐與防御系統(tǒng)聯(lián)動機制,實現(xiàn)了主動防御,提高了容災(zāi)能力,可有效保證嵌入式設(shè)備網(wǎng)絡(luò)內(nèi)部及外部的運行安全。實驗數(shù)據(jù)統(tǒng)計結(jié)果見表 1 所列。
5 結(jié) 語
文章利用蜜罐技術(shù)建立了主動防御的嵌入式安全系統(tǒng), 與傳統(tǒng)的嵌入式安全系統(tǒng)相比,具有自主對網(wǎng)絡(luò)攻擊進(jìn)行防御的特點。經(jīng)過多次攻擊測試,驗證了本系統(tǒng)可將Honeyd 日志文件中記錄的特征數(shù)據(jù)與防御系統(tǒng)建立聯(lián)動關(guān)系,完善防御規(guī)則,對各類攻擊行為進(jìn)行提前防御,動態(tài)實現(xiàn)蜜罐與防御系統(tǒng)的聯(lián)動,有效防御了來自內(nèi)部和外部的攻擊,實現(xiàn)了主動防御的目的。