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