◆許子先
?
聯(lián)網(wǎng)智能設(shè)備網(wǎng)絡(luò)安全技術(shù)研究
◆許子先
(中國(guó)信息通信研究院安全研究所 北京 100191)
本文主要闡述聯(lián)網(wǎng)智能設(shè)備面臨的安全隱患,并通過歸納聯(lián)網(wǎng)智能設(shè)備特點(diǎn),分析聯(lián)網(wǎng)智能設(shè)備網(wǎng)絡(luò)接口安全檢測(cè)方法,并通過具體案例對(duì)檢測(cè)方法進(jìn)行說明。然后提出聯(lián)網(wǎng)智能設(shè)備漏洞測(cè)試庫及測(cè)試框架的設(shè)計(jì)方法及實(shí)現(xiàn)原理,最后提出一系列有針對(duì)性的安全防護(hù)建議。
智能設(shè)備;網(wǎng)絡(luò)安全;智能家居;安全技術(shù)
以智能家居為代表的聯(lián)網(wǎng)智能設(shè)備使用得越來越廣泛,同時(shí)也帶來了不少安全風(fēng)險(xiǎn)。2016年以來發(fā)生了一系列由Mirai病毒感染智能攝像頭及無線路由器而引發(fā)的攻擊事件,包括此前的法國(guó)網(wǎng)站主機(jī)服務(wù)商OVH遭攻擊、美國(guó)大半個(gè)互聯(lián)網(wǎng)癱瘓、德國(guó)電信斷網(wǎng)事件等讓我們意識(shí)到聯(lián)網(wǎng)智能設(shè)備被攻擊不僅可影響設(shè)備使用,也會(huì)對(duì)共用基礎(chǔ)網(wǎng)絡(luò)造成巨大沖擊。
聯(lián)網(wǎng)智能設(shè)備被利用后會(huì)產(chǎn)生如此大的破壞力,主要源于聯(lián)網(wǎng)智能設(shè)備的如下特點(diǎn):
以智能家居為代表的聯(lián)網(wǎng)智能設(shè)備數(shù)量大、種類多,是傳統(tǒng)主機(jī)不曾出現(xiàn)的局面。在一個(gè)家庭中很可能擁有十臺(tái)以上的聯(lián)網(wǎng)智能設(shè)備,這些設(shè)備一方面提高了用戶日常生活的信息化程度給用戶的生活帶來了便利,同時(shí)由于設(shè)備數(shù)量日益增加,使得攻擊者能夠控制的在線設(shè)備數(shù)量及占用的互聯(lián)網(wǎng)帶寬能夠始終保持在一個(gè)相當(dāng)?shù)幕鶖?shù)之上并不斷增加,導(dǎo)致攻擊者擁有巨大的破壞能力。以Mirai為例,在2016年9月源碼公布后,攻擊者在該源碼基礎(chǔ)上增加攻擊模塊,使其可感染包括攝像頭、DVRs和路由器等聯(lián)網(wǎng)智能設(shè)備,導(dǎo)致其僵尸網(wǎng)絡(luò)的規(guī)模不斷擴(kuò)張,截止2016年10月僅源碼公布一個(gè)月的時(shí)間,至少有30-40萬臺(tái)被感染的僵尸設(shè)備,美國(guó)Dyn、法國(guó)OVH公司都遭受到大規(guī)模DDoS攻擊,流量峰值曾達(dá)到1.5Tpbs。
從近年來的多起大規(guī)模攻擊事件可見,安全防護(hù)能力低下的物聯(lián)網(wǎng)設(shè)備中極易滋生高傳染力的病毒,通常自擴(kuò)張的僵尸網(wǎng)絡(luò)常用的攻擊手段是弱口令掃描和漏洞攻擊。通常一臺(tái)聯(lián)網(wǎng)設(shè)備被控制后,會(huì)對(duì)其他設(shè)備進(jìn)行弱口令的掃描或漏洞攻擊,攻擊成功后會(huì)下載病毒自身到新的設(shè)備中,并不斷蔓延。
從多起安全事件來看,利用聯(lián)網(wǎng)智能設(shè)備發(fā)動(dòng)攻擊的技術(shù)門檻較低。利用配置上的缺陷如默認(rèn)口令或弱口令是非常普遍的,如利用成功可在短時(shí)間內(nèi)大范圍傳播,如針對(duì)智能機(jī)頂盒的病毒Rowdy利用Telnet弱口令進(jìn)行登錄并轉(zhuǎn)播。由于智能設(shè)備性能受限,幾乎不會(huì)部署防病毒防入侵的保護(hù)機(jī)制,因此對(duì)惡意程序的防護(hù)能力極為有限,導(dǎo)致攻擊成本降低。
為了追求客戶流量,智能設(shè)備廠商需要以相對(duì)較少的成本快速不斷推出新的功能來吸引用戶,廠商不愿投入過多資源進(jìn)行安全設(shè)計(jì)、安全編碼、安全測(cè)試等,導(dǎo)致智能設(shè)備普遍存在升級(jí)困難、配置錯(cuò)誤、固件漏洞等問題。
通過上述特點(diǎn)及對(duì)以往的安全事件分析,可以在以下幾個(gè)方面進(jìn)行安全分析。內(nèi)容主要包括:逆向分析固件缺陷、web接口安全檢測(cè)。
可以通過反匯編、逆向分析的方式發(fā)現(xiàn)設(shè)備固件中存在的編碼缺陷、邏輯缺陷以及后門。如使用木馬后門特征碼識(shí)別、程序執(zhí)行流程逆向分析等方式對(duì)固件進(jìn)行解包、反匯編、漏洞后門分析來進(jìn)行檢測(cè)。特征碼識(shí)別主要依賴于漏洞、后門特征碼庫,可快速定位已知漏洞和后門,但對(duì)未知漏洞及后門的發(fā)現(xiàn)能力不足,通過人工挖掘的方式可發(fā)現(xiàn)未知漏洞及后門,但其效率較低,因此在實(shí)際檢測(cè)中采用人工及自動(dòng)化結(jié)合的方式進(jìn)行,并在人工發(fā)現(xiàn)未知漏洞及后門后,提取其特征碼錄入特征庫以備后續(xù)檢測(cè)。
通過Web掃描、代碼審計(jì)、人工檢測(cè)手段發(fā)現(xiàn)并驗(yàn)證系統(tǒng)Web接口存在的安全漏洞。Web接口安全檢測(cè)主要內(nèi)容包括:
(1)通用Web漏洞。如SQL注入攻擊、跨站腳本攻擊(XSS)、跨站請(qǐng)求偽造(CSRF)、上傳文件攻擊、命令執(zhí)行等由于編碼缺陷導(dǎo)致的安全漏洞。
(2)業(yè)務(wù)邏輯漏洞。如認(rèn)證繞過、密碼機(jī)制缺陷、非授權(quán)訪問、平行權(quán)限、越權(quán)提權(quán)等等。
通過上述檢測(cè)手段,在實(shí)驗(yàn)室復(fù)現(xiàn)案例如下。
首先,在網(wǎng)件官方網(wǎng)站可下載DGN1000-V1.1.00.49WW固件,解壓后在其官方聲明中可看到,該固件主要針對(duì)32764端口后門進(jìn)行修復(fù)。通過技術(shù)分析發(fā)現(xiàn),該后門并沒有徹底修復(fù),而是對(duì)其進(jìn)行了隱藏,并設(shè)置了觸發(fā)機(jī)制。技術(shù)分析如下:
通過分析固件文件系統(tǒng)發(fā)現(xiàn),其中包含Squashfs格式文件系統(tǒng),如圖1。對(duì)其解包,可獲得系統(tǒng)文件目錄,在該目錄結(jié)構(gòu)中檢索之前的后門文件scfgmgr可發(fā)現(xiàn)該程序增加了“-l”參數(shù),并發(fā)現(xiàn)在tf_tool對(duì)其有調(diào)用。解包后發(fā)現(xiàn)兩個(gè)可疑程序tf_tool及scfgmgr,分別對(duì)其進(jìn)行反匯編逆向分析。
圖1 包含Squashfs格式文件系統(tǒng)
首先分析tf_tool程序,可發(fā)現(xiàn)在tf_tool的main函數(shù)中打開一個(gè)socket,等待協(xié)議類型為“0x8888”的數(shù)據(jù)包,如圖2。
圖2 協(xié)議類型為“0x8888”的數(shù)據(jù)包
然后對(duì)數(shù)據(jù)包中數(shù)據(jù)進(jìn)行檢測(cè),當(dāng)數(shù)據(jù)包中字段為“DGN1000”的MD5值且數(shù)據(jù)包類型為“0x201”時(shí),則跳轉(zhuǎn)到“l(fā)oc_401240”執(zhí)行。在“l(fā)oc_401240”函數(shù)中會(huì)調(diào)用系統(tǒng)函數(shù)執(zhí)行命令,可以看到在該函數(shù)中會(huì)調(diào)用“/usr/sbin/scfgmgr”程序執(zhí)行“-f”操作,如圖3。
圖3 執(zhí)行“-f”操作
接下來分析scfgmgr程序。通過之前分析,發(fā)現(xiàn)scfgmgr程序中有兩個(gè)可疑參數(shù)“-l”和“-f”,在反匯編代碼中可發(fā)現(xiàn)兩參數(shù)執(zhí)行的操作,如圖4左側(cè)為“-f”操作右側(cè)為“-l”操作。
圖4 左側(cè)為“-f”操作右側(cè)為“-l”操作
如圖4可知,“-f”操作會(huì)創(chuàng)建一個(gè)socket連接并綁定“0x7FFC”端口(轉(zhuǎn)換成十進(jìn)制為32764端口)進(jìn)行監(jiān)聽?!?l”操作創(chuàng)建一個(gè)socket連接等待接受數(shù)據(jù)。
綜上可知,當(dāng)tf_tool接收到后門觸發(fā)數(shù)據(jù)包后,調(diào)用scfgmgr的“-f”操作創(chuàng)建后門連接,進(jìn)而實(shí)現(xiàn)遠(yuǎn)程控制功能。
首先在D-Link官網(wǎng)下載DIR-100 - Revision A的Firmware鏡像,版本為1.13。下載解壓后得到固件文件 DIR100_v5.0.0EUb3_patch02.bix。
對(duì)固件結(jié)構(gòu)進(jìn)行分析可知,固件中包含四部分,分別對(duì)其分析,可知其中0x9DB90為SquashFS文件系統(tǒng)。對(duì)0x9DB90部分進(jìn)行解析,獲得系統(tǒng)文件目錄。在/bin/目錄下發(fā)現(xiàn)提供web服務(wù)的程序webs,使用ida對(duì)其進(jìn)行逆向分析??梢钥吹紸lpha Networks公司對(duì)該固件的修改是以“alpha”為前綴的,其中“alpha_auth_check”應(yīng)該是負(fù)責(zé)認(rèn)證功能的,對(duì)該函數(shù)進(jìn)行分析。alpha_auth_check會(huì)針對(duì)http_request_t結(jié)構(gòu)體里的一些指針進(jìn)行字符串strcmp比較操作,然后調(diào)用check_login函數(shù),來實(shí)現(xiàn)身份驗(yàn)證檢查。如果一旦有字符串比較成功或check_login成功,它會(huì)返回1;否則,它會(huì)重定向?yàn)g覽器到登錄頁,返回-1,如圖5。
圖5 D-Link設(shè)備后門分析及驗(yàn)證
由上述反匯編代碼可知該函數(shù)首先提取請(qǐng)求的URL地址(在http_request_t數(shù)據(jù)結(jié)構(gòu)體的偏移量0xB8處),檢查它們是否含有字符串“graphic/” 或 “public/”。這些都是位于路由器的Web目錄下的公開子目錄,如果請(qǐng)求地址包含這樣的字符串,則繼續(xù)將http_request_t結(jié)構(gòu)體中偏移量0xD0的字符串指針和字符串“xmlset_roodkcableoj28840ybtide”比較,如果字符匹配,就會(huì)跳過check_login函數(shù),alpha_auth_check操作返回1(認(rèn)證通過)。這樣就可以繞過身份認(rèn)證進(jìn)行管理操作。而http_request_t偏移量0xD0處的指針指向的是User-Agent頭信息,也就是說,如果瀏覽器的User-Agent值是“xmlset_roodkcableoj28840ybtide”,就可以繞過認(rèn)證直接訪問包含“graphic/” 或 “public/”的web控制界面進(jìn)行管理操作。
實(shí)驗(yàn)室驗(yàn)證過程中,采用的是D-Link DIR-100中文版,固件版本為1.11CN(官方無升級(jí)版本)。測(cè)試發(fā)現(xiàn)該后門與英文版略有不同,將瀏覽器的User-Agent值是“xmlset_roodkcableoj28840ybtide”訪問任何控制頁面均不需要認(rèn)證,發(fā)送如圖6所示請(qǐng)求。即可不經(jīng)過認(rèn)證訪問路由器控制頁面。攻擊者可以在http://192.168.0.1/Advance/adv_routing.htm頁面配置靜態(tài)路由對(duì)用戶通信數(shù)據(jù)進(jìn)行劫持。
圖6 發(fā)送請(qǐng)求
通過上述技術(shù)分析手段,可分析出智能設(shè)備的安全漏洞,通過對(duì)漏洞進(jìn)行匯總,可形成檢測(cè)漏洞庫,可在漏洞庫的基礎(chǔ)上開發(fā)檢測(cè)框架來調(diào)用漏洞庫中的測(cè)試用例,來實(shí)現(xiàn)智能設(shè)備的安全檢測(cè)。
實(shí)驗(yàn)室環(huán)境下,搭建漏洞庫及測(cè)試框架如下。
首先,對(duì)已知漏洞測(cè)試用例進(jìn)行收集、匯總、整理,按照統(tǒng)一的格式進(jìn)行測(cè)試用例代碼編寫。其次,編碼過程中需要統(tǒng)一測(cè)試用例模板,以方便漏洞測(cè)試框架調(diào)用。
在實(shí)驗(yàn)室環(huán)境下,采用python作為漏洞測(cè)試庫編程語言,針對(duì)智能攝像頭、智能無線路由器、智能監(jiān)控、打印機(jī)等類型智能設(shè)備進(jìn)行漏洞用例代碼編寫。
實(shí)驗(yàn)室環(huán)境下漏洞庫包括如下典型設(shè)備漏洞:
(1)網(wǎng)件設(shè)備32764端口后門檢測(cè);
(2)D-Link設(shè)備后門檢測(cè);
(3)??低晈eb弱口令;
(4)浙江宇視(DVR/NCR)監(jiān)控設(shè)備遠(yuǎn)程命令執(zhí)行漏洞;
(5)邁普網(wǎng)關(guān)webui任意文件下載;
(6)惠普打印機(jī)telnet未授權(quán)訪問;
(7)juniper NetScreen防火墻后門(CVE-2015-7755);
(8)邁普vpn安全網(wǎng)關(guān)弱口令&&執(zhí)行命令;
(9)銳捷VPN設(shè)備未授權(quán)訪問漏洞;
(10)Dlink DIAGNOSTIC.PHP命令執(zhí)行;
(11)Dlink 本地文件包含;
(12)上海安達(dá)通某網(wǎng)關(guān)產(chǎn)品&某VPN產(chǎn)品struts命令執(zhí)行;
(13)SJW74系列安全網(wǎng)關(guān) 和 PN-2G安全網(wǎng)關(guān)信息泄露;
(14)富士施樂打印機(jī)默認(rèn)口令漏洞;
(15)東芝topaccess打印機(jī)未授權(quán)漏洞;
(16)佳能打印機(jī)未授權(quán)漏洞。
為了方便用戶使用及第三方調(diào)用,漏洞測(cè)試框架采用B/S架構(gòu)。因此使用Flask框架進(jìn)行開發(fā),用戶可以通過web瀏覽器訪問測(cè)試框架,以獲取漏洞測(cè)試庫列表,并通過web頁面輸入待測(cè)試設(shè)備的IP地址并進(jìn)行漏洞檢測(cè)??蚣軙?huì)通過調(diào)用漏洞測(cè)試用例庫對(duì)目標(biāo)地址進(jìn)行漏洞檢測(cè),當(dāng)檢測(cè)完成后會(huì)將結(jié)果通過web界面反饋給用戶。
為了提高檢測(cè)效率,在設(shè)計(jì)漏洞測(cè)試框架時(shí)在正式調(diào)用漏洞測(cè)試樣例前采用預(yù)測(cè)試模式,首先對(duì)目標(biāo)ip進(jìn)行探測(cè),以發(fā)現(xiàn)其banner信息及組件版本信息,并通過banner信息在漏洞測(cè)試樣例庫中進(jìn)行篩選,獲得與之匹配的智能設(shè)備產(chǎn)品,再通過組件版本信息進(jìn)行二次篩選,最后調(diào)用篩選剩下的用例進(jìn)行漏洞測(cè)試,以提高檢測(cè)效率。
針對(duì)聯(lián)網(wǎng)智能設(shè)備安全防護(hù)建議從監(jiān)管單位、設(shè)備廠商、用戶三方面共同加強(qiáng)。
針對(duì)互聯(lián)網(wǎng)暴露面的智能設(shè)備周期性進(jìn)行安全隱患發(fā)現(xiàn)及漏洞檢測(cè),以盡早發(fā)現(xiàn)安全隱患,并及時(shí)通運(yùn)營(yíng)企業(yè)或使用者進(jìn)行加固修復(fù)。如發(fā)現(xiàn)未公開漏洞則通知設(shè)備廠商對(duì)其進(jìn)行補(bǔ)丁升級(jí),并發(fā)布補(bǔ)丁信息指導(dǎo)用戶升級(jí)設(shè)備固件。
設(shè)備廠商應(yīng)該對(duì)其產(chǎn)品進(jìn)行漏洞管理,發(fā)現(xiàn)漏洞或接收到漏洞上報(bào)后,應(yīng)該及時(shí)對(duì)漏洞進(jìn)行分析,并形成穩(wěn)定補(bǔ)丁,補(bǔ)丁嚴(yán)格測(cè)試后在官方進(jìn)行發(fā)布,并督促用戶及時(shí)升級(jí)固件以修復(fù)漏洞。
用戶需要關(guān)注自己使用的智能設(shè)備運(yùn)行狀態(tài),當(dāng)收到廠商發(fā)布的補(bǔ)丁升級(jí)提醒時(shí),及時(shí)升級(jí)設(shè)備軟件版本,以保證設(shè)備安全穩(wěn)定運(yùn)行。
[1]朱曉蓮,甄彥虎.移動(dòng)智能設(shè)備安全分析及防護(hù)策略[J].計(jì)算機(jī)與網(wǎng)絡(luò),2012.
[2]韓蘭勝,王婷.移動(dòng)智能設(shè)備安全探析[J].中國(guó)信息安全,2015.
[3]柒月.智能設(shè)備安全問題引人堪憂 警惕!智能設(shè)備也許就是你生活中的“致命武器”[J].信息安全與通信保密,2016.
[4]王雅哲,張城毅,霍冬冬等.IoT智能設(shè)備安全威脅及防護(hù)技術(shù)綜述[J].信息安全學(xué)報(bào),2018.
[5]劉占.智能設(shè)備安全探討[J].網(wǎng)絡(luò)安全技術(shù)與應(yīng)用,2015.
[6]趙靜,麻名蕊,宋振.基于物聯(lián)網(wǎng)的智能家居安全防護(hù)系統(tǒng)設(shè)計(jì)[J].電子技術(shù)與軟件工程,2017.
[7]李翔.智能家居信息安全關(guān)鍵技術(shù)的研究[D].長(zhǎng)安大學(xué),2015.
[8]羅洪,楊杰.物聯(lián)網(wǎng)環(huán)境下的智能家居安全探討[J].信息與電腦(理論版),2015.
國(guó)家自然科學(xué)基金(No. 61471129):云計(jì)算環(huán)境下隱私保護(hù)和遠(yuǎn)程評(píng)估技術(shù)研究。