BLUFFS - 藍牙中允許 MITM 攻擊的漏洞

Daniele Antonioli 是藍牙安全研究員,先前開發了BIAS、BLUR 和KNOB 攻擊技術,他在藍牙會話協商機制中發現了兩個新漏洞(CVE-2023-24023),影響所有支援安全連接模式的藍牙實現.” “安全簡單配對”,符合藍牙核心4.2-5.4規範。 為了展示已識別漏洞的實際應用,我們開發了 6 種攻擊選項,使我們能夠侵入先前配對的藍牙裝置之間的連線。 實作攻擊方法的程式碼和用於檢查漏洞的實用程式已發佈在 GitHub 上。

這些漏洞是在分析實現前向保密(前向和未來保密)標準中描述的機制時發現的,該機制在確定永久密鑰的情況下抵消了會話密鑰的洩露(洩露永久密鑰之一不應導致解密先前攔截的或未來的會話)以及會話金鑰的重複使用(一個會話的金鑰不應適用於另一個會話)。 發現的漏洞使得繞過指定的保護並在不同的會話中重複使用不可靠的會話金鑰成為可能。 這些漏洞是由基本標準中的缺陷引起的,並非特定於單一藍牙堆疊,並且出現在不同製造商的晶片中。

BLUFFS - 藍牙中允許 MITM 攻擊的漏洞

所提出的攻擊方法實現了不同的選項來組織系統與週邊設備之間的經典(LSC,基於過時加密原語的傳統安全連接)和安全(SC,基於ECDH 和AES-CCM 的安全連接)藍牙連接的欺騙,如下所示以及組織 MITM 連接,對 LSC 和 SC 模式下的連接進行攻擊。 假設所有符合該標準的藍牙實作都容易受到 BLUFFS 攻擊的某些變體的影響。 該方法在英特爾、博通、蘋果、谷歌、微軟、CSR、羅技、英飛凌、Bose、戴爾和小米等公司的 18 台設備上進行了演示。

BLUFFS - 藍牙中允許 MITM 攻擊的漏洞

這些漏洞的本質可以歸結為在不違反標準的情況下,透過在連接協商過程中指定最小可能的熵並忽略帶有身份驗證參數(CR) 的回應內容,這導致基於永久輸入參數產生會話金鑰(會話金鑰SK 是根據永久金鑰(PK) 和會話期間商定的參數計算為KDF) 。 例如,在中間人攻擊中,攻擊者可以在會話協商過程中將參數𝐴𝐶和𝑆𝐷替換為零值,並將熵𝑆𝐸設為1,這將導致形成具有實際值的會話金鑰𝑆𝐾。1 位元組的熵(標準最小熵大小為7 個位元組(56 位元),其可靠性與DES 金鑰選擇相當)。

如果攻擊者設法在連接協商期間使用較短的金鑰,那麼他就可以使用暴力破解來確定用於加密的永久金鑰(PK)並實現裝置之間流量的解密。 由於 MITM 攻擊可以觸發使用相同的加密金鑰,因此如果找到該金鑰,則可以使用它來解密攻擊者攔截的所有過去和未來的會話。

BLUFFS - 藍牙中允許 MITM 攻擊的漏洞

為了阻止漏洞,研究人員建議對標準進行更改,擴展LMP協議,並更改在LSC模式下產生金鑰時使用KDF(金鑰匯出函數)的邏輯。 此變更不會破壞向後相容性,但會導致啟用擴展 LMP 命令並發送額外的 48 個位元組。 負責開發藍牙標準的藍牙 SIG 已提議拒絕透過密鑰最大為 7 位元組的加密通訊通道進行連線作為安全措施。 鼓勵始終使用安全模式 4 等級 4 的實作拒絕金鑰大小最大為 16 位元組的連線。

來源: opennet.ru

添加評論