無線運作,免看守照樣竊資
Samy Kamkar所帶來的新給西叫作KeySweeper,是款以Arduino為基楚的鍵盤側錄裝置,能夠側錄所有周遭Microsoft無線鍵盤的輸入資料,包括使用者以鍵盤輸入的帳號與密碼。
由於KeySweeper裝在USB充電器的外殼之中,並且保有充電功能,這種偽裝的技術,就如我們所熟知的「好摺凳」一樣,能夠暗藏殺機於無形之中,就算正大光明的使用,也不容意露出馬腳。更可怕的是,KeySweeper裝有充電式鋰電池,當它插入插座時,能夠以室內電源運作並為電池充電,拔下插座後還可以透過鋰電池繼續運作一段時間。
KeySweeper也裝有行動電話模組,可以透過2G網路(由於傳送的資料量很小,2G網路的頻寬不會造成影響)或簡訊將側錄到的資料即時傳送出來。把KeySweeper送到「受害者」手上後,受害者可能不疑有他地把它當做一般USB充電器使用,如此一來受害者的資訊安全就受到很大的威脅。
▲KeySweeper是款鍵盤側錄裝置,能夠側錄並傳送Microsoft無線鍵盤的輸入資料。(圖片來源:samy.pl)
▲KeySweeper有著USB充電器般的外殼,能夠隱藏殺機於無形。(圖片來源:samy.pl)
▲機身內裝有Arduino Pro mini、RF模組、行動電話模組以及電源模組。(圖片來源:samy.pl)
▲受害者從外觀可能不會發現KeySweeper有任何異狀。(圖片來源:samy.pl)
▲KeySweeper的USB端子確實可以提供電力,可以降低受害者的戒心。(圖片來源:samy.pl)
破解鍵盤加密機制
KeySweeper主要的功能在於擷取Microsoft無線鍵盤的2.4GHz RF訊號,並進行解密,然後將資料儲存下來,或是透過手機通訊模組即時發送給使用者。Samy Kamkar也準備了瀏覽器介面的操作後台,可以即時顯示被側錄鍵盤的輸入狀況。
為了節省簡訊費用,KeySweeper能夠透過設定,在偵測關鍵字之後傳送後續的相關文字,比方說KeySweeper偵測到受害者輸入「www.bank.com」之後,傳送接下來輸入的文字,這些文字很可能就是登入網路銀行的帳號與密碼。
在設計KeySweeper的過程中,最重要的部分就是鍵盤訊號的解密過程。KeyKeriki這款裝置的開發者Thorsten Schröder與Max Moser,透過逆向工程的方式破解了Microsoft無線鍵盤的加密流程,但是KeyKeriki的尺寸太大,並不適合應用在KeySweeper。不過Samy Kamkar使用了這項成果,並將程式改善為能夠透過便宜且輕巧的微控制器運作,讓KeySweeper將尺寸縮小到能夠塞入USB充電器中。
▲KeySweeper具有瀏覽器介面的操作後台,可以即時顯示被側錄鍵盤的輸入狀況。(圖片來源:samy.pl)
▲KeySweeper也可以透過簡訊發送側錄資料。(圖片來源:samy.pl)
▲山寨USB充電器中的空間很大,很適合用來改造。(圖片來源:samy.pl)
▲KeySweeper的核心零件是Arduino Pro Mini。(圖片來源:Arduino)
▲在攔截訊號的部分,採用nRF24L01搭配2.4GHz RF晶片。(圖片來源:samy.pl)
▲Adafruit FONA是用來傳送資料的手機通訊模組。(圖片來源:Adafruit)
▲為了要在充電器中塞入所有東西,Samy Kamkar將原本的充電模組以小型充電器的模組取代。(圖片來源:samy.pl)
▲如此一來,就可以將所有東西都塞進去。(圖片來源:samy.pl)