因此,您可以将整辆车变成视频游戏控制器
快速阅读: 《The Register》消息,网络安全团队将一辆雷诺Clio汽车改装为游戏控制器,通过CAN总线数据控制SuperTuxKart游戏。他们用Python映射刹车、转向和加速信号,但喇叭等按钮无法使用。项目展示了汽车网络安全的实践教学。
网络安全爱好者找到一种方法,使家用赛车模拟器更加真实,他们将一辆真正的汽车变成了游戏控制器。
英国的渗透测试合作伙伴(PTP)有一辆内部使用的汽车,用于各种汽车安全研究。他们认为,从PTP总部附近一家经销商那里购买的2016年雷诺Clio,可以作为一种有趣的方式,向有志于成为安全专业人士的人展示如何操作汽车数据。
控制器局域网(CAN)数据通过电子控制单元(ECU)在车辆和其他设备之间传输,用于发出不同的操作信号,如刹车和加速。因此,任何希望以汽车网络安全为职业的人都必须对如何收集和操作CAN数据有深入的了解。谁不喜欢寓教于乐的学习方式呢?
通过隔离那些用于启动Clio刹车、转向和加速的CAN数据信号,PTP专家能够使用Python将这些控制映射到SuperTuxKart,一个类似马里奥赛车的开源游戏。
常驻硬件黑客大卫·洛奇表示,他在尝试解码数据之前,先用廉价的电线连接器处理了CAN线,并确定了Clio功能发送哪些消息应该被隔离。这需要一些耐心地查阅文档,使用开源的Clio代码解密工具,并简单地踩下踏板和转动方向盘,看看哪些仲裁标识符对应需要映射的控制。
洛奇写道:“一旦你正确设置了电气状态并知道总线速度(我使用的是Kvaser Leaf Pro),标准的CAN数据包包含11位仲裁标识符、8字节的数据,以及一些标志和元数据。由于CAN数据包非常小(8字节的有效载荷),并且只有少量的仲裁标识符(0x800,即十进制中的2048),较小的仲裁标识符具有更高的优先级,通常信息会下降到数据包内的特定位。几种CAN数据库格式将数据包视为一连串的位,而不是使用字节,但我习惯用字节来思考。”
研究人员远程入侵用于管理安全飞机起降的设备
费雪公司推出的蓝牙版幼儿园电话存在成人隐私漏洞
渗透测试合作伙伴:波音747接收通过3.5英寸软盘传输的关键软件更新
运输如此不安全,我们甚至可以开着钻井平台逃跑,渗透测试合作伙伴表示
在获得将CAN信号转换为视频游戏控制器输入的数据后,洛奇发现简单的Python输入设备并不够用。方向盘频繁按压导致游戏中的响应延迟。他决定重构CAN总线,将其从注入按键改为使用CAN数据更新状态机。
刹车很容易,因为这些基本上是开/关功能,但转向却引起了一些问题。这主要是因为Clio并没有移动,这意味着那些试图在游戏中像在真实赛道上一样转向的人会在展览地板上磨损轮胎。将转向灵敏度调低在一定程度上解决了这个问题。
洛奇无法将Clio上的按钮映射到游戏中用于香蕉和加速道具,他梦想着用Clio的喇叭来发射它们,但该按钮不通过CAN数据传输信号。
由于时间有限,他没有连接汽车的速度表,但他说如果时间更充裕的话,可以通过向Clio的仪表盘发送信息来实现。
摆脱耗电电池、频繁系统崩溃以及Clio发动机在五分钟后自动关闭的问题,团队成功进行了几次良好的演示,你可以在该项目的视频中短暂看到。
(以上内容均由Ai生成)