李景+戴樺
摘 要:隨著科學(xué)技術(shù)的不斷發(fā)展,射頻識別(RFID)技術(shù)漸漸走進了人們的生活,人們對于其安全性也越來越重視。RFID的安全性問題一直很難得到解決,其主要原因就是存在著RFID系統(tǒng)的計算速度慢、儲存空間小等局限性,這給工程師們的應(yīng)用造成了很大的難度。論文重點分析了RFID安全性問題產(chǎn)生的原因,并從標(biāo)簽端、閱讀器、中間件以及后臺服務(wù)器四個方面歸納了RFID的潛在安全問題。最后,基于對RFID安全未解決問題的分析和評述,對RFID系統(tǒng)進行演示測試并為后來者對于RFID安全性的研究指明方向。
關(guān)鍵詞:射頻識別(RFID);智能標(biāo)簽;讀寫器;訪問控制;消息加密
中圖分類號: TP393 文獻標(biāo)識碼:A
The Research on Security and Detection Methods of RFID System
Li Jing, Dai Hua
(Electric Power Research Institute of State Grid Zhejiang Electric Power Company, ZhejiangHangzhou 310014)
Abstract: As Radio Frequency Identification(RFID) edge closer towards wide-spread deployment,security issues become a central concern.Typical tags possess limited computation,computation,memoryresources,so the security issues posed by RFID represent a rich and challenging field of research problems.In this paper,we propose the reference model and security requirements with regard to RFID.Futhermore,we analyze status quo of RFID security from three aspects:accesscontrol,tag authentication as well as message encryption. In conclusion,we point out its development direction based on the analysis and remark of problems remaining unsolved in RFID.
Key words: Radio Frequency Identification(RFID); Smart Tag; Reader; Access Control; Message Encryption
1 引言
RFID(Radio Frequency Identification)系統(tǒng)是一種可以通過非接觸式的方式就可以直接識別目標(biāo)的信息系統(tǒng)。它有著可以同時識別多目標(biāo)、移動目標(biāo)以及系統(tǒng)十分穩(wěn)定等的特點,在人們的日常生活中應(yīng)用十分廣泛,被交通運輸、物流管理、信息查詢等多領(lǐng)域采用,并被認(rèn)為是將來社會實現(xiàn)計算機普及的最有效方式之一。但是,由于現(xiàn)在人們對于數(shù)據(jù)、隱私等安全性問題越來越關(guān)注,RFID系統(tǒng)本身存在的安全問題,卻一直沒有得到有效的解決,阻礙了RFID系統(tǒng)的進一步推廣應(yīng)用。
2 RFID系統(tǒng)的安全需求
應(yīng)對客戶的需求,一個完善的RFID系統(tǒng)應(yīng)當(dāng)具有機密性、完整性、可用性、真實性和隱私性等基本特征。
2.1 機密性
RFID系統(tǒng)通過電子標(biāo)簽傳達(dá)信息,電子標(biāo)簽中含有客戶的個人信息和交易信息,電子標(biāo)簽一旦被他人攻擊,就可獲取到客戶信息,造成客戶信息的泄漏,客戶的信息安全就得不到保證。一種完善的RFID標(biāo)簽應(yīng)當(dāng)具有一定的加密功能,不能向任何除了被授權(quán)者外的人讀取,不能泄露任何敏感信息,就能有效保證客戶信息的安全性,有利于RFID系統(tǒng)應(yīng)用[3]。
2.2 完整性
RFID系統(tǒng)系統(tǒng)作為一種傳達(dá)信息的系統(tǒng),必須保證信息的完整性,才能保證在信息的傳輸過程中,信息沒有被他人惡意篡改,保證信息的真實有效。RFID系統(tǒng)中主要是通過一種共享密鑰的方法來確保信息的完整性,共享密鑰就是一種加密的算法,只有與需要驗證的數(shù)據(jù)共同進行運算后才能得到信息,但原始數(shù)據(jù)一旦有任何細(xì)微的改動就會使信息出現(xiàn)較大的改動。
2.3 可用性
一個完善的RFID系統(tǒng)的安全問題,解決方法不應(yīng)限制其原有的可用性,并能有效保證電子標(biāo)簽的安全性,防止其被攻擊者惡意攻擊,從而導(dǎo)致用戶安全信息泄漏[1]。好的設(shè)計方案應(yīng)當(dāng)從多方面進行考慮,其系統(tǒng)程序不應(yīng)太過于復(fù)雜,應(yīng)本著節(jié)能的原則進行設(shè)計,應(yīng)盡量避免一些公用的安全密鑰,防止被解密,其計算量也不應(yīng)太大,要充分考慮到用戶系統(tǒng)的有限性。
2.4 真實性
在RFID系統(tǒng)中,電子標(biāo)簽通過傳遞后,讀寫器需要通過身份認(rèn)證才能讀取電子標(biāo)簽中的信息。攻擊者也經(jīng)常利用這一點,通過偽裝電子標(biāo)簽或者是把電子標(biāo)簽隱藏起來,從而欺騙讀寫器,獲得電子標(biāo)簽中的信息。所以,要建立有效的識別系統(tǒng),讓讀寫器有效的與真實電子標(biāo)簽的相互確認(rèn),才能保證信息的真實可靠[2]。
2.5 隱私性
一種完善的RFID系統(tǒng)能夠有效保護用戶的信息安全,從而保證用戶相關(guān)產(chǎn)業(yè)的利益。每一個電子標(biāo)簽都攜帶著不同的信息,它們就像每一個人的習(xí)慣,不法分子只需要通過讀寫器跟蹤不安全的電子標(biāo)簽,經(jīng)過分析處理后,就可以了解用戶的生活習(xí)慣、個人喜好等信息,這對用戶來說是極其不安全的[4]。endprint
3 RFID系統(tǒng)的安全檢測方法
3.1 標(biāo)簽端的安全檢測方法
安全風(fēng)險:驗證是否加密;
檢測設(shè)備:帶有NFC功能的手機;
在手機上安裝MCT。
根據(jù)計算能力,RFID的加密可以分為三類:普通標(biāo)簽(Tag)、使用對稱密鑰的標(biāo)簽、使用非對稱密鑰的標(biāo)簽。
(1)用 NFC 手機上安裝的MCT(Mifare Classic Tool) 查看,即可查看射頻卡的類型以及加密信息,如圖1所示。
(2)打開m1卡服務(wù)程序,識別讀卡器同時對射頻卡進行密鑰破解(如果未加密,可省略該步驟),如圖2所示。
(3)當(dāng)所有扇區(qū)都被打勾,則表示破解成功,同時在根目錄生成這張卡的dump文件,如圖3所示。
3.2 閱讀器的安全檢測方法
安全風(fēng)險:驗證標(biāo)簽是否可以復(fù)制篡改;
檢測設(shè)備:帶有NFC功能的手機;
在手機上安裝MCT。
讀卡器(此處以Proxmark3為例)。
RFID技術(shù)以眾所周知的非接觸卡形式存在。RFID卡片可以是有源的主動 RFID卡,即卡片自己帶有能量(通常是硬幣大小的電池)?;蛘撸琑FID卡片也可以是通過閱讀器的射頻場被動獲取能量的無源卡。RHD標(biāo)簽的形式可以被封裝得和信用卡一祥。
這些卡在成本和技術(shù)方面存在較大差異,但其基本上都是由一個線圈和一個嵌人到塑料材料中的RFID芯片制造而成。有的卡片上印有圖形或個性化圖案,有的卡片的表面則是完全空白的。根據(jù)不同的應(yīng)用,這些卡片可以分為只讀卡(在生產(chǎn)時已被編程,只能讀取數(shù)據(jù)而無法寫人數(shù)據(jù))和一次寫人多次讀出卡(通過特定系統(tǒng)寫人,可一次寫人而多次讀出)。
(1)mfoc原本是運行在 Linux 環(huán)境下的,移植到 Windows 下的mfocgui生成的 Dump 文件是并不能直接使用的,還需要一個修復(fù)工具fixdump(下載fixdump),將 1 kb 的 Dump文件修復(fù)成 4 Kb 的 Dump 文件才行。
fixdump是命令行操作,并且必須安裝了 .NET Farmwork 4 運行庫才可以使用,為了方便命令操作,我們將 Dump 文件拷貝到fixdump的目錄里,打開cmd進行修復(fù)。輸入命令:fixdumpfile.dump,如圖4所示。
(2)修復(fù)完成后,用UltraEdit或者WinHex之類的十六進制編輯器打開,就可以看到 Dump 文件的數(shù)據(jù)了,如圖5所示。
其中前 6 字節(jié)和后 6 字節(jié)的 FFFFFFFFFFFF 就是這個扇區(qū)的密碼,中間的 FF078069 就是控制位。
(3)uid克隆,命令:hf mf csetuidxxxx–wipe card:xxuid:xxxx,如圖6所示。
(4)將dump導(dǎo)入新卡,完成射頻卡的復(fù)制,如圖7所示。
(5)對于射頻卡篡改,可參照步驟1-6,只需在步驟2之前對射頻卡扇區(qū)數(shù)據(jù)進行比對修改即可,如圖8所示。
3.3 中間件的安全檢測方法
安全風(fēng)險:利用空中接口對中間件進行攻擊;
檢測設(shè)備:Hackrf-Kailbrte、Gnuradio-Companion、Wireshark、Audacity。
RFID中間件存在于標(biāo)簽閱讀器和企業(yè)應(yīng)用程序之間,旨在解決滿足EPC應(yīng)用程序?qū)?biāo)簽數(shù)據(jù)的格式要求。對于RFID系統(tǒng)來講,最大的問題是數(shù)據(jù)量較大且數(shù)據(jù)精確度較高,這些數(shù)據(jù)都是通過無線射頻電子標(biāo)簽閱讀器采集的。數(shù)據(jù)的準(zhǔn)確性是與傳統(tǒng)企業(yè)習(xí)慣應(yīng)用的數(shù)據(jù)相比而言的。因此,大量的中間件處理過程的實現(xiàn)涉及到如何減少數(shù)據(jù)量,如過濾、匯總以及數(shù)據(jù)整合等。此外,EPC架構(gòu)的處理細(xì)節(jié),包括ONS 和PML服務(wù)組件,也是RFID系統(tǒng)需要認(rèn)真處理的問題之一。
RFID空中接口是指無線電頻段、調(diào)制解調(diào)方式、數(shù)據(jù)編碼方式以及協(xié)議其他規(guī)定的內(nèi)容總稱。
3.3.1數(shù)據(jù)的保密性(信號嗅探)
(1)捕捉信號,如圖9所示。
(2)利用 Audacity剪輯信號,如圖10所示。
(3)確定信號頻率,使用gnuradio-companion加載airprobe_rtlsdr.grc文件。添加增益值,然后返回到頻率帶內(nèi),并按壓你鍵盤上的上/下方向箭頭開始以200Khz的步進值掃描頻率,直到在控制臺窗口上看到一些數(shù)據(jù)為止,如圖11所示。
(4)運行命令:sudowireshark -k -Y 'gsmtap&& !icmp' -i lo,即可看到hackrf嗅探后的信號流量,如圖12所示。
3.3.2 數(shù)據(jù)的完整性(信號劫持偽造)
(1)通過終端啟動gprx捕捉信號,如圖13所示。
(2)啟動hackrf分析原始信號數(shù)據(jù)。
hackrf_transfer -r /dev/stdout -f 314100000 -a 1 -g 16 -l 32 -s 8000000
原始信號未解碼,因此數(shù)據(jù)為亂碼,如圖14所示。
(3)解碼。
hackrf_transfer -r door.raw -f 314100000 -g 16 -l 32 -a 1 -s 8000000 -b 4000000,如圖15所示。
(4)在Audacity導(dǎo)入hackrf解碼完后的數(shù)據(jù)文件生成信號波形,如圖16所示。
放大信號,對信號波形進行編輯偽造,如圖17所示。
(5)啟動Gnu Radio Cpmpainon:Kali Linux—->無線攻擊—>Software defined Radio—>GnuRadio-Companionendprint
按照信號播放流程進行連線,如圖18所示。
(6)將偽造的信號進行重放。
hackrf_transfer -t door.raw -f 314100000 -x 47 -a 1 -s 8000000 -b 4000000,如圖19所示。
3.4 后臺服務(wù)器的安全檢測方法
安全風(fēng)險:漏洞利用,數(shù)據(jù)篡改等;
檢測設(shè)備:掃描器。
為保證系統(tǒng)的正常運行,在進行后臺數(shù)據(jù)庫的安全檢測時,要選擇在系統(tǒng)不忙碌時,用掃描工具檢測出漏洞,保證幾點:(1)標(biāo)識ID以及扇區(qū)數(shù)據(jù)服務(wù)端存儲安全;(2)數(shù)據(jù)庫的用戶權(quán)限設(shè)置安全;(3)數(shù)據(jù)庫中的垃圾文件是否被即使清理;(4)庫的安全檢測是否處于關(guān)閉狀態(tài);(5)數(shù)據(jù)庫補丁是否升級,是否存在有高危漏洞等。
4 一種基于攻擊樹的RFID系統(tǒng)安全策略
4.1 攻擊樹模型構(gòu)建
攻擊樹模型是由Scheier提出的一種用來模擬攻擊方法和攻擊實例來表示整個攻擊過程的一種方法。這種方法用樹型模型來表示攻擊方法與過程之間的相互關(guān)系,樹型模型有由許多節(jié)點和一個根部組成,每一個節(jié)點表示攻擊行為或者是子目標(biāo),自由根部節(jié)點表示的是最終目標(biāo)。一般樹型模型存在二種結(jié)構(gòu),分為“與分解”和“或分解”,前者表示的是子目標(biāo)與最終目標(biāo)之間是“與”關(guān)系,后者表示的是子目標(biāo)與最終目標(biāo)是“或”關(guān)系。
通過樹型模型的分析,我們可以假定進攻者所有可能的進攻方式,然后根據(jù)“與分解”和“或分解”的兩種進攻方式對進攻者可能會進攻的途徑進行預(yù)測,然后再提前采取措施,對RFID系統(tǒng)中所存在的問題進行優(yōu)化處理。在實際中,通常使用AND和OR對兩種分解方式進行標(biāo)識,獲得最終的結(jié)果模型[5]。
4.2 安全策略選擇
在攻擊樹模型中由于子目標(biāo)與父目標(biāo)之間存在著直接的關(guān)系,不存在中間節(jié)點的問題,所以攻擊途徑中不存在中間節(jié)點。正式這種特點,在攻擊不同的子目標(biāo)時,就存在不同的攻擊途徑,每一種攻擊方法也只能攻擊一種子目標(biāo)。目前,在RFID系統(tǒng)中所存在的安全措施,主要都是根據(jù)不同的節(jié)點,針對性的選擇不同的策略進行預(yù)防,保護系統(tǒng)的安全,防止用戶隱私的泄漏[6]。
4.3 復(fù)合安全策略構(gòu)成
由于RFID系統(tǒng)在實際應(yīng)用時環(huán)境的復(fù)雜多變,一般選擇采用復(fù)合安全策略對系統(tǒng)進行保護,復(fù)合安全策略主要是將物理保護和密碼保護相結(jié)合的方法對系統(tǒng)進行整合。實際中對于不同安全級別RFID系統(tǒng)的要求、不同的攻擊模式等都會直接影響到復(fù)合安全策略的復(fù)合方式。在實際中要根據(jù)不同的情況,在具體確定RFID系統(tǒng)的復(fù)合方式。但也要考慮到一些RFID系統(tǒng)的基本要求和兩種安全模式之間的結(jié)合性,不能相互干擾,保證各個系統(tǒng)的獨立安全運行。
5 結(jié)束語
RFID系統(tǒng)有著可以同時識別多目標(biāo)、移動目標(biāo)以及系統(tǒng)十分穩(wěn)定等特點,在人們的日常生活中應(yīng)用十分廣泛,被交通運輸、物流管理、信息查詢等多領(lǐng)域采用?,F(xiàn)在人們對于數(shù)據(jù)、隱私等安全性問題越來越關(guān)注,RFID系統(tǒng)本身存在的安全問題可以通過對RFID系統(tǒng)的不同的安全問題,進行基于RFID系統(tǒng)攻擊樹模型和復(fù)合安全策略的進一步研究,從攻擊者的角度去思考安全問題,并制定出更合理的安全RFID系統(tǒng)和安全協(xié)議,這對于社會生產(chǎn)有著重大意義[3]。
參考文獻
[1] 林建增.基于模運算的盲水印算法研究[J].福州大學(xué),2006.
[2] 顏杰.RFID標(biāo)簽防碰撞盲源分離算法研究[J].廣東工業(yè)大學(xué),2014.
[3] 謝雅婷.RFID電子標(biāo)簽管理系統(tǒng)的設(shè)計與實現(xiàn)[J].電子科技大學(xué),2012.
[4] 劉堯.無源RFID標(biāo)簽芯片的低功耗電源管理系統(tǒng)[J].華中科技大學(xué),2011.
[5] 楊婷.基于RFID技術(shù)的智能倉庫管理應(yīng)用研究[J].湖北工業(yè)大學(xué),2011.
[6] 楊益.基于RFID的數(shù)字化倉庫管理系統(tǒng)[J].華中科技大學(xué),2008.endprint