發布日期:2022-10-09 點擊率:83
國內外頻發各種RFID攻擊事件,一些黑客利用RFID技術破解各種消費卡、充值卡,然后盜刷惡意充值消費卡,有些人也因此獲刑了。現在是物聯網推動著移動互聯網發展,很多手機終端也被嵌入NFC功能,用于公交、移動支付等等,很多的安全問題也逐步被曝露出來。
RFID攻擊模擬效果
1、卡數據嗅探
多數人身上一般都會攜帶有各類射頻卡,里面可能一些個人信息,或者門禁監控系統的驗證信息。一些攻擊者可能通過一些設備,去讀取受害者身上的射頻卡信息(能否讀取成功就取決于射頻卡的通訊距離了),然后通過將這些數據寫入空白卡或者其它方式進行重放攻擊,就可以獲取他人的身份驗證或者其它敏感信息。
2、模擬卡數據重放
由于卡上uid不可寫(特種卡除外),對于一些加入uid識別的讀卡系統,有時需要模擬卡片數據才能繞過驗證,這些借助proxmark3即可實現。
3、卡復制
在很多門禁卡中,經常使用存儲器頭部的uid值作為一個判斷值,如果我們直接將它寫入一張空白卡中,就可復制出一張卡來通過門禁。但由于多數卡的uid部分是不可寫,因此必須使用到uid可寫的特種卡,至于如何獲取到這種卡,大家自行百度下。
4、卡數據破解與篡改
一些Mifare Classic卡(比如A類卡)很早之就已經被破解出來,但目前使用仍是很廣泛,很多公司、學校的門禁、餐卡、一卡通都仍在使用這類芯片卡。
下面是某食堂餐卡被破解后獲取到的數據,只有第1扇區存在數據。通過多次充值、消費等數據的對比,得到以下結果:
1、余額值有兩個字節,前1字節代表幾角,后1字節代表256的倍數,其計算單位也是角,比如充值前余額為64 00,即代表余額0x64 = 100 = 10元;充值后余額為58 02,即代表余額0x58 + 2*256 = 60元。
2、檢驗值也是由2個字節構成,比如上面的AE 01,通過數據對比,發現在充值后該值與金額變化無關,而跟消費日期有關,因此我們可以直接修改下方余額來達到充值的目的,因為充值的時候并不會改變上面的消費日期,省去分析檢驗值的計算原理的步驟。
比如我們打算給上面的60塊餐卡充值,使其余額達到256元,那么可以直接將上面的58 02修改為00 0A:
測試結果:
RFID為何物
用學術派的話來講,就是“射頻識別,(Radio Frequency IDentificaTIon,簡稱RFID)技術,是一種無線通信技術,可通過無線電訊號識別特定目標并讀寫相關數據,而無需識別系統與特定目標之間建立機械或光學接觸。”這種概念對于多數人來說可能不太好理解,但如果直接用下圖來描述,應該就更直觀了,就是幫助用戶圖方便、圖省事的隔空交互技術。常見的RFID產品有交通卡、門禁卡、借書卡、動物身份標簽、電子車票等等。
RFID主要由3部分組成:標簽、閱讀器、天線(有時也包括中間件),如下圖所示(源自網絡)。讀卡器通過內置天線發送一定頻率(包括低頻、高頻、超高頻及微波,其中高頻13.56MHz在生活中可能比較常見)的無線電信號,當射頻標簽(比如交通卡)進入讀卡器的磁場感應范圍后,讀卡器就可以獲取標簽中的相關信息。
RFID與NFC有何關系
相信很多人分不清RFID與NFC(近距離無線通訊技術)的關系,在微博或文章中經常看到兩者被混為一談的。大體可以用以下幾點來說明:
1、NFC本身就是基于RFID演變而來的,RFID勉強可以算是NFC“他爹”;
2、頻段差異:NFC僅限于13.56.MHz高頻段,不像RFID有較多頻段可選;
3、通訊距離差異:NFC大多在10厘米以內,而RFID可能擴展到幾十米;
4、工作模式差異:NFC可被當作射頻卡、閱讀器或者點對點模式來使用,因為它把非接觸讀卡器、非接觸卡和點對點功能都整合到同一塊單芯片中,不像RFID需要閱讀器和標簽組成,因此NFC會更輕巧便捷,更注重信息的交互;
5、應用場景差異:RFID更多被運用于生產、物流、資產管理等,更適合廠商企業,而NFC則更多運用在公交、門禁、手機支付上,更適合平民大眾。
防御方案探討
很多時候,我們都是把各種射頻卡放在錢包里,因此國外有家廠商就利用不銹鋼制作出一款可防御RFID黑客的錢包,價格在100美元左右,據說薄如皮質,觸如絲綢,土豪們可以網購一個試試。它主要是利用“法拉第籠”的原理去屏蔽外電場的干擾,從而防止錢包內的RFID卡被外界讀取到。
除此之外,以下幾點也許可以作為一個參考:
1. 避免使用Mfiare Classic芯片卡,而采用更強加密算法的芯片卡,比如CPU卡。
2. 涉及金額等敏感數據應進行加密處理,禁止明文存儲。
3. 讀卡器與后端主機數據庫實行線上作業,采用即時連線的方式進行系統核查。
4. 結合uid進行加密,并設置uid白名單,提高攻擊者破解成本,但可能被特殊卡繞過。
5. 對全扇區采用非默認密碼加密,提高破解成本,但可能通過DarkSide方式暴力破解。
下一篇: PLC、DCS、FCS三大控
上一篇: 使用Arduino開發板輕