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