纸质二维码也能隔空篡改:百米之外无痕攻击,秒变恶意网站入口

隐形激光攻击:远距离篡改二维码的新威胁,
克雷西 发自 凹非寺
量子位 | 公众号 QbitAI

现在,打印好的纸质二维码,可能也不安全了!

通过激光照射,攻击者在一百米开外就能分分钟实施篡改。

更可怕的是,这种激光用肉眼根本无法察觉,正常的二维码在无意之间就有可能变成恶意网站的入口。

ed5bcec11480cd88ec03203fe337a76a.png

最近,日本东海大学的研究人员开发出一种远距离、超隐蔽的二维码篡改方式。

不仅攻击过程不可见,被攻击后的二维码用肉眼看也和正常情况没有任何区别。

对普通用户和设备来说,这种攻击几乎无法防范。

那么,研究人员是如何在无形之中“偷天换日”的呢?

激光照射改变信息点“颜色”

要想解释这个问题,我们需要先了解一下二维码识读的原理。

(本文中的“二维码”均是指我们最常见的QR型二维码)

我们常见的二维码,主要由定位点、格式及掩码信息区、信息区和纠错区组成。

以下图中的2(尺寸)M(纠错等级)型二维码为例,它由25×25个格点组成,其中左上、左下、右下的7×7区域为定位点。

下图中D1~D28和E1~E16分别为数据字段和纠错字段,蓝色区域则为格式及掩码信息区。

a152410ba94338bbca95a3c1cd43892b.png

其中数据字段是由原始文本先经过分组,然后用一定的处理方式转换为二进制字符串,在二维码中用黑色和白色分别表示1和0

纠错字段,顾名思义就是为了避免在生成和扫描过程中产生误差而设计的,它由数据字段根据里德-所罗门算法生成,根据纠错等级的不同长度也有所区别。

格式及掩码信息区则储存了二维码的编码(明文到二进制串)方式,以及掩码操作。

掩码是为了避免出现某些特定图案影响扫描结果,按照一定规律对原始点阵进行的变换操作,操作方式存储在了掩码信息区域。

读取过程则是先捕捉定位点,然后对图像进行校正和降噪处理,接着判断格式及掩码区的位置并读取,以获知数据字段的解码方式。

本实验中,研究者通过逐步覆盖二维码信息的方法,构造出一个介于两个二维码之间的混合中间体

e2df736bb3b25ad1149511b98eaca041.png

这个中间体包含了一个关键色块,它的颜色决定了真正被读取出的二维码究竟是哪一个。

13f0b2f7908d2569bf99ae98db464aff.png

研究人员利用肉眼不可见的激光对这个色块进行照射,就能决定摄像头的识别结果——

经过照射之后,虽然肉眼看不出区别,但在摄像头的视角下原本是黑色的模块就会被识别为白色

2464ce1f0bf6aae9e2474a6ba28cc772.png

下图对比了人眼和摄像头可以识别的波长范围:在暗处,波长超过600纳米的光几乎无法被人眼识别,即使在亮处,也无法看到超过700纳米的光。

而摄像头在700纳米的波长下依然有50%以上的捕捉率。

f1abe3dc82a2defe4c2b6304a3c2e87e.png

本实验中,研究人员使用了10毫瓦的635纳米(红色可见光)和785纳米(红外线)的光分别在不同距离对二维码进行了照射。

其中0~50米为真实距离,100米距离则通过镜面反射实现。

0825bc80719c6450fb0ea438d02f5bea.png

结果显示,在10~40米处,两种波长的光都能成功将二维码指向的链接改成虚假网址;

在50米处,可见光处理的二维码出现了两个网址都能扫出的现象,但红外光依然能成功篡改;

而在100米的位置,两种波长的光线照射后的二维码都出现了交替结果。

c952cc2c5f47cdfce880499eaa73adf9.png

未来,研究者还计划把攻击距离增加到1公里。

不过,这个实验中需要使用透镜对激光进行聚焦,进而确定篡改信息点的位置。

如果光路中的气流扰动比较明显,则会对这一过程产生影响,因此长距离攻击存在更多不确定因素。

也正是这一特点,为防御这种攻击提供了可能——只要时不时扰动二维码面前的气流,激光就找不到位置了。

对此,有网友调侃到,不如在二维码前面扇扇子,把激光“赶走”。

22999ebda03c42058032baeb62903edc.png

除了气流扰动的方式,作者在论文中还提到,二维码拥有者可以使用防篡改材料来避免攻击。

One More Thing

除了篡改二维码,还有用激光照射交通标志从而干扰自动驾驶系统的案例。

这种激光同样是肉眼不可见,但可以被摄像头识别,从而造成误导。

相关研究表明,在室内环境下,这种攻击对停车标志和限速标志的攻击成功率几乎是百分之百。

46cd3953398486e6f49f71141a77a022.png

论文地址(日语):
http://id.nii.ac.jp/1001/00228597/

—  —

点这里👇关注我,记得标星哦~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值