僅供測試,請勿模仿。
//什麽是//NFC,肯德基?不知道。。
近場通信(NFC)是壹項新技術,它使用NFC技術。
例如,移動電話可以在彼此靠近時交換數據,這是由非接觸式射頻識別(RFID)和互聯技術的集成演變而來的。通過在單個芯片上集成感應讀卡器、感應卡和點對點通信的功能,可以使用移動終端實現移動支付、電子票務、門禁、移動身份識別和防偽等應用。飛利浦和索尼聯合開發的壹種非接觸式識別和互聯技術可用於移動設備、消費電子產品、個人電腦和智能控制工具之間的近場通信。NFC功能提供了壹種簡單的觸摸感應解決方案,使消費者能夠簡單直觀地交換信息並訪問內容和服務。
借助CM9 rom的nfc讀寫標簽功能,實現了軟件卡仿真。(以前的版本都沒有。谷歌正式版沒有開通這個功能。目前,自android 5.0以來,谷歌已經為卡片模擬開放了其他nfc api。
具有NFC功能的設備,例如手機或手環,通過模擬IC卡的操作將IC卡的數據復制到手機的NFC芯片上,然後將來可以使用手機的NFC功能來刷卡。
它可以攔截Android手機支持的13.56hz nfc無線通信協議的所有標簽數據。nfc非接觸式黑盒測試壹直不是壹個很好的解決方案,要麽太高端(需要專業設備),要麽不容易使用(proxmark3並不便宜,無線監控的方式導致攔截的數據不穩定,並且沒有現成的解決方案。操作的便捷性和交互性也較差。nfcproxy為我們偶爾的測試狗提供了壹個低成本、高效率的解決方案。它支持各種nfc標簽,iso 14443標準,apdu數據也很完整和穩定。基於安卓app源代碼的二次開發也很簡單,隨便改改java基本不成問題。基於這個app,可以通過軟件衍生出多種測試方法。
1,卡和終端之間的數據嗅探
2.交互過程中的數據修改
3.模擬卡
最重要的很簡單,買兩部二手手機,每部100元。
硬件要求:
兩部帶nfc功能的安卓手機(鹹魚最便宜300元以內就能搞定),壹臺帶非接觸功能的pos機或讀卡器(有pos機是最容易的,我有壹臺支持銀聯閃付的POS機),自己的銀行卡支持非接觸支付,任何壹張有銀聯快通標識的都可以。
1,基於支持CM9 rom的Android手機。
我用的是谷歌女婿Nexus S,ROM是基於cm的Slim 4.3 build 2-official-1332定制版。
安卓版本4.3.1。我很早就買了,有點貴。現在如果用閑魚就沒必要買這個了。後世也便宜。可以考慮二兒子三兒子四兒子,壹加壹有點貴。理論上,任何支持CM9的人都可以做到這壹點,但因為
CM官網已經讓老rom難找了,所以盡量找到手機對應的老rom再決定買什麽。2.具有nfc功能的安卓手機(最好還支持cm9)
我用的是三星S2銀河SGH T989大力神T版,CM版是11-20160815-nightly-Hercules。
安卓4.4.4版本,cm11好像去掉了軟件卡模擬的功能,我也沒降rom版本。其中壹個有效。只要不是奇葩的定制rom,理論上是可以做到的。建議選擇支持cm的,比較安全。硬件選擇同上。軟件要求:
有完整的功能實現,每個人都可以基於自己的使用直接打包使用。
方便的是,集成了emv-bertlv庫,可以直接在app中解包交互數據。妳可以試試我的github地址:
本地應用程序包下載:
施用方式
兩款手機都安裝了nfcproxy,並且通過打開NFC功能將兩款手機連接到同壹個wifi,因此兩款手機可以互相訪問。
1、代理設置
在支持cm9卡模擬的手機上(我必須是nexus s),打開nfcproxy軟件,點擊設置,取消中繼模式收音機框的IP地址,填寫另壹部手機的wifi ip端口,並填寫另壹部手機的nfcproxy監聽端口。默認值為9999encrypt。
通信不需要選擇。不加密也可以自己玩。始終保持屏幕打開,只需調試日誌記錄,就可以顯示卡號。然後退出設置。
2.繼電器端子的設置
在另壹部手機上(我必須使用t989),打開nfcproxy軟件,單擊設置,然後選中中繼模式單選框。妳不需要填寫IP地址。
在另壹部手機中填入剛才設置的nfcproxy監聽端口,默認為9999,兩邊相同。
通信不需要選擇。不加密也可以自己玩。始終保持屏幕打開,只需調試日誌記錄,就可以顯示卡號。然後退出設置。
3.試驗
1.打開中繼終端使用的手機nfcproxy軟件粘貼到銀行卡上,狀態窗口應提示。
tech list:Android . nfc . tech . isodep Android . NFC . tech . NFC如果沒有響應,請檢查NFC是否打開,手機。
NFC功能正常嗎?
2.拿到POS機選擇消費,輸入金額後提示刷卡。
3.打開用於代理的手機,nfcproxy軟件,貼在POS機上進行不收卡刷卡的動作。
正常過賬後,nfcproxy的數據窗口會提示:Reader。
標簽:Tech【Android . NFC . Tech . iso . pcda】連接到NFC lay連接到NFCRelayTransaction
完整!這說明貼卡的手機已連接,POS機的請求已轉發到卡上,卡的響應已轉發回來,交易已進行。此時,POS應顯示請輸入密碼,並且交易成功。再看壹下回放端nfcproxy的數據窗口,可以看到交互數據。長按數據以選擇最右側的三個垂直點,導出到文件會將截取的數據保存到內部存儲的/NfcProxy目錄中。
註1:如果貼POS的手機沒有反應,則需要檢查nfc功能是否正常。
註意2:狀態提示連接NFCRelay失敗需要檢查兩部手機的wifi是否連接,配置的ip和端口是否正常。
祝妳好運。
Btw:我從15就開始用這個方案了。只是為了工作和測試pos。偶爾用壹下很方便。最近又用了,決定整理壹下。之前看過大神的文章,也給社區貢獻過壹次。軟件本身仍有很大的潛力可以挖掘,例如動態修改交互數據。。。。。。妳知道,別亂來。妳會檢查水表。此外,還發現壹些終端使用壹些奇怪的模式來讀卡,從而導致軟件錯誤。此時我們只能使用proxmark3進行暴力監控,但這種mitm方法比proxmark方便得多,也便宜得多。最後,我在ppt中附上壹張圖片,這是我簡單繪制的,供您理解。
在復制IC卡時,我將IC卡分為加密卡和非加密卡。請盡量直接復制非加密卡。如果沒有,請參考加密卡教程。
工具:
1.硬件:PN532(新手推薦買這個,某寶賣30元左右,壹般半加密卡用這個就能破解,全加密卡需要PM3)、USB轉ttl線、mi band NFC版(3代和4代可選)、cuid卡。
2.軟件:PN532的驅動(自己找賣家要,找對應的驅動,或者看我鏈接裏的驅動是否合適),winhex,
MifareOneTool(簡稱M1T),NFC_READER_crack。
首先,用PN532連接USB至ttl線路(線路序列定義:黑色GND、紅色VCC、白色SDA、綠色SCL)。然後安裝在電腦上
PN532的驅動程序,將PN532連接到計算機,然後檢查設備管理器。COM端口中有壹個設備證明驅動程序已成功安裝。
打開軟件M1T,點擊測試連接,然後壹鍵解鎖原卡。如果有鑰匙,它會嘗試打開它。解密成功後,將導出壹個。dump文件,我們將保存它。
打開。用winhex轉儲文件,用FF填充AB密鑰,填充後保存為副本,順便記下開頭的卡號(8位數)。
然後我們再次打開M1t,選擇高級操作模式,打開十六進制編輯器,復制剛剛找到的八位卡號,打開工具,修改UID,將剛剛復制的八位卡號粘貼到其中,單擊確定,然後單擊文件-另存為。mfd文件。
在高級模式下,選擇要寫入的cuid,寫入just。mfd文件寫入cuid卡,如果64個塊未寫入,則再次寫入。
Mi波段選擇門卡模擬,模擬剛剛寫入的cuid卡。mfd文件復制到mi波段,然後打開它。
軟件NFC_READER_crack選擇寫入普通M1卡,將填有密鑰的飯卡數據寫入手環。如果妳只寫了63塊,沒關系。讓我們看看它是否有效。
然後妳就完事了!!
本教程不得用於非法目的。復制的飯卡余額是壹樣的,不存在修改余額的情況。飯卡的原始余額是多少?這和妳用來做飯的東西是壹樣的。復制到手環裏只是為了做飯方便。
問:為什麽在最後將數據寫入手環時使用NFC_READER_crack而不是原來的M1T?
a:因為用M1T向手環寫數據會造成玄學問題,也就是不能寫63塊,所以NFC_READER_crack不存在問題。如果使用cuid卡復制門禁卡,可以嘗試使用M1T。
問:那怎麽復制門禁卡呢?
答:如果門禁卡是半加密卡,可以根據這篇文章復制。如果是非加密卡,盡量直接模擬。如果沒有,請按照讀取數據(保存)–生成。帶有卡號的mfd文件–將其復制到cuid卡–用手環模擬cuid卡–用手環寫入門禁卡數據。
生活中還有很多其他情況。黑客可以破解NFC公交卡,無限乘車,甚至劫持支持NFC的手機,因此安全問題顯而易見。畢竟防人是不可或缺的。