吳夷 秦麗平 李敏 黃寅寅 浙江省醫(yī)療器械檢驗(yàn)院 (浙江 杭州 310000)
1995年,愛(ài)立信公司提出了藍(lán)牙概念。1998年5月,以愛(ài)立信、諾基亞、東芝、IBM和因特爾公司為主的特別興趣組織SIG(Special Interest Group)指定了短距離無(wú)線通信協(xié)議,聯(lián)合宣布了一項(xiàng)名為藍(lán)牙(Bluetooth)的技術(shù)[1]。
微軟、3COM、朗訊和摩托羅拉于1999年加入SIG,并與原先的5個(gè)發(fā)起成員一同成為了SIG的領(lǐng)導(dǎo)成員。
藍(lán)牙作為一種無(wú)線技術(shù)標(biāo)準(zhǔn),用于設(shè)備間及與個(gè)人域網(wǎng)之間的短距離數(shù)據(jù)交換。藍(lán)牙使用2400~2483.5MHz的ISM(Industrial,Scienti fi c & Medical)波段的無(wú)線電波。
藍(lán)牙和WiFi有些類(lèi)似的應(yīng)用,如設(shè)置網(wǎng)絡(luò)、打印、傳輸文件。WiFi,作為無(wú)線局域網(wǎng)(WLAN),主要用于替代工作場(chǎng)所一般局域網(wǎng)接入中使用的高速線纜。WiFi的優(yōu)勢(shì)是建網(wǎng)時(shí)間短,組網(wǎng)靈活,容易延展網(wǎng)絡(luò),數(shù)據(jù)傳輸快。WiFi適用于一些能夠進(jìn)行稍復(fù)雜的客戶(hù)端設(shè)置和需要高速的應(yīng)用。而藍(lán)牙作為無(wú)線個(gè)人域網(wǎng)(WPAN)或者說(shuō)微微網(wǎng),主要用于便攜式設(shè)備及其應(yīng)用,可以替代便攜式設(shè)備的線纜。其優(yōu)勢(shì)是體積小、功耗低、成本低、兼容性廣、開(kāi)放性強(qiáng),可同時(shí)進(jìn)行語(yǔ)音信號(hào)和數(shù)據(jù)的傳輸,具有較強(qiáng)的抗干擾能力。藍(lán)牙適用于兩個(gè)設(shè)備通過(guò)最簡(jiǎn)單的配置進(jìn)行連接的簡(jiǎn)單應(yīng)用。
藍(lán)牙在移動(dòng)醫(yī)療中的推廣得益于藍(lán)牙4.0技術(shù)規(guī)范的推出。2010年6月30日,SIG正式推出藍(lán)牙4.0技術(shù)規(guī)范,主打低功耗性能,可將所有支持藍(lán)牙連接的設(shè)備互聯(lián)并且還有向上連接至電腦進(jìn)而與整個(gè)互聯(lián)網(wǎng)相連。2013年和2014年又推出了4.1和4.2版本。結(jié)合藍(lán)牙模塊成熟、體積小、成本低等特性,廣泛用于設(shè)備和終端的連接和數(shù)據(jù)交換,適合于移動(dòng)醫(yī)療的要求。特別對(duì)于可穿戴設(shè)備而言,其應(yīng)用優(yōu)勢(shì)更是明顯。而WiFi通過(guò)互聯(lián)網(wǎng)連接上安裝訪問(wèn)點(diǎn)來(lái)創(chuàng)造。在熱點(diǎn)覆蓋的區(qū)域,使用支持WiFi連接的設(shè)備便可隨時(shí)聯(lián)網(wǎng),但隨之而來(lái),數(shù)據(jù)安全性也廣受懷疑,這是移動(dòng)醫(yī)療在應(yīng)用中不得不考慮的一個(gè)因素[2]。2017年10月,用于保護(hù)WiFi安全的WPA/WPA2加密協(xié)議漏洞曝光,該漏洞名稱(chēng)為“密鑰重裝攻擊”KRACK,幾乎影響全部計(jì)算機(jī)、手機(jī)和路由器等WiFi設(shè)備。11月又有新零日WiFi漏洞被發(fā)現(xiàn)。
NFC是Near Field Communication的簡(jiǎn)稱(chēng),中文名為“近場(chǎng)通信”,是一種短距離的高頻無(wú)線通信技術(shù)。它是由免接觸式射頻識(shí)別(RFID)演變而來(lái),并向下兼容RFID,其允許電子設(shè)備之間非接觸式點(diǎn)對(duì)點(diǎn)進(jìn)行短距離的數(shù)據(jù)傳輸。NFC略勝藍(lán)牙的地方在于設(shè)置程序較短。藍(lán)牙功能是在配對(duì)后進(jìn)行數(shù)據(jù)的傳輸;而NFC不必配對(duì),直接可以傳輸。
相比NFC,藍(lán)牙更適合移動(dòng)醫(yī)療的重要因素是使用距離,對(duì)比NFC的10cm,藍(lán)牙就遠(yuǎn)得多了,并且傳輸速度也高于NFC。
藍(lán)牙應(yīng)用于移動(dòng)醫(yī)療,在帶來(lái)極大便利的同時(shí),也必須考慮其安全性。藍(lán)牙標(biāo)準(zhǔn)中指定了三個(gè)基本的安全服務(wù)。
認(rèn)證:基于藍(lán)牙設(shè)備地址,驗(yàn)證正在通信的設(shè)備的身份。藍(lán)牙設(shè)備的認(rèn)證過(guò)程采用挑戰(zhàn)/響應(yīng)方案的形式。挑戰(zhàn)/響應(yīng)協(xié)議通過(guò)檢查藍(lán)牙鏈路密鑰驗(yàn)證設(shè)備。藍(lán)牙標(biāo)準(zhǔn)允許進(jìn)行單向和相互認(rèn)證。對(duì)于相互認(rèn)證,驗(yàn)證方與申請(qǐng)方交換角色重復(fù)認(rèn)證過(guò)程。如果認(rèn)證失敗,藍(lán)牙設(shè)備在進(jìn)行一個(gè)新的嘗試前等待一段時(shí)間。這個(gè)時(shí)間間隔按指數(shù)增加。
機(jī)密性:通過(guò)確保設(shè)備在被允許使用一項(xiàng)服務(wù)之前是已經(jīng)被授權(quán)的,來(lái)允許其對(duì)資源的控制。藍(lán)牙提供了一個(gè)單獨(dú)的保密服務(wù),以防止在藍(lán)牙設(shè)備之間企圖竊聽(tīng)包交換數(shù)據(jù)的有效載荷。藍(lán)牙有三種加密模式:對(duì)任何流量無(wú)加密;基于單獨(dú)鏈路密鑰,使用加密密鑰加密單獨(dú)編址的流量,不對(duì)廣播流量加密;基于主鏈路密鑰,使用加密密鑰對(duì)所有流量進(jìn)行加密。
授權(quán):通過(guò)確保允許設(shè)備使用服務(wù)前設(shè)備已被授權(quán),實(shí)現(xiàn)資源控制。
在藍(lán)牙V4.0以前,藍(lán)牙BR/EDR/HS系列規(guī)范定義了4種安全模式,每個(gè)藍(lán)牙設(shè)備必須工作于這些模式之一。
安全模式1從不啟動(dòng)安全功能,即認(rèn)證和加密。設(shè)備和連接容易受到攻擊。在這個(gè)安全模式下,設(shè)備的不安全的;安全模式2是強(qiáng)制的服務(wù)安全模式,鏈接建立后,在控制器中實(shí)現(xiàn)認(rèn)證和加密機(jī)制;安全模式3是強(qiáng)制的鏈路級(jí)安全模式,在物理鏈路完全建立前,要求驗(yàn)證和加密所有出入的設(shè)備連接;安全模式4是強(qiáng)制的服務(wù)級(jí)安全服務(wù),在物理和邏輯鏈路建立后使用安全簡(jiǎn)單配對(duì)(SSP)。
藍(lán)牙V4.0引入了低功耗(LE),但同時(shí)支持BR/EDR/HS。LE旨在支持計(jì)算和存儲(chǔ)受限的設(shè)備,其安全性與BR/EDR/HS不同。LE設(shè)定了3種連接模式,分別為立即工作(Just Works)、萬(wàn)能鑰匙進(jìn)入(Passkey Entry)和帶外連接(Out of Band)[3]。LE第一次在藍(lán)牙規(guī)范中引入了AES-CCM加密算法。另外,LE還引入了諸如私有設(shè)備地址和數(shù)據(jù)簽名等功能,分別由新的加密密鑰-身份解析密鑰(IRK)和連接簽名解析密鑰(CSRK)支持這些功能。這些密鑰(LTK、IRK、CSRK)在LE配對(duì)期間生成并安全分發(fā)。藍(lán)牙LE利用AESCCM提供保密性,以及每包認(rèn)證和完整性。由于LTK用作加密密鑰輸入。成功的加密設(shè)置提供了隱含的認(rèn)證。雖然數(shù)據(jù)簽名不提供保密性,但對(duì)遠(yuǎn)程設(shè)備持有正確CSRK提供了隱含的認(rèn)證[4]。
雖然藍(lán)牙在設(shè)計(jì)時(shí)已經(jīng)含有安全策略,但并不是一個(gè)非常有效的安全系統(tǒng),其安全性也受到無(wú)線網(wǎng)絡(luò)的威脅。對(duì)藍(lán)牙協(xié)議本身的攻擊可以分為兩類(lèi):主動(dòng)攻擊和被動(dòng)攻擊。主動(dòng)攻擊是被沒(méi)有認(rèn)證的第三方將正常通信的數(shù)據(jù)進(jìn)行修改;被動(dòng)攻擊可以是對(duì)傳輸內(nèi)容進(jìn)行竊聽(tīng),也可以是對(duì)通信模式進(jìn)行監(jiān)聽(tīng)獲取相關(guān)信息。如:
藍(lán)牙漏洞攻擊(Bluesnar fi ng):Bluesnar fi ng讓攻擊者能夠利用舊設(shè)備的固件漏洞來(lái)訪問(wèn)開(kāi)啟藍(lán)牙功能的設(shè)備。這種攻擊強(qiáng)制建立了一個(gè)到藍(lán)牙設(shè)備的連接,并允許訪問(wèn)儲(chǔ)存在設(shè)備上的數(shù)據(jù),包括設(shè)備的國(guó)際移動(dòng)設(shè)備身份碼(IMEI)。IMEI是每個(gè)設(shè)備的唯一身份標(biāo)識(shí),攻擊者有可能使用它來(lái)把所有來(lái)電從用戶(hù)設(shè)備路由到攻擊者的設(shè)備。
藍(lán)牙劫持(Bluejacking):Bluejacking是一種在開(kāi)啟藍(lán)牙功能的設(shè)備上實(shí)施的攻擊,例如對(duì)手機(jī)的攻擊。攻擊者通過(guò)發(fā)送未經(jīng)請(qǐng)求的消息給開(kāi)啟藍(lán)牙功能的設(shè)備用戶(hù)來(lái)發(fā)起B(yǎng)luejacking。實(shí)際的消息不會(huì)對(duì)用戶(hù)的設(shè)備造成損害,但是它們可以誘使用戶(hù)以某種方式做出響應(yīng)或添加新聯(lián)系人到設(shè)備的地址薄。這種消息發(fā)送攻擊類(lèi)似于對(duì)電子郵件用戶(hù)進(jìn)行垃圾郵件和網(wǎng)絡(luò)釣魚(yú)攻擊。當(dāng)用戶(hù)對(duì)包含有害目的之bluejacking消息發(fā)起了一個(gè)響應(yīng),則Bluejacking能夠造成危害。
藍(lán)牙竊聽(tīng)(Bluebugging):Bluebugging利用一個(gè)在一些較老設(shè)備固件上存在的漏洞來(lái)獲取設(shè)備和其命令的訪問(wèn)權(quán)限。這種攻擊無(wú)需通知用戶(hù)就使用設(shè)備的命名,從而讓攻擊者可以訪問(wèn)數(shù)據(jù)、撥打電話、竊聽(tīng)通話、發(fā)送信息和利用設(shè)備提供的其他服務(wù)與功能。
拒絕服務(wù)(Denial of Service):像其他無(wú)線技術(shù)一樣,藍(lán)牙也容易受到DoS攻擊。影響包括讓設(shè)備的藍(lán)牙接口無(wú)法使用和耗盡設(shè)備電池。這些類(lèi)型的攻擊效果并不顯著,而且因?yàn)樾枰咏拍苁褂盟{(lán)牙,所以通??梢院苋菀椎赝ㄟ^(guò)簡(jiǎn)單的移動(dòng)到有效范圍之外來(lái)避免。
模糊測(cè)試攻擊(Fuzzing Attacks):藍(lán)牙Fuzzing Attacks包括發(fā)送格式錯(cuò)誤或其他非標(biāo)準(zhǔn)的數(shù)據(jù)給設(shè)備的藍(lán)牙射頻接口和觀察設(shè)備如何反應(yīng)的。如果一個(gè)設(shè)備的運(yùn)作被這些攻擊減慢或停止,一個(gè)嚴(yán)重的漏洞可能存在于協(xié)議棧之中。
配對(duì)竊聽(tīng)(Pairing Eavesdropping):PIN碼/傳統(tǒng)配對(duì)(藍(lán)牙2.0及更早版本)和LE配對(duì)(藍(lán)牙4.0)都易受到竊聽(tīng)攻擊。如果給予足夠的時(shí)間,成功的竊聽(tīng)者會(huì)收集所有的配對(duì)幀,然后他/她能夠確定這個(gè)(些)機(jī)密的密鑰——它允許受信設(shè)備模擬和主動(dòng)/被動(dòng)數(shù)據(jù)解密。
安全簡(jiǎn)單配對(duì)攻擊(Secure Simple Pairing Attacks):許多技術(shù)可以強(qiáng)制遠(yuǎn)程設(shè)備使用立即工作SSP,然后利用其缺乏MITM保護(hù)的特性(例如,攻擊設(shè)備聲稱(chēng)它沒(méi)有輸入/輸出功能)。此外,固定萬(wàn)能鑰匙也可能讓攻擊者進(jìn)行MITM攻擊[5]。
越來(lái)越多的移動(dòng)醫(yī)療,特別在可穿戴醫(yī)療設(shè)備中使用到了藍(lán)牙技術(shù),而醫(yī)療器械不同于別的設(shè)備,由于醫(yī)療器械的目的和性質(zhì),對(duì)數(shù)據(jù)的安全性和準(zhǔn)確性有著相當(dāng)高的要求。為滿(mǎn)足此要求,可以在應(yīng)用層和鏈路層實(shí)現(xiàn)。但現(xiàn)有市場(chǎng)的情況在應(yīng)用層進(jìn)行安全實(shí)現(xiàn)的并不多。大多數(shù)的情況是直接使用市面上的藍(lán)牙模塊。
在產(chǎn)品設(shè)計(jì)中,首先通過(guò)改進(jìn)加強(qiáng)藍(lán)牙標(biāo)準(zhǔn)中的安全體制進(jìn)行提升,然后改變藍(lán)牙移動(dòng)系統(tǒng)的加密算法來(lái)提升安全度,最后可以在應(yīng)用層進(jìn)行安全機(jī)制加強(qiáng)的環(huán)節(jié),實(shí)現(xiàn)藍(lán)牙在移動(dòng)醫(yī)療中的安全性[6]。因此,建議對(duì)移動(dòng)醫(yī)療軟件進(jìn)行設(shè)計(jì)規(guī)范,要求其在應(yīng)用層和鏈路層都進(jìn)行安全實(shí)現(xiàn),進(jìn)而保障數(shù)據(jù)的安全性和準(zhǔn)確性[7]。
根據(jù)藍(lán)牙的基本服務(wù)、安全模式和鏈路級(jí)的安全,對(duì)移動(dòng)醫(yī)療中藍(lán)牙的使用提出以下建議。
①根據(jù)之前所述的安全模式,盡可能應(yīng)用較高的安全模式。當(dāng)出現(xiàn)不同版本的藍(lán)牙設(shè)備進(jìn)行配對(duì)時(shí),應(yīng)使用各自最安全的模式。
②更改藍(lán)牙設(shè)備的默認(rèn)設(shè)置,不使用默認(rèn)的PIN碼,增加PIN碼復(fù)雜度、隨機(jī)性、長(zhǎng)度和隱私性;禁用不必要的藍(lán)牙配置文件和服務(wù),以減少攻擊者可能試圖利用的漏洞。
③設(shè)置從設(shè)備為靜態(tài)狀態(tài),只能和特定的主設(shè)備連接,屏蔽其他藍(lán)牙設(shè)備的搜索。
④連接時(shí),主從設(shè)備分別請(qǐng)求對(duì)方發(fā)送ID號(hào),確認(rèn)是否為合法設(shè)備。
⑤對(duì)傳輸數(shù)據(jù)進(jìn)行加密。
⑥當(dāng)不需要時(shí),確保藍(lán)牙設(shè)備處于關(guān)閉狀態(tài),以減少設(shè)備暴露于惡意活動(dòng)的機(jī)會(huì)。
⑦將藍(lán)牙設(shè)備設(shè)置為不可發(fā)現(xiàn)模式,以提高藍(lán)牙設(shè)備的安全性,減少不必要的安全威脅。
隨著藍(lán)牙在移動(dòng)醫(yī)療中的廣泛應(yīng)用,有必要結(jié)合高層的認(rèn)證機(jī)制來(lái)進(jìn)一步提高系統(tǒng)的安全性,如采用服務(wù)級(jí)別安全模式來(lái)實(shí)現(xiàn)記憶用戶(hù)的接入控制,以安全管理器為核心進(jìn)行認(rèn)證、授權(quán),動(dòng)態(tài)發(fā)布密鑰進(jìn)行加密等[8]。
[1] 劉康.藍(lán)牙技術(shù)簡(jiǎn)介[J].江蘇通信技術(shù),2001,17(2):41-44.
[2] 藍(lán)牙與WiFi無(wú)線連接哪個(gè)對(duì)移動(dòng)設(shè)備最需要[J].計(jì)算機(jī)與網(wǎng)絡(luò),2012,38(14):31.
[3] Bluetooth SIG. Bluetooth speci fi cation version4.0[EB/OL].https://www.Bluetooth.org/DocMan/handlers/DownloadDoc.ashx?doc_id=229737,2010-6/2015-1.
[4] 嚴(yán)霄鳳.藍(lán)牙安全研究[J].網(wǎng)絡(luò)安全技術(shù)與應(yīng)用,2013,13(2):51-54.
[5] NIST. Guide to Bluetooth Security[EB/OL].http://csrc.nist.gov/publications/nistpubs/800-121-rev1/sp800-121_rev1.pdf,2012-6.
[6] 胡榮.藍(lán)牙安全性的改進(jìn)與實(shí)現(xiàn)[D].成都:電子科技大學(xué),2010.
[7] 譚鳳林,葛臨東.藍(lán)牙安全機(jī)制分析[J].信息工程大學(xué)學(xué)報(bào),2002,3(2):76-78.
[8] 馬躍,曹秀英.藍(lán)牙鏈路級(jí)安全的研究[J].應(yīng)用科學(xué)學(xué)報(bào),2004,22(2):265-268.