研究證明,較長距離上也可通過近場通信(NFC)協議滲漏小量數據,比如口令和加密密鑰。
NFC協議可供兩個設備在10厘米距離內相互通信。大多數智能手機具備NFC功能,常用于購物支付、文件共享和身份驗證。
應用安全公司Checkmarx高級研究員 Pedro Umbelino 發現,NFC的實際有效范圍比10厘米長得多,如果目標設備物理隔離但裝有其他通信系統,比如WiFi、藍牙和GSM,NFC在秘密滲漏數據方面可謂非常高效。
Pedro Umbelino 為自己的攻擊方法命名NFCdrip,通過修改NFC的工作模式來調制數據。在安卓系統中,修改NFC工作模式不需要任何特殊權限,發起NFCdrip攻擊更加容易。
NFCdrip采用振幅鍵控(ASK)調制的最簡形式——開關鍵控(OOK),也就是將載波信號的有無定義為“1”和“0”。由于一個字符由8比特構成,滲漏一個字符需要發出8個比特,但研究人員通常建議添加額外的校驗位。
Umbelino的實驗證明,安卓手機上安裝惡意軟件便可向幾十米外連接了普通調幅(AM)收音機的另一部安卓手機傳輸數據。
在實驗中,2.5米距離內,該攻擊可以每秒10-12比特的速率實現無錯傳輸。隨著距離的延伸,2.5-10米距離內,雖然速率不變,但會出現一些錯誤,不過這些錯誤可以修正。距離超過10米,信號會衰減,錯誤會增多,但Umbelino仍成功在60米距離上傳輸了一些數據。甚至連墻都擋不住這種攻擊,10米距離內穿墻傳輸無礙。
如果使用AM天線和軟件定義無線電(SDR)適配器,NFCdrip攻擊的有效范圍還可大幅延伸。
Umbelino指出,某些手機甚至開啟了飛行模式也防不住NFCdrip攻擊,而且該攻擊不局限于安卓手機,在筆記本電腦和其他設備上也有效。
Checkmarx計劃將NFCdrip的概念驗證應用開源。同時,網上已經有了演示Umbelino實驗的幾段視頻,Hack.lu也有關于該發現的研討。