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

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