惡意 Android應用程式駭入RFID 支付卡

趨勢科技最近偵測 ANDROIDOS_STIP.A的高風險 Android 應用程式。這個應用程式透過論壇和部落格散播,可以用來駭入使用者的 RFID ( Radio Frequency IDentification -感應式電子晶片)公車卡加以儲值。這背後的機制是什麼,RFID 支付卡的一般安全風險是什麼?

Android 病毒

如今透過 RFID 卡來進行支付變得越來越受歡迎,也有更多行動裝置加入NFC(Near Field Communication,近距離無線通訊)支援。銀行、商家或公共服務都會發行RFID卡給他們的客戶,並且可以儲值。

注意:下文中所討論的惡意軟體樣本不能從 Google Play 商店取得。

RFID卡的安全問題

由於它被廣泛的使用,所以RFID卡成為攻擊目標也就毫不奇怪。比方說最近智利的Tarjeta bip!卡被駭事件。這些卡是基於MIFARE的智慧卡;MIFARE指的是被廣泛用在非接觸式智慧卡和感應卡的晶片家族。

圖1、MIFARE設備

檢視 Android 應用程式的程式碼,趨勢科技發現如果它在配有 NFC 的設備上執行,它可以讀取和寫入這些卡片。惡意應用程式將預先定義好的資料寫入卡片,將使用者的餘額提高到一萬智利比索(約15美元)。此作法只對這一特定卡片有用,因為它依賴於有問題卡片的格式。

該工具作者如何去改寫卡片資料而無須正確的驗證金鑰?這是因為這些卡片是基於舊版的 MIFARE系列(MIFARE Classic),它已知有許多安全上的問題。攻擊者可以在10秒內複製或修改 MIFARE Classic 卡片,而使用設備(如 Proxmark3)及任何所需支援都可以在網路上買到。

圖2、Proxmark3出售中

使用被廣泛使用的工具,攻擊者就能破解卡片的驗證金鑰。有了破解的金鑰和原生支援NFC的Android及設備,就可以輕易地用行動應用程式來複製卡片和加值。

 

圖3、一張MIFARE Classic卡片的製造商和記憶體內容

 

其他種類的MIFARE卡片(具體來說是MIFARE DESFire和MIFARE Ultralight)上已經有攻擊存在。我們所知就至少有三張有問題的卡片:一張帶有銀行服務功能的社會安全卡、一張用在交通、購物的支付卡和一張餐廳卡。社會安全卡大約有 700 萬的使用者。

圖4、基於MIFARE DESFire的社會安全卡

餐廳卡使用MIFARE Classic卡片,我們的測試顯示卡片餘額可以被變更。其他兩張是MIFARE DESFire卡片,可能會受到跨頻道(side-channel)攻擊。這些卡片的加密系統會在進階使用者的監視下洩露資訊;金鑰會在7小時之內被取得。如果所提供金鑰並非隨機,客戶卡片可能會被複製或變造,就跟MIFARE Classic卡片一樣。或更糟的是,餘額也會被具備NFC功能的行動裝置所變更。

結論

這些特定MIFARE型號已經停產多年,而且改成更加安全的型號。然而,這些發卡機構似乎都選擇了便宜的解決方案,而將他們的客戶置於危險之地。

趨勢科技建議客戶採取措施來保護他們所擁有的RFID卡片。他們也該定期檢查帳戶餘額。此外,如果可能的話,應該檢查目前所在使用的卡片是否具有漏洞,並回報給他們的供應商。RFID/NFC攻擊是已知的風險;在過去我們已經提供了如何安全使用NFC的建議給一般使用者企業

 

@原文出處:Hacking RFID Payment Cards Made Possible with Android App作者:Veo Zhang(行動威脅分析師)