尹汉炜
摘 要:随着信息技术和网络技术的发展与普及,智能终端呈现出迅猛发展趋势。智能终端的使用已经引起各类内容服务提供商的关注,纷纷将应用、服务、内容转移到移动智能终端并开发出相应的应用。而智能终端是依赖近场通信技术来实现业务功能的。该文首先近场通信技术的应用情况、基础术语及定义,然后分析此次研究方向和测试线路,最后结合渗透测试工作实际情况,对该公司的门禁卡、车库道闸进行测试,验证NFC、遥控道闸的安全薄弱点,通过实例演示以展现NFC、遥控道闸被控制的危害性。
关键词:近场通信 RFID 门禁卡 遥控道闸 无线鼠标 信号破解 信息窃听 信息篡改
中图分类号:TD65 文献标识码:A 文章编号:1672-3791(2015)08(a)-0030-02
目前,近场通信技术被应用到电力行业中的各个方面,从出入门禁卡、车库遥控道闸、智能电表、巡检登记点、物料登记等多个应用场景,而这些应用场景均是电力企业开展日常工作的重要组成部分。该方案主要研究对各种终端所面临的RFID、红外等无线接入安全威胁及安全需求,分析比较其安全特性、架构和机制,并针对现有安全问题及机制提出了安全增强方法。最后对各类型无线接入安全未来发展趋势进行了预测分析,并根据课题研究成果形成一套有效的接入、访问控制、授权、检测等安全管理与管控办法。
1 NFC(近距离无线通讯技术)
NFC近场通信技术是由非接触式射频识别(RFID)及互联互通技术整合演变而来,在单一芯片上结合感应式读卡器、感应式卡片和点对点的功能,能在短距离内与兼容设备进行识别和数据交换。工作频率为13.56MHz.但是使用这种手机支付方案的用户必须更换特制的手机。目前这项技术在日韩被广泛应用。手机用户凭着配置了支付功能的手机就可以行遍全国:他们的手机可以用作机场登机验证、大厦的门禁钥匙、交通一卡通、信用卡、支付卡等等。
2 NFC测试
2.1 检测目的
NFC近场通信技术是由非接触式射频识别(RFID)及互联互通技术整合演变而来,在單一芯片上结合感应式读卡器、感应式卡片和点对点的功能,能在短距离内与兼容设备进行识别和数据交换。工作频率为13.56MHz。
NFC技术可以用于机场登机验证、大厦的门禁钥匙、交通一卡通、信用卡、支付卡等等。
在此次测试中,对常见的几种卡进行破解、克隆和篡改测试。
2.2 检测工具
Proxmark3是国外Jonathan Westhues设计的第三代射频开发工具,用于低频(125KHz,134KHz)和高频(13.56MHz)的各种应用。
⑴作为一个读卡器。
⑵监听记录RFID射频通信,监听记录读卡器到卡片和 卡片到读卡器的通信,一些监听记录设备只能监听读卡器到卡片的通信,不能监听记录卡片到读卡器的通信。包括高频的各种协议14443a,14443b和15693.
⑶模拟卡片。
监听记录RFID射频通信是射频开发的一个必备工具,像电路调试的示波器一样。
其他内容介绍以及驱动的安装请详见参考资料中的“Proxmark3使用案例”一文。
2.3 测试结果
2.3.1 判断卡的类型
常见的NFC标签为高频卡,使用13.56Mhz进行通信。使用hw tune命令查看Proxmark3的天线状态,有两次状态,第一次是在无标签状态下的电压9.22v,第二次是在有门禁卡贴近时的电压5.45v,根据经验,超过1v的变化,可以判断为高频卡。
故使用高频卡相关的命令(hf 14a reader、hf 14b read等)尝试读取卡的信息,使用hf 14a reader时收到设备反馈,从而得知此卡为NXP MIFARE CLASSIC 1K或者Plus 2k SL1卡,并且UID为b431d811。
2.3.2 破解密钥
很多卡在使用前未对所有块区的密钥进行整改,而出厂密钥一般为FFFFFFFFFFFF,测试是否存在哪个块区使用了默认密钥,使用命令hf mf chk 0 A FFFFFFFFFFFF,即可发现一个有效密钥FFFFFFFFFFFF。由于MIFARE CLASSIC卡存在漏洞,可以通过通过一个已知的密钥计算出其他块区的所有密钥,这里Proxmark3已经提供了此功能,使用命令hf mf nested 1 0 A FFFFFFFFFFFF进行破解,经过一番计算后,得到整个卡16个块区的密钥,可知很多块区均使用了默认的密钥。
在使用使用上述命令增加参数d,可以把破解出来的密钥保存到bin文件,破解完成后,在工具所在目录下可以找到dumpkeys.bin文件。
2.3.3 复制卡片
得到密钥文件后,就可以读取卡片中的内容,并且进行克隆。使用hf mf dump命令将卡片中所有内容读取并保存成文件,命令执行完毕后,内容保存在工具所在目录下,文件名为dumpdata.bin。
使用空白的可改写UID的卡片,进行克隆,使用hf mf restore,将上面dump下来的数据写入到空白的卡里,除block 0写入失败,其他从所有块区已成功写入数据,由于Proxmark3的restore功能不支持写入block 0,不过可以使用另外的命令写入block 0数据,使用命令hf mf csetblk 0 B431D8114C0804006263646566676869,其中后面的32位字串为原门禁卡的block 0数据,前面的8位为UID,白卡原来自己的UID为a85e8109,成功写入block 0数据后,重新读取block 0数据,与门禁卡的block 0数据完全一致,包括了UID及后段的厂商标识等信息。
2.4 测试结论
2.4.1 方法总结
(1)MIFARE CLASSIC M1卡自身通信协议上存在缺陷,导致只需要知道其中一个密钥就可以计算出卡内所有其他的密钥。目前所使用的卡基本都存在默认密钥的现象,即FFFFFFFFFFFF,所以使用FFFFFFFFFFFF和Proxmark3带有的破解计算功能,即可以完成对M1卡其他所有密钥的破解。
(2)使用Proxmark3的hf 14a sim 1 22222222即可模拟一张符合ISO/IEC 14443 type A协议的卡片,UID为22222222,未能实现模拟出一张带有完整16个扇区数据的卡片。
2.4.2 成果总结
(1)使用Proxmark3可以凭一个已知密钥,计算出其他所有块区的密钥。
(2)使用Proxmark3可以模拟一张带UID的卡片,但未能模拟带完整16个扇区的数据。
(3)Android 4.4及以上版本的安卓系统,提供NFC芯片相关API,但暂无相关成功实例,未能实现模拟。
2.4.3 成果分析
出于成本考虑,M1卡本身没有对数据加密的功能,数据容易被解析、篡改。据了解,有同样问题的,还有低频卡片如ID卡、HID卡、5577卡等。建议使用CPU卡,其设计有密钥文件及认证机制,安全性较高。
3 结语
此次通过分析近场通信技术中的NFC卡、车库遥控道闸的安全性,并通过技术测试论证了在目前情况下,NFC卡存在可被破解、篡改、复制的威胁,车库遥控道闸就直接会受到重放攻击。
该文除了论证NFC卡、车库遥控道闸等两个近场通信技术应用场景的安全性,还希望能促进技术的升级改造,使用这些应用场景能更好的服务于现实工作。
参考文献
[1] 姚皓.试析电力无线通信技术的创新[J].中国新通信,2014,16(6):3.
[2] 王琦.无线通信技术及其在电网通信中的应用前景探讨[J].企业导报,2012(22):289.
[3] 常亮.电力自动化无线通信网络的分析与研究[J].科技与企业,2013(15):101.