从地铁到飞机,黑客究竟能用WiFi干哪些事儿?
从地铁和一张公交卡开始
适逢 60 周年国庆,北京拥有了第一条带有 Wi-Fi 网络的地铁线路。并非提供给乘客、而是列车通信使用的无线局域网,会不会存在安全漏洞?乘坐地铁的杨卿尝试用笔记本电脑破解,结果成功进入了地铁线路无线内网。如果在内网中进行进一步的网络扫描、渗透攻击,地铁的正常通信将被扰乱甚至连列车运行都会被恶意控制。意识到问题严重性的杨卿立刻写下漏洞报告转交相关的通报渠道,很快漏洞就被修复。
无线网络研究了好几年,公交卡成了他新兴趣。与地铁相比,公交卡实在微不足道,但同属无线通信研究范围之一的 NFC(近场通信)技术最广泛的应用方式正是这张卡片。薄薄的公交卡虽没有电源,但其自身就是一个能够处理、计算、存储并能交换数据的终端设备。
如果你将 IC 卡一层一层地剥开,会发现几条互不相交的金属细线围成的矩形线圈,它既是传送信息的天线,也是接触读卡器发射的电磁波时产生电能的装置。一块大约 10 平方毫米的矩形芯片是卡片的核心所在,封装其中的 MPU 负责将接收到的信号进行解密、分析、加密,FLASH ROM 则负责存储加密数据。
一卡通的芯片位于卡片右上角,图片来自网络
通过破解加密算法找到密钥、不断测试找到不同存储区中数据的含义、再修改其中的数据,杨卿和他的同事们最终能将过期的公交卡变成正常使用的卡片、普通卡能变为学生卡或工作人员卡,甚至金额也能被随意修改。
漏洞被找到,可已经发放的几千万张公交卡怎么办?和硬件迭代类似,新卡片不再有漏洞,旧卡片也会慢慢退出自己的舞台。
接下来是汽车、飞机和 GPS
在国内的大型安全会议上,杨卿的 Unicorn 团队成员常常会现场演示用一台电脑打开 BBA(宝马、奔驰、奥迪)及 Smart 等车的车门。
其实也没有多复杂,特别是几年前破解汽车很简单,因为大部分厂商都使用固定码——车和车钥匙都存储一串不改变的密码,两者一致时车门就会打开。只要用无线电设备抓取车钥匙的信号再重放,就像新配了一把门钥匙,车门就能反复开关。
杨卿演示如何用手机打开奥迪车门
经历了白帽子的不断挑刺和算法的演进,现在的汽车钥匙往往使用滚动码——一个周期很长的伪随机码。每开一次车门钥匙和车存储的密码都会一同向前滚动一格,两者一致时车门才会打开——即便如此仍有取巧的方式。比如离车在较远的地方按下车钥匙,同时用设备接收信号,走到尚未收到过密码的车辆前重放这段信号就能打开车门。
只能打开一次不算真正的破解?想要多次打开车门?最快的办法是分析解码控制器的功耗,结合 KeeLoq 算法推导出控制器中的密钥以及算法,只要几秒钟就能破解车门密码。但接触并拆解车钥匙、测量控制器功耗、调整算法,每一件都不是容易事。
或者在空中制造一架不存在的飞机?
ADS-B 是一个集通信与监视于一体的信息系统,飞机正是依靠这一通讯协议实现自动巡航。如果在自动巡航的飞机前方伪造出只有飞机或塔台才能发出信号,这架飞机就会误以为周围有另一架飞机(事实上不存在)从而改变自己的飞行判断,下降高度或做出其他紧急处理。
现在杨卿专注的是 GPS 信号的伪造和欺骗。
GPS 通过同时出现在空中的 4 颗卫星确定设备位置,来自网络
2011 年 12 月 4 日,美国一架 RQ-170 无人机飞行至伊朗领空,伊朗军方通过 GPS 欺骗让这架飞机降落在伊朗东北部的 Kashmar,这架完好的无人机使得伊朗军方获取了不少技术和军事机密。
可 GPS 不是天上 24 颗卫星来回运转,怎么会被欺骗?
通过测量与空中同时出现的 4 颗卫星的距离,GPS 就能确定接收设备的位置。但 GPS 卫星的广播信号从太空抵达地面时已变得非常微弱,如果接收设备旁有一个模拟器发出和 GPS 一样的信号假装自己是卫星,强度更高的信号就会被当成「真的」GPS 信号。
原本攻击者想要拥有伪造 GPS 信号的设备非常困难,信号发射器的成本往往在千万元、使用范围也仅是用于科研、生产等测试。近几年软件无线电技术的兴起加上安全联盟研究的代码和算法,使得几百美元的设备也能制造出 GPS 信号。
不仅如此,GPS 技术的广泛使用使得伪造 GPS 信号带来更广泛的威胁。让一辆在海淀区行驶的汽车以为自己正在西藏、跟踪车辆不断向其发射伪 GPS 信号引导它开向预先设置好的地点,或者在某一路段制造大量 GPS 信号,让数据中心误以为此处拥堵将车流疏导到更拥堵的路段从而制造混乱都有可能。
「要毁灭一个超级大国无需枪炮,你需要的只是想象力
- 大众研究人员发现利用RFID应答器芯片的汽车系统缺陷(08-20)
- 路由器有"后门" 黑客现场演示窃取网银密码(10-16)
- samsung pay存漏洞!黑客称盗取简单(08-08)
- 黑客下一个攻击目标:智能家居(11-07)
- LiFi也不安全?黑客又盯上了新目标(11-09)
- 全球遭受攻击的物联网设备呈指数级增长(03-20)