物聯網(IoT)的問世,使得聯網裝置得以推展各式全新的應用。除了耳機和鍵盤之外,各種支援IoT的電子產品開始如雨後春筍般冒出。近來受到高度關注的一個新案例是:網路應用不再依賴不間斷的串流,而是改為定期傳送少量的資料。
這樣的轉變對很多應用都很重要,尤其是感測器應用,因為恆溫器、安全感測器或醫療監控裝置等遠端周邊設備,須持續回傳周圍環境的資訊。這一切得歸功於藍牙標準持續不斷地演進。
傳統藍牙與藍牙低功耗演進史
如今,生活早已離不開藍牙。最初的藍牙規格早在1998年便已制定完成,全球第一個藍牙耳機則是在1999年問世。自那時起,從電腦滑鼠和鍵盤,到可攜式喇叭和耳機等萬事萬物都可靠它進行連接。傳統藍牙(Bluetooth Classic)涵蓋79個通道,最高傳輸速率為3Mbps,最遠傳輸距離為50公尺,是進行資料傳輸、音訊串流、手機照片分享的理想選擇。
傳統藍牙裝置(至少是周邊裝置)大多靠電池供電,但電源從來都不是問題,因為這類裝置可輕易充電和更換電池。以電腦滑鼠為例,即便滑鼠電池只能提供幾天的電量也沒問題,只要接上充電線或更換電池即可。
為了支援125kbps至2Mbps的低頻寬速率,新的藍牙低功耗(BLE)標準應運而生,它可在傳統的連接導向模式外,提供另一種全新的無連接模式。省電是BLE最顯著強化的特性,以便長時間為裝置供電。在預設模式下,BLE裝置會進入休眠狀態,直到它們準備好開始傳輸資料為止。BLE裝置的資料傳輸速率較低,因此耗電量也只有傳統藍牙裝置的1~5%,功耗則為15~20µA;也就是說,一顆標準的鈕扣電池,可為大多數BLE裝置供電多年。
BLE帶動醫療物聯網快速發展
由於具有適當的資料傳輸速率和低功耗等誘人特性,BLE被廣泛用於耳機和恆溫器等消費性產品,而且應用範圍越來越廣。然這只是其中一項優勢,上述特性使得BLE也非常適合用來連接醫療裝置,也就是醫療物聯網(IoMT)裝置。舉例而言,血糖監測儀可透過BLE將血糖濃度資料傳送到智慧型手機,以便進行監測。藉由在醫療裝置上黏貼低成本的BLE標籤,醫院可輕鬆進行庫存追蹤和定位。此外,BLE可支援大量的聯網裝置,在臨床或醫院環境中,能夠同時連接數百(甚或數千個)聯網醫療裝置是件非常重要的事。以護理師的監測站為例,透過BLE,所有樓層的ECG和其他病患監測設備,可將遙測資訊轉送到一個中央監控系統。此外,心率監測器和健身手表等穿戴式健康裝置也都可透過BLE傳輸脈搏資訊。
如此一來,這類裝置便可擺脫雜亂的連接線路和笨重電池的負擔,並轉而發揮智慧型手機通訊的優勢,使得整體產業又向前跨出一大步。然而,任何創新技術都無可避免地會面臨一些風險。就醫療裝置而言,這些風險不僅是音頻品質下降或電池續航力縮短這麼簡單,而是可能直接危及患者的生命安全。
建構醫療物聯網安全防護網
對聯網醫療裝置而言,一旦IoMT遭受網路攻擊,患者便命在旦夕,因為BLE射頻介面遭到攻擊後,IoMT裝置的必要功能將無法運作,進而對患者造成傷害,甚至可能導致患者死亡。然而監管機構最近發現並揭露了藍牙醫療裝置的多個安全漏洞,因而強制要求製造商採取修補措施,甚至進行全面召回。最有名的例子之一是SweynTooth漏洞,它導致許多BLE IoMT裝置完全停擺。為保護患者生命安全,美國FDA向醫療裝置製造商發布了一份安全警訊,警告如果其中某個安全漏洞遭到攻擊,可能導致設備當機、鎖死和凍結,攻擊者甚至可藉此繞過各種安全防禦機制(圖1)。
SweynTooth及其他類似的安全漏洞給製造商上了寶貴的一課,讓他們意識到供應鏈上游存在著漏洞。儘管安全漏洞令人擔憂,但其實有漏洞的程式碼並不是醫療設備製造商編寫的。事實上,製造商對於程式碼中有漏洞並不知情。製造商僅從可信賴的知名電子元件製造商採購藍牙系統單晶片(SoC),然後加入他們的設備中,然而安全漏洞也隨之悄悄潛入。如未在產品上市前徹底執行安全測試,醫療設備中的每個子系統將危機重重。
協定模糊測試發現隱藏漏洞
全球多家知名製造商都曾遭受SweynTooth漏洞威脅,包括Texas Instruments、NXP、Cypress、Dialog Semiconductors、Microchip、STMicroelectronics和Telink Semiconductor。為什麼連這些知名製造商都會遭受威脅?問題在於這些安全漏洞隱藏在協定堆疊中,使得漏洞檢測和診斷變得異常困難。安全社群已經開發出一系列可辨識應用級漏洞的最佳實作,包括通用的策略和威脅資料庫,以便對應用軟體和程式庫進行交叉檢查。然而,排除協定級漏洞則困難得多。事實上,只有一種方法可以徹底測試這類安全漏洞:一種名為協定模糊測試的窮舉測試(Exhaustive Testing)機制。
簡單的說,協定模糊測試是指以系統性方式,將各種錯誤注入通訊中,以混淆另一端連接的實體,使其進入錯誤狀態。攻擊者只需注入非常簡單的錯誤,例如傳送同一個封包的多個副本。複雜一點的則是注入嚴重損壞的通訊協定。以下列舉幾個例子:
.在一個封包中設定表示連接開始和結束的標記。
.封包中的欄位可能太大或太小。
.封包中的欄位可設定為無效值。
.傳送的封包可能順序錯亂。
在建立連接時進行的交握,以便建立安全、加密和其他通訊參數很容易成為攻擊目標。由於遠端設備是根據交握期間建立的設定來進行自我配置,因此注入嚴重損壞的封包或封包序列,將導致關機或通訊錯誤,需要手動重開機。
如CVE-2019-19194所述,在最惡劣情況下,駭客可能直接對交握發動攻擊,以便利用交握期間建立的安全和加密參數,繞過會限制某些操作的管制,進而無所顧忌地控制系統。對於IoMT裝置而言,這將是一場大災難。比方說,攻擊者可指示設備回報不正確的遙測資料、忽略其他命令、將資料提供給未經授權的系統,因而違反病患隱私權政策,甚至開出包含致命藥物的用藥處方。
修復BLE IoMT裝置的協定層安全漏洞
顯然地,醫療設備製造商對此漏洞感到憂心忡忡,一如美國FDA和全球相關法規機構提出的警告一樣。但是,保護聯網設備的最佳方法是什麼?首先須部署驗證和審核策略,以便找出SoC協定堆疊中的漏洞。製造商須充當最後一道安全防線。畢竟,他們有義務將受影響裝置的警告訊息、防護策略,以及補救韌體更新,快速傳送給病患和護理人員。從上面的例子來看,即使是資源最充足的製造商,也可能會供應易受攻擊的晶片。
然而,安全防護是一個持續不間斷的過程,這個任務並沒有終點。因此,裝置製造商在推出新產品之前,必須要求晶片供應商先執行修補程式更新。同時,他們還須負起責任,對所有裝置進行完整的協定模糊測試評估,並在提交給FDA的上市許可文件中,詳述其驗證和審核策略。 隨著IoMT裝置採用BLE連接越趨盛行,協定模糊測試驗證是維護病患安全、強化對先進技術信任感的重要手段。幸運的是,協定模糊測試工具套件的可用性和易用性越來越高,即使是缺乏網路安全防護經驗的品質控制團隊,也能輕鬆駕馭。有鑑於晶片供應商可能需要時間來徹底重現、診斷、補救和驗證安全漏洞,現在正是以開發流程來執行測試產品的好時機。以SweynTooth漏洞為例,越晚發現漏洞,修補的代價就越大。
(本文作者為是德科技安全解決方案事業群資深副總裁)