0%

NFC模式以及NFC范围攻击

近场通信(Near Field Communication,简称NFC),NFC设备可以在彼此靠近的情况下进行数据通信。是由非接触式射频识别(RFID)及互连互通技术整合演变而来的,通过在单一芯片上集成感应式读卡器、感应式卡片和点对点通信的功能,利用移动终端实现移动支付、电子票务、门禁、移动身份识别、防伪等应用。

“近场”是指临近电磁场的无线电波,也就是电磁波。遵循麦克斯韦方程,也就是“变化的磁场产生电场,变化的电场产生磁场”。要想通信肯定要有发射方和接收方,在电场和磁场从发射天线到接收天线的过程中会一直交替能量进行能量转换,并在转换的过程中互相增强。那么根据发射天线和接收天线的距离,就有咱们实际生活中的两种应用场景。长距离传输,又称远场通信,手机所使用的无线电信号就是远场通信;短距离传输,又称为近场传输,在电磁波10个波长以内,电场和磁场相互独立,这时电场没有多大意义,但是磁场却可以用于短距离通信。

NFC工作原理

NFC是一种短距高频的无线电技术,NFCIP-1标准规定NFC的通信距离为10厘米以内,运行频率13.56MHz,传输速度有106Kbit/s、212Kbit/s或者424Kbit/s三种。NFCIP-1标准详细规定NFC设备的传输速度、编解码方法、调制方案以及射频接口的帧格式,此标准中还定义了NFC的传输协议,其中包括启动协议和数据交换方法等。

NFC工作模式有主动和被动两种。主动和被动是站在用户的角度讲,被动就是用户设备不产生射频场,主动就是用户设备产生射频场。

被动模式中NFC发起设备(也称为主设备)需要供电设备,主设备利用供电设备的能量来提供射频场,并将数据发送到NFC目标设备(也称作从设备),传输速率需在106kbps、212kbps或424kbps中选择其中一种。从设备不产生射频场,也就不需要供电设备,而是利用主设备产生的射频场转换为电能,为从设备自身的电路供电,从设备接收主设备发送的数据,并且利用负载调制技术,以相同的速度将数据传回主设备。因为此工作模式下从设备不产生射频场,而是被动接收主设备产生的射频场,所以被称作被动模式,在此模式下,NFC主设备可以检测非接触式卡或NFC目标设备,与之建立连接。

主动模式中,发起设备和目标设备在向对方发送数据时,都必须主动产生射频场,所以称为主动模式,它们都需要供电设备来提供产生射频场的能量。这种通信模式是对等网络通信的标准模式,可以获得非常快速的连接速率。

NFC应用模式

NFC有三种工作模式:点对点通信模式、读写器模式和NFC卡模拟模式。

点对点模式

设备:两个均有NFC功能的设备

点对点模式是两个均有NFC功能的设备之间进行数据通信,比如数字相片,名片之类的交换。

读卡器模式

设备:具有NFC功能的设备,NFC标签

NFC标签就是可以写入NFC格式标准数据的芯片,拿操作系统来举例,NFC标签就相当于指令寄存器可以写入和存储指令,而NFC设备和NFC标签靠近时,就相当于执行指令,NFC设备就会做出相应的动作,比如跳出第三方程序。此时NFC设备就是一个读卡器。

卡模拟形式

设备:有NFC功能的设备

将有NFC功能的设备模拟成一张NFC标签或者非接触卡。例如:支持NFC的手机可以作为门禁卡和银行卡。用户仅需把自身的手机或者其他有关的电子设备贴近读卡器,接收到足够的能量以唤醒时可以与NFC读取器进行通信,同时输入相应密码则可使交易达成。

ps:我内心还原了一下刷公交卡的过程,不太靠谱,仅仅是自己瞎琢磨

公交车上的读卡器就是发射频场的主设备,同时它也是联网了的,你的公交卡就是NFC标签里面记录了你的公交卡号等信息当然肯定是NFC标准格式的数据,当你刷卡时,因为你的卡片和主设备达到了一定距离,就产生了信息交换,主设备读取到你的卡号就执行了扣钱操作,把你的卡号和扣的钱这些信息发送给银行,然后扣钱操作就完成了。

NFC身份验证协议:处理付款时,NFC读取器会不断发送查询信号,并等待NFC卡的响应。 NFC卡一旦积聚了足够的能量,便会使用负载调制对读取器的信号进行解码,然后发送包含16位随机数和ID码(通常为4-7个字节)的响应。卡和读卡器之间成功握手后,验证付款过程。 NFC背后的物理原理:NFC标签使用电磁感应来供电以唤醒NFC标签芯片。

You foot the bill! Attacking NFC with passive relays论文解读

闪付和小额免密支付是这项攻击能成功的关键。在之前讲到要距离小于10cm,NFC设备之间才会产生信息交换。这项攻击就是通过扩大通信范围来达到在你神不知鬼不觉的情况下钱没了。当你在商店里排队时,前面的人可以使用无源可穿戴设备让你支付账单,该设备会在你不知情的情况下强制扫描信用卡。

攻击者通过扩大通信范围,使得NFC读卡器读取攻击者身后的受害者的NFC卡。

攻击模型包括一个读取器,一个装备有被动黑客设备的攻击者以及一个携带NFC卡的受害者。我们的黑客设备由一个半腰带和一个包含三个线圈的背包组成。腰带由两个方形线圈和HaBand组成。我们使用HaBand来重新路由通过人体表面的信号,并使用方形线圈尽可能集中信号。然后,隐藏在背包中的线圈用于将电磁力传递到更远的距离。当攻击者和受害者在商店的同一条生产线上站立时,攻击者可以佩带腰带和背包,攻击她身后的人的NFC卡。