Rfid 的克隆防護與檢測之一
前 言
射頻識別技術(RFID)是物聯網發展的驅動技術之一。RFID標簽的結構簡潔性和成本效益保證了它們的擴散,同時也加劇了安全和隱私的泄露。由于RFID應用程序將標簽的真實性等同于標記對象的真實性,使用克隆標簽模擬真實標簽的克隆攻擊可能會導致難以想象的威脅。隨著新的RFID應用的出現,針對RFID防護的相關對策在有效性、效率、安全性、私密性、適用性等方面都存在局限性。因此,其應對措施需要不斷檢討和改進,以保持領先地位。
本文分為上下兩篇,為讀者由淺入深地對RFID的相關內容進行介紹。從了解什么是RFID開始,再到RFID克隆攻擊技術的產生,進而引出應對攻擊的RFID克隆防護與檢測技術,最后闡述當下保障RFID安全需要解決的問題和挑戰。
上篇主要介紹RFID系統、RFID的克隆攻擊技術和現有的RFID克隆防護技術。
下篇主要介紹RFID的克隆檢測技術和當下保障RFID安全需要解決的問題與挑戰。本文內容主要參考了文獻[1]。
RFID系統
RFID系統由三種實體組成:服務器、閱讀器和標簽。一般情況下,標簽被附加到特定的對象上,并裝載與對象相關的數據。對于大多數應用程序,與對象相關的數據只是一個ID(也稱為EPC)。例如,在支持RFID的供應鏈中,可以使用ID段指定產品的類別、產地、制造商和過期日期。使用的標簽有三種類型,即無源標簽、半有源標簽和有源標簽。
無源標簽沒有電池,它們從接收到的信號中收集能量,然后發送響應。
半有源標簽有電池,為計算提供能量,但仍然需要接收信號進行響應。
電池供電的有源標簽可以啟動通信,直接與標簽通信的設備是讀取器。
與標簽相比,讀取器具有更強的計算和通信能力。從閱讀器到標簽的查詢從服務器到閱讀器的命令轉換而來。這些命令來自服務器上托管的系統監控協議。典型的監控協議有:識別、認證、定位等。服務器還擁有一個數據庫,記錄系統中所有標簽的某些信息(如標簽id和共享密鑰)。
射頻識別(RFID)標簽的結構簡潔性和成本效益保證了它們的擴展,廣泛部署的低成本標簽成本低至5美分。RFID標簽遍及我們日常生活的每一個角落,其應用包括人類跟蹤、目標監控、移動支付,甚至植入式醫療設備通信。
RFID作為物聯網基礎設施組件,其使用量會再創新高。IDTechEx預計,到2026年,RFID市場價值將達到186.8億美元。攻擊者絕對不會錯過在RFID繁榮時期攫取他們的份額。主要由于資源的限制,大多數低成本標簽不能支持除散列之外的復雜加密技術。由于缺乏強大的保護方案,RFID通信協議容易受到各種攻擊。標簽芯片也容易受到物理篡改,這會泄露存儲在標簽內存中的秘密信息。隨著RFID技術的不斷發展,RFID應用程序需要提出安全與隱私問題的解決方案。
RFID克隆攻擊
在各種RFID攻擊中,我們重點研究了克隆攻擊。根據克隆的定義,克隆攻擊程序從被破壞的標簽中提取數據到其他標簽芯片或仿真設備上,這被稱為克隆標簽。電子產品代碼(Electronic Product Code, EPC)或標識符(Identifier, ID)等標簽數據可以在標簽讀取器通信過程中被竊聽,而密鑰等標簽數據可以通過物理篡改被瀏覽。即使是具有加密增強的標記也容易被克隆。在參與身份驗證等RFID應用程序時,克隆標簽可以像真正的標簽一樣擁有所有有效的數據。由于大多數RFID應用程序使用標簽真實性來驗證標記對象的真實性,克隆標簽可能會危及各種實體。例如,具有RFID功能的供應鏈、入境卡、牌照、護照、信用卡、醫藥產品、可植入設備常常受到克隆攻擊。
RFID克隆攻擊產生真正標簽的復制品,通常稱為克隆標簽。成功的克隆攻擊使克隆標簽具有真正標簽所期望的所有有效數據。因此,克隆標記可以像真正的標記一樣,通過任何基于克隆數據的身份驗證。由于RFID應用使用標簽真實性來驗證被標記對象的真實性,克隆攻擊可能會給消費者帶來難以想象的威脅。
竊聽是克隆低成本標簽的一種有效方法。早期的低成本標簽只存儲標簽id,并在讀取器查詢時以明文形式發出它們。閱讀器僅通過標簽ID的有效性來驗證標簽的真實性,也就是說,標簽ID是否在數據庫中。由于讀取器標簽通信是通過一個不安全的無線通道進行的,攻擊者可以很容易地在傳輸過程中竊聽標簽id,并編程克隆標簽。此外,低成本標簽缺乏閱讀器身份驗證支持。它們可以對來自任何閱讀器的查詢響應標簽id。
更高級的克隆方法是物理篡改。它破壞了真正的標記,并獲得了存儲在標記內存中的所有數據。無論標簽是否使用加密技術(例如,在傳輸時使用共享密鑰加密標簽id),物理篡改都可以破解它們,現在市面上有各種各樣的RFID篡改工具。
RFID克隆防護
RFID克隆預防是用軟件或硬件技術防護標簽,使攻擊者無法從真正的標簽獲得所有的認證證書。其中軟件技術在部署前將共享的秘密加載到標記中,硬件技術則是在不同標簽之間存在獨特的物理特性。現有的RFID防克隆解決方案分為五種類型。三種屬于軟件技術,兩種屬于硬件技術。如圖1所示。
圖1 RFID克隆防護
殺死標簽。EPCC1G2標準在銷售點采用kill命令去滅活標簽,任何擁有相同ID的克隆標簽和被殺死的標簽將不被讀取器接受。為了支持kill命令,閱讀器和標簽應該先商定一個密碼,這個密碼會和kill命令一起發送給標簽。如果密碼是正確的,標記將清空內存中的所有數據,并對任何后續查詢保持沉默。殺死標簽雖然簡單有效,但并不適用于許多需要標簽在銷售后激活的RFID應用。以支持RFID的RFID零售商為例。在產品銷售后,保持標簽的活性,有利于產品的撤回和召回。
反竊聽。標簽id反竊聽在不使標簽失效的情況下,發起了對抗RFID克隆攻擊的戰斗。在RFID蓬勃發展的初期,標簽id被直接傳輸,用于識別、跟蹤甚至驗證標簽。具體來說,EPCglobal標準不強制閱讀器和標簽之間的相互身份驗證,閱讀器只接受具有有效id的標簽,而標簽對來自任何閱讀器的查詢回復id。這使得攻擊者很容易竊聽標簽id。然后攻擊者可以將它們復制到其他標簽上,產生克隆標簽。在RFID通信中沒有足夠的安全和隱私增強,克隆標簽可以用相同的ID模仿真正的對等物。Juels建議將一組元id預加載到標簽中。標簽在每次查詢時都用集合中的不同元id進行響應。然而,攻擊者可以被動地竊聽足夠多輪的讀寫標簽通信,或者主動地查詢標簽以獲取標簽的所有元id。因此,防止標簽id被竊聽是一種可行的解決方法。
身份驗證。認證是向另一個實體證明一個實體的真實性和有效性。相互認證需要雙向證明,證據應該建立在共享的秘密上。希望只有參與身份驗證的兩方知道這些秘密,而其他好奇的實體(如攻擊者)則不知道。從這個意義上說,幾乎所有的防克隆協議都可以認為是基于認證的,包括上述帶有id的協議,如SectionIII和SectionIII-B。
物理層的指紋標簽。物理層通信特征在RFID標簽上是唯一的。常用的信號特性是統計數據,例如在一個時間窗口內的振幅、頻率或相位。這種物理層識別方案也被稱為指紋。使用指紋技術防止克隆,部署前,讀寫器需要訓練標簽來收集和記錄信號統計。記錄的統計數據用于與標簽識別后的統計數據進行比較。如果統計信息匹配,則標簽通過認證;否則,標記將被拒絕。由于不同標簽之間的信號特征是唯一的,克隆標簽很難模仿真正的對應標簽,因此無法欺騙閱讀器接受它們。
物理上不可克隆的功能(PUF)。PUF是利用制造電路中的線延遲和門延遲的微芯片中的嵌入功能。PUF可以在少于1,000個門的情況下實現,比需要8,000到10,000個門的昂貴加密函數更高效。PUFs基于饋電輸入產生輸出,這使得PUF適用于基于挑戰-響應的身份驗證。為了使用PUF進行身份驗證,驗證者應該用一系列“挑戰”訓練PUF支持的設備,并記錄相應的響應。在認證時,驗證者用之前使用過的“挑戰”查詢設備,并將響應與記錄的響應進行比較,響應匹配將產生成功的身份驗證。
小 結
克隆標簽可以模擬真實的標簽,從而對各種RFID應用程序造成難以想象的威脅。隨著物聯網產品的普及,RFID也逐漸充斥著我們的生活,因此了解RFID及其相關的克隆攻擊和防護技術是十分有必要的。本文主要就RFID系統、RFID克隆攻擊和RFID克隆防護進行了簡單的闡述,期望可以使讀者對RFID有一個簡單的理解,可以在了解RFID克隆攻擊和防護技術后,正確合理地使用RFID產品,減少被攻擊的風險,保障自身安全。
在下篇,將介紹RFID的克隆檢測技術和當下保障RFID安全需要解決的問題與挑戰,以實現更有效和更健壯的應對RFID克隆攻擊的對策。
參考
文獻[1] Bu K, Weng M, Zheng Y, et al. You can clone but you cannot hide: A survey of clone prevention and detection for RFID[J]. IEEE Communications Surveys & Tutorials, 2017, 19(3): 1682-1700.