《NFC技术-安全-壁垒》由会员分享,可在线阅读,更多相关《NFC技术-安全-壁垒(30页珍藏版)》请在金锄头文库上搜索。
1、NFC技术-安全-壁垒,陈健 06/03/2013,Activities versus Technology / Device Platform,NFC-5大类技术规范,协议技术规范(Protocol Technical Specification ); 1、NFC数字协议技术规范: 2、NFC的逻辑链路控制协议技术规范(NFC Logical Link Control Protocol(LLCP) Technical Specification): 3、NFC活动技术规范 数据交换格式技术规范(Data Exchange FormatTechnical Specification); NFC
2、标签类型技术规范(NFC Forum Tag TypeTechnical Specifications ) ; 记录类型定义技术规范(Record Type Definitionf Technical Specifications); 参考应用技术规范(Reference Application Technical Specifications ),NFC数字协议技术规范,本规范强调了用于NFC设备通信所使用的数字协议,提供了在ISO/IEC 18092和ISO/IEC 14443标准之上的一种实现规范。该规范定义了常见的特征集,这个特征集可以不做进一歩修改就可用于诸如金融服务和公共交通领域的
3、重大NFC技术应用。它还涵盖了 NFC设备作为发起者、目标、读写器和卡仿真器这四种角色所使用的数字接口以及半双工传输的协议。NFC设备间可以使用该规范中给出的位级编码、比特率、帧格式、协议和命令集等来交换数据并绑定到LLCP协议。,NFC活动技术规范,该规范解释了如何使用NFC数字协议规范与另个NFC设备或NFC Forum标签来建立通信协议。参考应用技术规范包括了 NFC论坛连接切换技术标准(NFC Forum Connection Handover Technical Specification),其中定义了使两个NFC设备使用其他无线通信技术建立连接所使用的结构和交互序列。该规范一方面使
4、开发人员可以选择交换信息的载体,如两个NFC手机之间选择蓝牙或WiFi来交换数据;另一方面与NFC兼容的通信设备可以定义在连接建立阶段需要在NFC数据交换格式报文中承载的所需的信息,NFC的逻辑链路控制协议技术规范,定义了 OSI模型第2层的协议,以支持两个具有NFC功能的设备之间的对等通信。LLCP是一个紧凑的协议,基于业界标准IEEE802.2,旨在支持有限的数据传输要求,如小文件传输或网络协议,这反过来又会为应用程序提供可靠的服务环境。NFC的LLCP与ISO IIEC18092标准相比,同样为对等应用提供了一个坚实的基础,但前者加强了后者所提供的基本功能,且不会影响原有的NFC应用或芯
5、片组的互操作性,NFC标签类型技术规范,NFC论坛目前提出的标签类型规范可兼容下面4类NFC标签: 1、第一类型标签是基于14443A协议,标签内存最小为96个字节,可动态扩充。如果标签只涉及到简单的读写存储,例如实现简单的智能海报功能,该类标签是完全可用的。此类标签主要用于实现读取信息,具有操作简单,成本小等优点。 2、第二类标签同样基于14443A协议,但仅支持phlips公司提供MIFARE UltraLight类型卡。 3、第三类型标签是由SONY独家提供的Fecila技术类型。 4、第四类型标签兼容14443A/B协议,该类标签属于智能标签,接收应用协议数据单元(APDU,Appli
6、cation Protocol Data Unit)指令,拥有较大的存储空间,能完成一些认证或安全算法,可用于实现智能交互和双界面标签的相关操作。此类标签应用范围广泛,可以适应未来不断的研究开发。,NFC数据交换格式技术规范-1,NDEF,定义了NFC设备之间以及设备与标签之间传输数据的一种消息封装格式。该协议认为设备之间传输的信息可以封装成一个NDEF消息,而一个消息可以山多个NDEF记录构成,如图所示。,NFC数据交换格式技术规范-2,单个NDEF记录包含了多部头域和有效载荷域。首部包含了五个标志位(MB,ME,CF,SR,IL)、标签类型分类TNF、长度可变区域的长度信息、类型识别位、一
7、个可选的记录标识符(ID)。如表所示。上图中R1至Rn表示有n个记录,其中R1的MB位值为1是表示一个消息开始,Rn记录的ME位为1表示消息结束,中间的记录这两位值为0。,NFC数据交换格式技术规范-3,MB和ME位:用于标志一个消息相对应的开始和结束的记录。 CF值为1时,说明存在下一个记录。 SR定义了负载域(Payload)的长度。0值表示Payload Length域的大小是一个4字节的无符号整数。1值表示一个字节的无符号整数。该标志位用于减少短记录的内存浪费。 IL为1 ,则需要给出可选ID域以及它的相关长度域的值。 TNF(Type Name Format)的定义如下表所示。,记录
8、类型定义技术规范,NFC论坛给出了多种类型不同的5种RTD: 1、简单文本记录(“T”, NFC Text RTD Technical Specification):提供了一种有效的方法通过使用RTD机制和NDEF格式以多种语言存储text字符串。它包含了描述性文本,以及语言和编码信息。一般和别的记录一起使用,用于描述记录的内容或功能。 2、URI记录(“U”, NFC URI RTD Technical Specification):提供了一种有效的方法通过使用RTD机制和NDEF格式以多种语言存储统一资源描述符URI (Uniform Resource Identifier )。该记录涵盖
9、了 URL, e-mail地址,电话号码,以及SMS信息。 3、Smart Poster记录(“Sp ” , NFC Smart Poster RTD Technical Specification):定义了一种用来在NFC标签上存放、或是在设备之间传输URL、SMS或电话号码的类型。Smart Poster RTD构建在RTD机制和NDEF格式的基础之上,并使ffl 了 URI RTD和Text RTD作为构建模块。 4、控制类型记(“Gc”, NFC Generic Control RTD Technical Specification):提供了一个NFC设备、标签或卡(源设备)通过NFC
10、通信以一种简单的方式向另一个NFC设备(目标设备)来请求一个特定动作(例如启动一个应用或设置一种模式)。 5、Signature记录(“Sig”, NFC Signature RTD Technical Specification):规定了对单个或多个NDEF记录进行签名时所使用的格式。定义了需要的和可选的签名RTD域,并提供了一个合适的签名算法和证书类型以用来创建一个签名。并没有定义或强制使用某个特定的PKI或证书系统,也没有定义Signature RTD使用的新算法。证书的验证和撤销过程超出了该规范的范围。,基于芯片的手机支付技术 RFSIM、SIMPASS以及NFC,RFSIM是目前中国
11、移动主推的手机支付技术,全称射频识别SIM卡,通过在手机SIM卡中集成近场支付芯片来实现手机支付。其优点在于可识别距离比较远(5-10m),无需更换手机,不过缺点也比较明显。首先是不能运行JAVA card,这对于运行目前主要以java环境开发的应用程序无疑是致命的。另外一点是POS机改装难度大(需要调整POS机功率),与最主要的支付终端对接很成问题。 而SIMPASS是较早的手机支付技术,俗称双面SIM卡。拥有此技术的SIM卡一面是常规SIM芯片,另一面是用于支付处理的CPU芯片。其优点是使用过程与一般SIM一样,缺点是需要改造手机,但偏偏该方案没有获得手机制造商的支持,因此此方案是3大技术
12、方案里最冷门的。 NFC同RFSIM一样脱胎于RFID技术,是由飞利浦公司发起并联合nokia、sony等巨头主推的一种新的近场通信技术。NFC技术能够在近距离与相关设备进行对接和数据交换,其优点有很多,如安全性高,独立于SIM卡,可以无源使用,程序兼容性好(eclipse已经推出了NFC程序开发插件NDEF),支持的大厂商多等等,是目前中国银联主推的手机支付技术。当然缺点也有,主要是需要普及全新的NFC芯片手机,不过由于三星、诺基亚、苹果等大的手机制造商都在积极推出具备NFC功能的手机,普及只是一个时间问题。当然如果普及缓慢的话还有与SIM卡集成这一折中的方案(如采用SWP接口规范),因此采
13、用NFC技术标准是未来手机支付领域必然的趋势。,NFC常见5大安全问题 窃听,窃听是指在NFC链路层通讯不加密的情况下,如果我们不在链路层之上做一些加密处理,攻击者很容易偷听到我们传输的内容,这样攻击者可以轻易地获得NFC标签中的信息,所以利用标签来传输敏感数据是极度不安全的。由此引发另一个问题是我们随身携带的标签或智能卡的ID号是唯一的,攻击者只需要一个隐藏的读卡器就可以不断获取ID号从而确定我们的位置。同时假设这个标签是存在于我们身份证或护照中,那么攻击者甚至可以盗用我们的隐私。 NFC的优势是两个通信设备之间的距离很短(10cm范围内)。前文说NFC是一种轻松、安全、迅速而自动的私密通信
14、,但在实际应用中仍需要依据大量的因素对通信范围内的设备进行检测,来识别是否存在攻击者。,NFC常见5大安全问题 数据损坏,数据损坏是指攻击者通过干扰交易数据而造成它的损坏。通过与原服务器的备份信息对比来检测损坏,但是如果它做磁盘操作系统拒绝服务的攻击,将会导致整个NFC应用服务系统无法提供服务,例如一个买票系统,检索信息系统,支付应用等。在这种情况下,NFC终端设备将会失去作用,或者被攻击者误导发生错误交易,造成损失。,NFC常见5大安全问题 数据篡改,由于在链路层或其他各层缺少安全保护,攻击者可以随意修改我们的数据。当一个NFC读卡器正在读一个被动标签内容,这时修改数据就是一种攻击。阻止这种
15、攻击的方法是在没有正确写权限的情况下,逻辑上不能进行数据修改;另一个方法就是让该NFC标签只读。但事实上对标签的身份若不能有效的识别,攻击者还可以通过一些方法来修改标签数据。,NFC常见5大安全问题 克隆,克隆是根据有效NFC标签的内容复制一张一模一样的新标签。由于很多标签设置了逻辑保护不让全部的数据被读到,这样想要得到一个正确的标签是很难的。故攻击者对克隆标签兴趣不大,但是我们仍不能在一个标签中放置太多可信信息。以超市利用标签支付商品为例,克隆卡的存在意味着它拥有和该超市有效标签一样的外观,一样的权限,一样的数据。这种情况下,如果某些商品的标签不小心脱落,攻击者可以将自己的克隆标签贴上去,顾
16、客将支付修改后的标签。解决这个问题的方法是针对不提供读保护的卡或一个存在已知攻击的卡可以通过设置后台黑名单来识别克隆卡。,NFC常见5大安全问题 网络钓鱼,网络钓鱼是指攻击者伪装成某个真实机构,向顾客发送欺骗性垃圾邮件或Web网址,从而诱导顾客给出自己的敏感信息,例如用户名、密码、身份证信息、银行卡信息等。如果一个智能海报标签被修改,用户将会被蒙蔽而浏览一个看起来相似而有恶意导向的网页,例如一个智能海报通过点击订票网页来初始化车票的预定。该网址前台是车票预定系统,后台可能是一个个人转账应用,用户被其表面信息所欺骗而无法识别,造成财产损失。另外,如果用户的手机界面上出现类似网络钓鱼的错误或缺陷同样会误导用户。,两种NFC终端类型,手机终端的NFC功能模块,NFC Controller:即NFC芯片,实现NFC卡模拟、读写器、点对点模式所定义的模拟、数字协议的处理; NFC协议栈:配置NFC芯片工作模式并实现NFC Forum定义的各项标准; SE:即安全芯片,所有涉及敏感数据、加密运算等业务(如银行卡、公交卡)均需要单独安全芯片处理; SE访问API:向客户端开放访问SE的