背景介紹
由于射頻技術的發(fā)展,鍵盤連接到計算機不再局限于有線的連接方式,而是出現了使用射頻技術的無線鍵盤。相比較于傳統(tǒng)的有線鍵盤,無線鍵盤沒有了繁雜的線纜,同時不再被距離限制。
目前世面上的無線鍵鼠分為藍牙類型和2.4GHz類型,其中2.4GHz類型的又占據了絕大部分的市場份額。2.4GHz類型的鍵鼠主要指利用專屬無線協(xié)議開發(fā)的無線產品,使用時一般先在計算機的USB 接口處插上一個適配器,鼠標和鍵盤通過電池供電,兩者之間通過射頻技術傳遞消息,將用戶的輸入輸出到電腦上。但是對目前熱賣的無線鍵鼠進行研究之后發(fā)現,在無線鍵鼠和適配器的通訊過程中存在很大的安全漏洞,用戶的輸入很容易遭受到篡改,造成安全威脅。
現在我們請上這次實驗的主角——無線鍵鼠套裝。

準備工作
本次實驗用的硬件是曾經出現過的HackRF,之前我們用它完成了GPS定位劫持和門鈴重放實驗。因為對10MHz-6GHz頻段的支持,讓我們可以用它攻擊工作在2.4GHz頻段的無線鍵鼠。實驗的平臺為kali Linux。下圖為Hackrf。

在對任何無線電設備進行研究的過程中,首先需要找到設備進行通信的頻率。在kali Linux上面就有這樣一款軟件來完成這一步驟,而且操作簡單,使用圖形化界面。下圖即為通過 Gqrx SDR 我們可以找到無線鍵鼠的工作頻段——2427MHz:

攻擊思路
對付無線設備最簡單直接同時也是最有效的方法就是重放攻擊,在之前攻擊無線門鈴的實驗中也采用了類似的思想。它的基本原理就是把竊聽到的數據原封不動地重新發(fā)送給接收方。
很多時候,網絡上傳輸的數據是加密過的,此時竊聽者無法得到數據的準確意義。但如果他知道這些數據的作用,就可以在不知道數據內容的情況下通過再次發(fā)送這些數據達到欺騙接收端的目的。
如果信號沒有采用時間戳或者序列碼的機制,設備會很容易被攻擊利用。下圖為對無線鍵鼠進行重放攻擊的流程演示圖:

結果演示
在實驗中我們錄制了鍵盤上的“B”鍵,錄制完成后直接對得到的射頻信號進行重放,可以看到所錄制的信號在重放過程中將字符“b”打印在了終端上(紅圈部分截取部分):

實驗總結
重放攻擊是一種簡單、粗糙的攻擊方式,只要有能夠收發(fā)射頻信號的硬件設備就可以實現,但越是簡單的攻擊方式就越難以防范。
對于防范重放攻擊而言,用戶能夠做的事情并不多,只能是在購買設備時盡量選擇更加安全的設備來防范可能存在的攻擊。更重要的是廠商在設計設備時引入序列碼等手段消除簡單重放的可能。如果是在公司等對鍵入內容保密性要求較高的場合,建議使用有線鍵盤。

在無線鍵鼠攻擊的下篇,我們將更進一步,對采集到的信號進行分析,推導出用戶按下了鍵盤上的哪些鍵!實施完整的鍵盤監(jiān)聽攻擊。
敬請期待。
|