摘 要:藍牙技術是一種被廣泛應用在個人設備上的無線通信技術。這種技術從出現(xiàn)到現(xiàn)在已經(jīng)經(jīng)過了三次的更新?lián)Q代,在無線外設方面已經(jīng)成為不可替代的技術。但是藍牙技術由于其設計和實現(xiàn)的思想的原因有一些安全問題,這些安全問題可能對我們平時的通信安全和個人隱私造成危害。本文對藍牙技術做了一個概述,并就其安全性問題做一些討論,最后給出一點可能的解決方案。
關鍵詞:藍牙(Bluetooth);安全性;隱私
中圖分類號:TN925
1 概述
1.1 藍牙技術的產(chǎn)生。藍牙技術是上世紀九十年代瑞典愛立信公司為了能讓鍵盤和主機用無線的方式連接起來而開發(fā)的一種無線通信技術。“藍牙”這名稱來自10世紀的丹麥國王哈拉爾德(Harald Gormsson)的外號。出身海盜家庭的哈拉爾德統(tǒng)一了北歐四分五裂的國家,成為維京王國的國王,由于他喜歡吃藍莓,牙齒常常染成藍色,而獲得“藍牙”的綽號。1998年,愛立信公司為這種新的無線通信技術取名“藍牙”,希望它能成為一個統(tǒng)一的標準。藍牙技術最開始是用于移動設備,后加入了實時的語音通信功能,就成了我們現(xiàn)在所廣泛使用的藍牙耳機技術。
1.2 藍牙技術的設計思想。藍牙技術和我們一般所談論的無線通信技術有很大的不同。這些不同點許多是由于它獨特的設計思想。
首先,藍牙技術從設計開始,其初衷就是面向個人用戶,最大的用途就是個人用戶移動設備(如手機,耳機等)之間和移動設備和固定設備之間的連接線纜的替代品。不像802.11,它不要求有固定的基礎設施,而802.11一般要求有無線接入點(AP)。任意兩臺藍牙設備之間都可以建立連接,其中任意一方都可以作為主叫方(Master)。另外,藍牙技術支持多種形式的通信:同步數(shù)據(jù)通信、異步數(shù)據(jù)通信、分時通信。
同步數(shù)據(jù)通信的例子就是藍牙耳機的語言通信,要求固定數(shù)據(jù)率和一定的通信質(zhì)量。而兩點之間的一般文件傳輸和圖像傳輸則是異步通信,其對時延要求不很高,但對通信速率要求較高。最后當一臺設備作為中心(Master)設備同時和幾臺(Slave)設備通信時,中心的設備會將時間分成時隙,在不同的時隙和不同的Slave設備傳輸數(shù)據(jù),這就是分時通信。
2 藍牙設備通信機制
以藍牙耳機和手機的連接和通信為例。通信一共分三個階段:搜索設備;配對(pairing);數(shù)據(jù)傳輸。
2.1 搜索設備。一個藍牙設備要想和其它設備通信,就必須知道它的硬件地址。這些信息可以通過搜索設備獲得。搜索方循環(huán)發(fā)送一個精心設計的消息,長度為32次跳頻的時間。任意的在它搜索范圍內(nèi)(一般是10M)的處于Discoverable狀態(tài)的藍牙設備會返問自己的硬件地址(藍牙設備地址,BD_ADDR)和時鐘信息。經(jīng)過一段時間的搜索,搜索方就獲得了一些設備的信息。
獲得了信息后,通信雙方會有一個paging的過程。搜索方通過搜索得到想要通信的設備的硬件信息后,發(fā)送一個只有這臺設備才能識別的消息。消息由目標設備的BD_ADDR的低地址部分構(gòu)成。然后雙方就建立起一個初步的明文通信,然后交換一些必要的信息。
2.2 配對。配對的過程本質(zhì)上就是交換連接密鑰的過程。在藍牙通信中有很多種密鑰,其中最基本的就是連接密鑰。連接過程中的認證密鑰和數(shù)據(jù)通信過程中的加密密鑰都是由連接密鑰產(chǎn)生。
連接密鑰的生成過程:(1)生成一個初始密鑰。初始密鑰由以下四部分構(gòu)成:BD_ADDR,時鐘信息,隨機數(shù)(明文傳輸?shù)模?,Pass Key。BD_ADDR是硬件地址,時鐘信息是paging過程中交換的,隨機數(shù)是明文傳輸?shù)?。所以這里只有Pass Key是通信雙方共享的秘密信息。Pass Key是在連接過程中在有輸入界面的設備上輸入的一串數(shù)字,分固定的和不固定的兩種。耳機等沒有輸入鍵盤的設備一般都采用固定的Pass Key,在連接的另一端輸入一個出廠時就固定的key;有輸入鍵盤的設備,如手機,就要在雙方輸入一個相同的key。但是這個key的長度有限,安全性也就有限,而固定Pass Key的設備就更是沒有什么安全性可言了(一般都是0000或1234)。由此可見,密鑰的交換過程存在不安全;(2)生成和交換連接密鑰。連接密鑰由以上的初始密鑰做一個運算得到。
2.3 數(shù)據(jù)通信。數(shù)據(jù)傳輸是加密的。加密采用的是流加密方式,即由連接密鑰產(chǎn)生一個密鑰流,然后將明文和密鑰做模2加運算。這種算法是對稱的,同一套設備既可用于加密又可用于解密,這樣可以減小設備體積。
3 藍牙通信的安全性問題
前面提到一點藍牙技術的不安全的方面。利用藍牙技術的攻擊方式如下:
3.1 竊聽。如前所述,盡管數(shù)據(jù)的通信過程是加密的,但密鑰的交換過程是不安全的。所以整個通信過程都是不安全的。在竊聽的基礎上可以做其它的攻擊,如冒充等。
3.2 位置跟蹤。這種攻擊方式是和其它的無線技術都不同的。它是基于藍牙技術的應用場合—--個人設備。一般情況下,個人設備和個人的身份是綁定的,所以如果確定了一個個人設備在某地,那么有非常大的可能性個人設備的擁用者也在。
3.2.1 問詢攻擊。攻擊發(fā)生在設備搜索過程中。任何的設備如果設成Discoverable狀態(tài),那么它會對所有的搜索問詢做出反應。藍牙設備價格便宜,假設在一條街上各處設置幾個藍牙設備,覆蓋所有的范圍,那么只要特定目標出現(xiàn)在這條街上那就一定會被發(fā)現(xiàn)。這種攻擊方式可泄露設備搖擁有者的物理位置。這是很特別的。
3.2.2 流量監(jiān)控。連接建立時所用數(shù)據(jù)包的包頭內(nèi)含一個Access Code,里面含有設備的物理地址信息。這個code可以唯一的確定正在通信的一對設備。同樣,這個信息可被用來跟蹤。這種攻擊并不需要通信雙方處于Discoverable狀態(tài)。
3.2.3 對跳頻的攻擊。藍牙采用的跳頻技術,但是子頻段數(shù)只有79個。所以可以用多個設備監(jiān)控所有的通信信道。另外跳頻的頻率和設備的物理地址有關。但這還只是理論上的攻擊方式。
3.2.4 對設備名稱的攻擊。在連接建立階段,設備的名稱不需要任務的認證就可通過一條專門的指令獲得。而設備的名稱一般會涉及到一些個人的隱私信息。這種方面要求被攻擊設備處于可連接狀態(tài)。
3.3 對于藍牙耳機的一種安全改進。耳機因為沒有鍵盤,所以Pass Key都是出廠時固定的。這樣通信過程中所有的信息都可以說是明文。改進的方式一是設計一個數(shù)據(jù)接口,比如充電的USB接口可以重用,可以設計成在電腦上更改Pass Key;另一種方式是使用語音作為Pass Key的內(nèi)容,如加入一個簡單的語音識別模塊,把語音轉(zhuǎn)變成Pass Key。這是利用耳機具有麥克風這個語音輸入設備的特點。
4 結(jié)束語
藍牙是一種短距離無線通信技術,因為其協(xié)議設計的問題,存在一些安全漏洞和安全攻擊,需要進行一定的安全改進和增強。
參考文獻:
[1]郁濱,張順.藍牙位置隱私保護方案的研究與設計[J].通信學報,2011(09).
[2]嚴霄鳳.藍牙安全研究[J].網(wǎng)絡安全技術與應用,2013(02).
[3]陳麗,趙志強,蘇小維.基于DES的藍牙安全機制研究[J].數(shù)字通信,2012(01).
作者簡介:柳楊才(1968-),男,山東煙臺人,研究生,工程師,研究方向:后勤信息化建設。
作者單位:中國人民解放軍92117部隊,北京 100072