BLE(Bluetooth Low Energy,,低功耗藍(lán)牙)協(xié)議是藍(lán)牙4.0規(guī)范的一部分,,特點是低功耗,、低延遲,、低吞吐量。由于其省電的特征,,BLE在過去10年被廣泛應(yīng)用于幾乎所有帶電池的設(shè)備中,。但同時,研究人員也在其中發(fā)現(xiàn)了許多的安全漏洞,,其中大部分的研究關(guān)注于BLE 協(xié)議的配對過程,,而忽略了其他許多非常重要的部分。近日,,普渡大學(xué)的研究人員發(fā)現(xiàn)藍(lán)牙重連接過程中存在安全漏洞,,數(shù)十億使用藍(lán)牙軟件棧的智能手機(jī)、筆記本電腦和IoT設(shè)備受到影響,。
BLESA攻擊
來自普渡大學(xué)的研究人員對BLE協(xié)議的重連接過程安全性進(jìn)行了分析,,發(fā)現(xiàn)了一個BLESA (Bluetooth Low Energy Spoofing Attack)漏洞,漏洞影響所有運(yùn)行BLE 協(xié)議的設(shè)備,。
重連接的過程發(fā)生在2個BLE 設(shè)備(客戶端和服務(wù)器)在配對過程中互相認(rèn)證之后,。比如,兩個藍(lán)牙設(shè)備的距離超出范圍,,之后再次進(jìn)入范圍內(nèi),。一般來說,重新連接時,,2個BLE 設(shè)備會檢查對方在配對時協(xié)商的加密密鑰,,然后通過BLE 重新連接并繼續(xù)交換數(shù)據(jù)。
研究人員發(fā)現(xiàn)官方BLE 規(guī)范中并沒有對重新連接的過程進(jìn)行清晰的描述,。因此,,BLE 軟件實現(xiàn)時就引入了2個對稱問題:
設(shè)備重新連接時的認(rèn)證是可選的而非必須的。
如果用戶設(shè)備沒有強(qiáng)制IoT 設(shè)備對通信數(shù)據(jù)進(jìn)行認(rèn)證,,那么認(rèn)證可能就會被繞過,。
這2個問題就為BLESA 攻擊打開了大門,當(dāng)附近的攻擊者繞過了重連接的驗證過程,,并在沒有正確信息的情況下發(fā)送偽造的數(shù)據(jù)給BLE 設(shè)備,,就會引發(fā)人類操作人員和自動化過程產(chǎn)生錯誤的結(jié)果。PoC 視頻如下所示:
https://www.youtube.com/embed/tO9tUl2yfFc
研究人員發(fā)現(xiàn),,雖然BLE 規(guī)范中說得不夠明確,,但并不是所有的BLE 實現(xiàn)都受到該問題的影響。研究人員分析了不同操作系統(tǒng)上多個支持BLE 通信的軟件棧,發(fā)現(xiàn)BlueZ (基于Linux的 IoT設(shè)備),, Fluoride (安卓)和iOS BLE 棧都受到BLESA 攻擊的影響,但Windows 設(shè)備上的BLE 棧不受到該攻擊的影響,。
今年6月,,蘋果公司對該漏洞分配了CVE編號 CVE-2020-9770,并修復(fù)了該漏洞,。研究人員在測試的安卓BLE實現(xiàn)中發(fā)現(xiàn),,運(yùn)行安卓10的Google Pixel XL 仍然受到該攻擊的影響。對基于Linux的IoT 設(shè)備,,BlueZ開發(fā)團(tuán)隊稱將修改代碼使用正確實現(xiàn)BLE 重連接過程的代碼,。
補(bǔ)丁
與之前的藍(lán)牙漏洞類似,對所有受影響的設(shè)備打補(bǔ)丁對系統(tǒng)管理員來說簡直是不可能的,。其中,,部分使用BLE 的物聯(lián)網(wǎng)設(shè)備可能永遠(yuǎn)無法更新。
攻擊者還可以利用設(shè)備上的DoS 漏洞讓藍(lán)牙連接斷開,,然后觸發(fā)重連接操作,,然后發(fā)起B(yǎng)LESA 攻擊。確保BLE 設(shè)備不掉線是不可能的,。據(jù)之前BLE 使用的統(tǒng)計數(shù)據(jù),,使用有漏洞的BLE 軟件棧的設(shè)備超過10億。