NFC Day One

最近大采购啊,买了Nexus 7,OTG线,ACR122U,两张M1卡,一张特种卡

目标:

  • Nexus 7+OTG+RT3070 跑 airodump,需要交叉编译驱动,需要在手机上构建debian或ubuntu环境
  • Nexus 7+NFC实现Mifare卡读取和写入,已经使用NFC_WAR和Mifare Scanner初步实现 
  • Backtrack+libnfc+nfc-tools (或RadioWar liveCD) 实现RFID卡口令获取,并结合Nexus 7和特种卡实现卡复制

这两天尝试了 Backtrack 下使用MFOC获取RFID卡口令和数据,环境搭建和相关驱动安装在Backtrack Wiki 有参考,但实际过程有些小细节还需要一波三四折了一下

整体过程可以参考[HERE]


apt-get install flex libpcsclite-dev libusb-dev checkinstall
cd ~
wget http://www.acs.com.hk/drivers/eng/ ACR122U_driver_Lnx_Mac10.5_10.6_1.02_P.zip
unzip -d acr122u ACR122U_driver_Lnx_Mac10.5_10.6_1.02_P.zip
cd acr122u
tar -jxvf acsccid-1.0.2.tar.bz2
cd acsccid-1.0.2
./configure
make
checkinstall -D -y –install
cd ~
apt-get install -y debhelper libtool && wget http://libnfc.googlecode.com/files/libnfc-1.4.2.tar.gz
tar xfvz libnfc-1.4.2.tar.gz &&cd libnfc-1.4.2
svn checkout http://libnfc.googlecode.com/svn/tags/libnfc-1.4.2/debian
dpkg-buildpackage -rfakeroot
dpkg -i ../libnfc*.deb
cd ~
wget http://nfc-tools.googlecode.com/files/mfoc-0.10.2.tar.gz && tar -xvzf mfoc-0.10.2.tar.gz
cd mfoc-0.10.2
autoreconf -vis
./configure
make
checkinstall -D -y –install


在第二步之后(第二个cd~后面)libnfc装好了,就可以使用nfc-list查看设备信息了,但执行后居然是 

root@bt:~/libnfc-1.4.2# nfc-list
nfc-list use libnfc 1.4.2 (r891)
No NFC device found.

这不是说没识别我的ACR122U吗~果然读卡器灯也不亮,归根结底是因为pcscd没有运行,虽然这是个啥现在还没搞清楚,但看来应该是某种硬件驱动层的wrapper。另开一个窗口执行pcscd -f 再回来执行nfc-list

root@bt:~/libnfc-1.4.2# nfc-list
nfc-list use libnfc 1.4.2 (r891)
nfc-list: ERROR: No ACR122 firmware received, Error: 80100016
nfc-list: ERROR: Unable to connect to NFC device.

看来还是不太正常,深思熟虑过后,原来是还没有放卡片,再来nfc-list

root@bt:~/libnfc-1.4.2# nfc-list
nfc-list use libnfc 1.4.2 (r891)
Connected to NFC device: ACS ACR122U 00 00 / ACR122U210 – PN532 v1.6 (0x07)
1 ISO14443A passive target(s) was found:
ATQA (SENS_RES): 00  04 
UID (NFCID1): fe  05  0f  0f 
SAK (SEL_RES): 08 

总算出结果了,然后完成第三步安装好mfoc等nfc-tools套件

执行mfoc,却出现如下信息

root@bt:~/mfoc-0.10.2# mfoc -O dump
nfc_initiator_select_passive_target: Success

查了半天,好像是libnfc的bug,Backtrack Wiki里面提到的libnfc-1.4.2已经不是最新版本了,至少1.5.0已经出来了,所以重启后(Live CD模式),重新执行上述命令,但把第二步的所有1.4.2换成1.5.0,


cd ~
apt-get install -y debhelper libtool && wget
http://libnfc.googlecode.com/files/libnfc-1.5.0.tar.gz
tar xfvz libnfc-1.5.0.tar.gz &&cd libnfc-1.5.0
svn checkout
http://libnfc.googlecode.com/svn/tags/libnfc-1.5.0/debian
dpkg-buildpackage -rfakeroot
dpkg -i ../libnfc*.deb


mfoc就也工作了~

没有什么新东西,只有新问题~后续工作等到十一回家慢慢玩吧~折腾他们太操心了