随着Redmi Note 8Pro的發布,小米将NFC功能下探到了千元機行列,那麼如何玩轉NFC?如何利用NFC實現加密IC卡的複制功能呢?那麼本篇文章就對于NFC複制加密IC卡的過程有一個詳細的介紹。
随着NFC的普及,有越來越多的身份認證場景使用了IC卡,而廠商為了用戶的信息不被輕易洩露,而對IC進行了加密,一般的手機NFC無法直接複制加密的IC卡,但可以借助第三方工具進行對加密IC的複制。
那麼如何完整複制加密IC卡實現支付功能呢?本教程就以某校園的校園卡進行複制測試。
1. 查看此IC卡是否可以進行複制首先在手機上下載TagInfo軟件并安裝:
将IC卡貼于手機NFC感應區,稍等片刻
進入"技術"一欄,查看SAK是否為0x08,如果是0x20 或者0x28的話,則說明此卡為銀行卡同類型的cpu卡,無法進行複制(0x20可以利用pm3嗅探方式解密,此處不再闡述)。
然後查看下面的數據,如果存在FF:FF:FF:FF:FF:FF的話就是可以利用pn532進行解密,
而如果全部都是xx:xx:xx:xx:xx:xx的話,就需要更貴的硬件設備進行解密,這裡不再闡述。
2. 準備硬件設備· 準備RMB約33元左右,一台有USB插口的Windows系統電腦
然後在某寶買以下物品:
· pn532(一定要問賣家是否可以幫忙焊接,一定要焊接過得),USB-TTL轉接線(兩者通常打包出售)--30元
· CUID水滴卡(非買pn532送的UID卡) --3元
3. 準備相關軟件PC軟件:
· USB-TTL驅動
· MifareOneTool
項目地址:
下載地址:
手機端應用:
· MIFARE Classic Tool(可選)
項目地址:
下載地址:
官方無中文翻譯,如有需求可以網上自行找漢化版
4. 硬件安裝并連接到PC首先pn532背面有接口說明:
USB-TTL上也有接口說明:
按照以下接口連接:
GND——GND
VCC——5V
TXD——RXD
RXD——TXD
然後将USB-TTL連接到PC的USB端口,此時,pn532芯片紅色LED燈會常亮
接着打開MifareOneTool軟件
點擊"檢測連接",如果檢測到pn532芯片,則有相關信息提示:
如果沒有識别到設備,請确保驅動已經進行安裝,或者更換驅動再次嘗試
5. 利用nested authentication攻擊解密IC卡将要解密的IC卡放置于pn532芯片上,在MifareOneTool中點擊"一鍵解原卡",此時,會利用nested authentication攻擊的方式對key的解密,耗時将會在幾分鐘左右。成功解密後将數據保存一下。
6. 複制加密IC卡到手機(前一部分也可以用MIFARE Classic Tool實現)
我們平日用的都是S50的Mi類型的IC卡,此卡共有16個扇區,每個扇區有4個區塊,其中每個扇區的前三個區塊放置數據,最後一個區塊為放置keyA 訪問條件 keyB,每個扇區的數據有key才可以訪問(第一個扇區的第一個塊除外)。
第一個扇區的第一個區塊放置卡的UID與廠商出廠代碼,90%的門禁都是通過獲取到UID來識别身份的,而UID的獲取不需要key即可訪問,所以僅複制UID即可通過絕大多數的門禁的驗證,而本文的目的是在于支付功能的實現,而支付功能一般儲存在加密扇區,所以加密數據均要進行複制。
首先先繞過手機NFC的加密檢測,此時我們用到了水滴卡(CUID)卡,此卡為國内某廠商的神卡,可以多次讀寫所有扇區的所有區塊包括廠商代碼,将CUID卡放在pn532上,在MifareOneTool.exe高級操作模式中,打開Hex編輯器
打開之前保存的IC卡數據
選擇扇區0,複制上面第0塊的值,然後點擊左上角的文件選項
點擊新建,然後先點擊扇區1,再點扇區0
然後将将值複制到第0塊,然後點擊修改扇區,接着點左上角文件,點擊另存為
然後點"CUID寫"
選中card_unlock.dump
寫入成功後,即可使用手機NFC複制此CUID卡
然後将手機NFC刷卡打開,并放置于pn532上
點擊寫M1,選擇card.dump
成功寫入,最後再查看一下寫入的數據是否正确
點擊加載密鑰,選擇card.dump,然後點擊已知密鑰讀
讀取結果保存到tmp.dump
點擊差異比較
隻有第一個塊的後面的廠商代碼不同,其餘的加密塊的數據全部一緻,至此,模拟加密卡到Redmi Note 8Pro NFC完成,現在你可以愉快的拿着手機去刷卡消費去了。
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!