亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        IC卡安全性研究與應(yīng)用分析

        2021-09-09 07:09:08劉永清
        江蘇通信 2021年4期
        關(guān)鍵詞:讀卡器IC卡扇區(qū)

        劉永清

        國家計算機網(wǎng)絡(luò)應(yīng)急技術(shù)處理協(xié)調(diào)中心江蘇分中心

        0 引言

        IC卡在生活和工作中十分常見,廣泛應(yīng)用于公共交通、門禁、電子錢包等領(lǐng)域,具有攜帶方便、操作簡單、使用靈活、一卡多用、抗干擾性能力強、可靠性高等優(yōu)點。標準的IC卡為長方形,尺寸為85.6×53.98mm2,實際生活中使用的IC卡的外形卻是各種各樣,有卡片式和鑰匙扣等樣式。

        IC卡不但外形各異,卡片的種類也是十分繁多。根據(jù)讀卡方式可分為接觸式、非接觸式、雙界面卡;根據(jù)工作頻率可分為低頻125kHz、高頻13.56MHz、微波2.4GHz等;根據(jù)嵌入芯片可分存儲卡、邏輯加密卡、CPU卡。

        1 M1卡介紹

        在眾多種類IC卡中,Mifare 1(簡稱M1)系列IC卡價格便宜,使用最為廣泛。M1卡是一種邏輯加密卡,工作頻率為13.56MHz,讀卡距離可達10cm,與讀卡器的通信速率可達106kbps,因此,一次刷卡交易可以0.1秒內(nèi)完成。M1卡中的無線智能卡芯片是Philips公司根據(jù)ISO/IEC 14443A標準開發(fā),通訊層遵從ISO/IEC 14443A的第1、2、3部分,保密層使用經(jīng)區(qū)域驗證的Crypto-1流密碼,對M1卡的通信數(shù)據(jù)進行加密。M1卡內(nèi)置芯片有S50和S70兩種型號,S50與S70主要不同在于卡片的扇區(qū)分布和容量不同,S50容量為1K字節(jié),而S70的容量達到了4K字節(jié)。S50卡使用最廣泛,本文將重點介紹。

        1.1 M1卡的特點

        (1)無線傳送數(shù)據(jù)和能量

        M1卡中芯片連接著幾匝線圈,組成一個LC串聯(lián)諧振電路,諧振頻率13.56MHz。這些芯片及線圈嵌入到塑料中,這就形成了一張無源的無線智能卡,這種卡不需要電池。讀卡器持續(xù)向外發(fā)出一組固定頻率的電磁波,其頻率與M1卡的諧振頻率相同,在電磁波的激勵下,LC諧振電路產(chǎn)生共振,從而使諧振電容內(nèi)有了電荷,當積累的電荷達到2V以上時,即可驅(qū)動芯片工作,此時M1卡的高速RF通訊接口就可以與讀卡器傳送數(shù)據(jù)。

        (2)反沖突

        智能反沖突(Anticollision loop)功能允許同一工作區(qū)域中有不止一張M1卡同時工作,反沖突算法每次只選擇一張卡,確保對被選中的卡正確執(zhí)行操作,而且同一區(qū)域中沒有被選中的卡不會破壞數(shù)據(jù),而是回到待機狀態(tài)等待新的請求命令。

        (3)安全性

        M1卡的一個重要特點是保密,防止受到欺騙攻擊。M1卡和讀卡器之間通過三輪確認(Three Pass Authentication)進行相互認證,認證后的數(shù)據(jù)交互都進行了加密,使得IC卡應(yīng)用系統(tǒng)具有一定的保密性。

        1.2 M1卡數(shù)據(jù)存儲

        (1)存儲結(jié)構(gòu)

        M1 S50卡存儲空間為1K字節(jié),分成16個扇區(qū)(Sector),每個扇區(qū)又分成4塊(Block),每塊有16個字節(jié),數(shù)據(jù)的讀寫以塊為存取單位。每個扇區(qū)有兩套獨立的48位的密鑰(KeyA, KeyB)。如圖1所示。

        圖1 M1卡存儲結(jié)構(gòu)圖

        (2)訪問權(quán)限

        除了0扇區(qū)外,每個扇區(qū)的0~2塊為數(shù)據(jù)塊,3塊為區(qū)尾(Sector Trailer)。每個扇區(qū)的區(qū)尾包括6字節(jié)KeyA、4字節(jié)存儲控制位、6字節(jié)KeyB。M1卡每個扇區(qū)的存取控制位初始值為FF078069,KeyA,KeyB初始密鑰為FFFFFFFFFFFF。

        數(shù)據(jù)塊和區(qū)尾由3個存取控制位[C1XY, C2XY, C3XY]Y=0~3來定義其讀寫權(quán)限,這些存取控制位以取反(上劃線表示)和不取反的形式保存在指定的區(qū)尾中,其中字節(jié)9保留未使用。數(shù)據(jù)塊和區(qū)尾訪問條件的定義如表1和表2所示。

        表1 數(shù)據(jù)塊訪問條件(Y=0~2)

        表2 區(qū)尾訪問條件

        (3)數(shù)據(jù)塊

        根據(jù)訪問權(quán)限,經(jīng)過密碼驗證后,就可以訪問數(shù)據(jù)塊。M1卡的數(shù)據(jù)塊根據(jù)讀寫方式又分為兩種類型:

        ①讀寫塊

        讀寫塊用作為普通讀寫的16字節(jié)數(shù)據(jù)塊,只能進行讀塊或?qū)憠K。

        ②值塊

        值塊主要用于電子錢包功能,可以讀值、加值、減值、轉(zhuǎn)存、恢復(fù),值塊中的數(shù)據(jù)包括符號位共4字節(jié)。為了提供檢錯糾錯能力,數(shù)據(jù)被存儲3次,其中原始數(shù)據(jù)保存2次,取反數(shù)據(jù)保存1次。剩余4字節(jié)用于保存存儲段的地址,原始地址和取反地址各保存2次。

        (4)廠商塊

        0扇區(qū)0塊與其他數(shù)據(jù)塊不同,稱為廠商塊,標準M1卡的廠商塊是只讀的,有的兼容M1卡的廠商塊可以更改,這種卡稱為UID卡。廠商塊共16字節(jié),各字節(jié)的定義如下:

        0~3字節(jié)為序列號(UID, Unique IDentifier)。

        4字節(jié)為校驗字節(jié)(BCC, Byte Calculation Check),是0~3字節(jié)的異或值。

        5字節(jié)為選擇確認碼(SAK, Select AcKnowledge),S50的SAK為08,S70的SAK為18,CPU卡的SAK為20,模擬CPU卡的SAK為28。

        6~7字節(jié)為請求響應(yīng)碼(ATQA, Answer To reQuest, type A),S50的ATQA為0004,表示UID長度為4字節(jié),遵守面向比特的防沖突機制,S70的ATQA為0002,有的CPU卡的ATQA為0344或0008等。

        8~15字節(jié)為廠商數(shù)據(jù)。

        1.3 M1卡通信過程

        為近一步理解M1卡的工作原理,表3列出了文獻中實驗偵聽的IC卡通信過程數(shù)據(jù)。

        表3 讀卡器與M1卡通信數(shù)據(jù)舉例

        通過分析表3的通信數(shù)據(jù)可以得出M1卡與讀卡器的通信過程如下:

        (1)讀卡器輪詢

        ①讀卡器不停地發(fā)送REQA(Request Command, Type A),以探測是否有A類型的IC卡靠近讀卡器。

        (2)IC卡響應(yīng)

        ②IC卡中的LC諧振電路接收到讀卡器的電磁波,因共振產(chǎn)生電荷,給IC卡芯片供電,IC卡復(fù)位后進入空閑狀態(tài),并偵聽讀卡器發(fā)出的命令。當收到讀卡器的REQA命令后,IC卡回復(fù)ATQA碼,并進入準備狀態(tài)。

        (3)防沖突循環(huán)檢測

        ③讀卡器發(fā)出SEL NVB(Select Number of Valid Bits),以進行沖突檢測,其中NVB = 20表示有效命令為2個字節(jié)。

        ④靠近讀卡器的IC卡都會回應(yīng)其UID + BCC,M1卡的UID一般為4字節(jié),BCC是一字節(jié)的校驗字,是UID的異或值。如果此時有多張IC卡同時回應(yīng),那么就可能出現(xiàn)沖突,此時讀卡器就會再次發(fā)送SEL NVB命令,直到?jīng)]有沖突出現(xiàn)。

        (4)選擇IC卡

        ⑤如果沒有檢測到?jīng)_突,那么讀卡器就發(fā)出SEL NVB UID CRC_A,以選擇指定UID的IC卡,此時NVB = 70表示有效命令為7個字節(jié)。

        M1卡的CRC_A的計算公式在ISO/IEC 13239中定義,其生成多項式為x16+x12+x5+1,記為0x11021,但是16移位寄存器的初始值不是0xFFFF,而是0x6363。

        ⑥被選中的IC卡回應(yīng)SAK CRC_A,此時IC卡轉(zhuǎn)換為活動狀態(tài),沒有選中的IC卡保持準備狀態(tài),等待新的請求命令。

        (5)三輪確認認證

        ⑦讀卡器發(fā)出Auth Addr CRC_A,指定要訪問的數(shù)據(jù)塊,并選擇密鑰A或密鑰B進行認證,Auth若為60則表示選擇密鑰A認證,若為61則表示選擇密鑰B認證,然后進入三輪確認認證。

        ⑧IC卡從對應(yīng)塊的區(qū)尾讀出密鑰和存儲控制位,判斷讀卡器是否為合法訪問,若為非法訪問,則卡片不會響應(yīng)讀卡器;否則發(fā)送一個4字節(jié)的隨機數(shù)RB(第一輪確認)。

        ⑨讀卡器將接收到隨機數(shù)RB、自己生成的隨機數(shù)RA以及其他附加信息利用未公開的Crypto-1算法進行加密,然后將密文發(fā)給IC卡(第二輪確認)。

        ⑩IC卡對接收到的密文進行解密得到RA, RB及附加信息,檢查RB及附加信息是否正確,若檢查正確,則IC卡對讀卡器認證通過,然后將RA加密后發(fā)給讀卡器(第三輪確認)。

        (6)數(shù)據(jù)塊讀寫

        讀卡器對接收到的密文進行解密得到RA等信息,與IC卡進一步確認了隨機數(shù)RA。認證通過后,就可以對指定的數(shù)據(jù)塊進行讀寫操作,后續(xù)的數(shù)據(jù)通信都是加密傳輸?shù)摹?/p>

        由于每個扇區(qū)都有各自的密碼,如果要對其他扇區(qū)進行操作,還需進行⑦至步的三輪確認認證。

        2 M1卡破解方法

        M1卡雖然有三輪確認認證及數(shù)據(jù)加密傳輸?shù)劝踩侄?,但是M1卡存在著眾多先天不足的問題,比如:密鑰長度只有48位、密鑰核驗錯誤次數(shù)沒有限制等,可以通過不斷地重試,對M1卡進行暴力破解。早期要破解M1卡不但要對M1卡有深刻的了解,而且還要有高深的計算機技術(shù),現(xiàn)在網(wǎng)上有多種破解工具,可以輕松破解M1卡。

        2.1 PN532

        PN532是最廉價的破解方案,僅一塊簡易電路板,配合mfoc和mfcuk軟件使用,就可以滿足常規(guī)的M1卡的讀寫操作,適合有一定計算機技術(shù)的人員使用,可以用于破解M1S50卡,不能破解全加密卡(所有扇區(qū)都未使用改初始密鑰和簡單密鑰),適合破解門禁等應(yīng)用簡單的IC卡。

        2.2 ACR122U

        ACR122U讀寫的主芯片也是PN532,配套有更加完善破解軟件,使用稍微簡單一些,但同樣不能破解全加密卡,對于加密了部分扇區(qū)的S70卡也較難破解,性價比一般。

        2.3 Proxmark3

        Proxmark3是一款開源的研究平臺,設(shè)計圖被公布在Proxmark3官方網(wǎng)站,在網(wǎng)上可以找到配套的軟件,另有社區(qū)可獲取對應(yīng)的固件及技術(shù)支持,可破解低頻卡、S50和S70全加密卡及部分特殊卡,功能相當強大,但價格較貴。

        3 M1卡應(yīng)用案例分析

        M1卡在工作與生活中使用非常廣泛,某市的公共自行車卡就是選用了M1卡。

        3.1 卡片破解

        為了分析該公共自行車卡存儲的數(shù)據(jù),筆者用ACR122U對自行車卡進行了破解,破解操作界面如圖2所示,破解完成后生成了二進制dump文件。

        圖2 ACR122U破解軟件

        3.2 數(shù)據(jù)分析

        下面分析破解生成的dump文件,查看公共自行車卡的各個扇區(qū)分別存儲了什么數(shù)據(jù)。

        (1)0扇區(qū)數(shù)據(jù)

        圖3 0扇區(qū)數(shù)據(jù)

        0扇區(qū)第0塊數(shù)據(jù)塊是廠商塊,SAK=08, ATQA=0004(先傳低字節(jié)后傳高字節(jié)),由此進一步驗證了該公共自行車卡是M1卡。第1塊數(shù)據(jù)中“20160303”是制卡時間,其他字節(jié)功能未知,最后一個字節(jié)為校驗字節(jié),是0x33與當前塊前15字節(jié)的異或值。不同自行車卡的第2塊數(shù)據(jù)都相同,可能是公共自行車卡的標識。0區(qū)的密鑰A為常用的密碼“A0A1A2A3A4A5”,密鑰B無明顯特征,存取控制位為69678969。

        (2)1扇區(qū)數(shù)據(jù)

        圖4 1扇區(qū)數(shù)據(jù)

        1扇區(qū)第1塊和第2塊數(shù)據(jù)相同,是為了數(shù)據(jù)安全存儲而進行的冗余存儲,而且這兩塊數(shù)據(jù)是作為值塊進行存儲的,數(shù)據(jù)值為0x00001324,十進制為4900,即自行車卡的余額為49.00元。

        (3)2扇區(qū)數(shù)據(jù)

        2扇區(qū)第0塊數(shù)據(jù)為自行車的卡號,采用ASCII編碼。第1塊數(shù)據(jù)為辦卡時間;第2塊數(shù)據(jù)為持卡人姓名,也是ASCII編碼。前三塊數(shù)據(jù)的最后一個字節(jié)也是校驗字節(jié)。

        卡片其他的扇區(qū),存儲數(shù)據(jù)的意義不明顯,有的扇區(qū)沒有存儲數(shù)據(jù),在此不再列舉分析。

        圖5 2扇區(qū)數(shù)據(jù)

        3.3 卡片克隆

        破解了IC卡后,就可對卡片余額等數(shù)據(jù)進行修改,也可對IC進行復(fù)制,操作很簡單,導(dǎo)入之前破解生成的dump文件,將該文件寫入空白的UID卡中,即可實現(xiàn)IC卡克隆。筆者測試過,復(fù)制的公共自行車卡可以正常借車。

        3.4 安全建議

        通過對某市公共自行車卡的破解可以看出,由于M1卡的先天不足,導(dǎo)致M1卡很容易受到非法復(fù)制、惡意修改數(shù)據(jù)等攻擊。那么如何提高M1卡的應(yīng)用安全呢?有以下兩種方案:

        (1)將離線刷卡調(diào)整為在線刷卡,每次刷卡交易,讀卡器都會將卡內(nèi)數(shù)據(jù)與聯(lián)網(wǎng)查詢的后臺數(shù)據(jù)進行比較,發(fā)現(xiàn)數(shù)據(jù)不一致時,將該卡列為黑名單禁止使用。正常刷卡時,在更新IC卡內(nèi)數(shù)據(jù)時,也同步聯(lián)網(wǎng)更新后臺數(shù)據(jù)庫數(shù)據(jù)。這種方式可以降低IC卡被非法破解使用的風(fēng)險,但是也存在一定弊端,每次交易都要網(wǎng)絡(luò)連接后臺數(shù)據(jù)庫,造成交易時長增加,客戶體驗下降,而且如果網(wǎng)絡(luò)中斷,那么刷卡交易將無法進行。

        (2)將公共自行車卡由M1卡更換為安全性更高的CPU卡,這種方案能夠徹底解決公共自行車卡的安全問題,但是所有客戶都要重新?lián)Q卡,自行車站點要更換CPU卡讀卡器,整個公共自行車系統(tǒng)軟件也要更新,工作量較大,需要財政投資升級系統(tǒng)。

        圖6 ACR122U復(fù)制UID卡軟件

        4 結(jié)束語

        IC卡在生活和工作中普遍使用,本文首先根據(jù)使用方式、工作頻率、嵌入芯片對IC卡進行了分類,引入了最為常見的非接觸式13.56MHz的邏輯加密卡——M1卡,M1卡因價格便宜使用最為廣泛;接著重點介紹了M1卡數(shù)據(jù)分區(qū)存儲結(jié)構(gòu)和數(shù)據(jù)通信過程,指出了當前市面上流行的破解M1卡的三種工具;最后以某市公共自行車卡作為M1的應(yīng)用案例,對其進行了破解分析,并提出了改進建議。因此,可以說當前許多在用的基于M1卡的交易系統(tǒng)是不夠安全的,隨著CPU卡價格的下降,無論是政府還是企事業(yè)單位在新建IC卡應(yīng)用系統(tǒng)時,建議使用CPU卡代替M1卡,以提高系統(tǒng)安全性。

        猜你喜歡
        讀卡器IC卡扇區(qū)
        分階段調(diào)整增加扇區(qū)通行能力策略
        南北橋(2022年2期)2022-05-31 04:28:07
        工商業(yè)IC卡控制器改造為物聯(lián)網(wǎng)控制器實踐
        與淘汰命運抗爭 看懂筆記本的讀卡器
        在用電梯加裝外接式IC卡運行控制系統(tǒng)設(shè)計改進
        U盤故障排除經(jīng)驗談
        一種新的無觸點IC卡的檢測方法
        電子測試(2017年15期)2017-12-18 07:19:05
        基于EMV非接通信規(guī)范的非接觸讀卡器設(shè)計
        為二維碼識別的獻禮之作——評測平治二維碼門禁讀卡器
        基于貝葉斯估計的短時空域扇區(qū)交通流量預(yù)測
        重建分區(qū)表與FAT32_DBR研究與實現(xiàn)
        国产美女主播福利一区| 亚洲精品无码专区在线| 欧美高大丰满freesex| AV在线中出| 精品亚洲一区二区三洲| 欧美做受又硬又粗又大视频| 越猛烈欧美xx00动态图| 国产av一区二区三区区别| 国产精品后入内射日本在线观看| 久青草影院在线观看国产| 精品日韩欧美一区二区在线播放| 中文不卡视频| 亚洲女人毛茸茸的视频| 少妇伦子伦情品无吗| 久久日本三级韩国三级| 国产精品自线在线播放| 精品中文字幕在线不卡| 四川发廊丰满老熟妇| 在线视频精品免费| 女同国产日韩精品在线| 水蜜桃在线观看一区二区| 性一交一乱一乱一视频| 久久精品性无码一区二区爱爱| 亚洲av无吗国产精品| 国产又色又爽无遮挡免费软件| 国产一在线精品一区在线观看 | 精品久久久久久午夜| 国产夫妻精品自拍视频| 日韩精品成人无码专区免费| 粉嫩少妇内射浓精videos| av中文码一区二区三区| 亚洲在线视频免费视频| 99久久人人爽亚洲精品美女| 无码超乳爆乳中文字幕| 三级日本理论在线观看| 日韩放荡少妇无码视频| 亚洲AV无码久久久一区二不卡| 亚洲综合有码中文字幕| 免费无码又爽又刺激网站直播| 欧美情侣性视频| 久久精品这里就是精品|