【发布时间】:2019-06-05 19:23:17
【问题描述】:
我正在尝试检测对 CAN 总线配置的入侵。为此,我想尝试从 CAN 到 IP (UDP) 的协议转换,以便使用 snort。我真的不知道从哪里开始,因为我根本没有看到任何关于 CAN 总线协议转换的内容。甚至可能吗?有人试过吗?
我基本上使用树莓派和几个 Arduino 来获取温度读数(来自恒温器)并控制热/冷风扇以调节温度。我知道这没什么好做的,但正如我所说,我正处于计划此协议翻译的开始阶段。
【问题讨论】:
-
大多数所谓的“CAN 总线入侵”是 1) 不称职的设计者允许通过 Internet 更新关键的 MCU 固件 2) 黑客完全用自己的程序替换所有固件 3) CAN 总线恰好连接到单片机。实际上没有人远程“破解”CAN总线本身。或者您只是想检测总线上的未知 CAN 帧?
-
@Lundin 感谢您的意见...我以为我读到车辆 CAN 总线可以被远程入侵?无论如何,基本上我想监控 CAN 流量......我想知道是否有人试图入侵。例如,假设我有一辆自动驾驶汽车(为了争论,忽略任何与普通车辆中当前 CAN 操作不相符的自动驾驶汽车技术)......假设我想监控这辆车,确保所有操作都按计划进行。有人跳进车里插上电源。有什么方法可以用 SNORT 监控 CAN,这样我就可以停止操作。
-
还是太宽泛了。如果有人将物理插入 CAN 总线,他们将发送总线上已经存在的帧,但数据不同。您可以检测到的唯一方法是您是否对帧有严格的实时要求。然后,“物理黑客”还必须匹配帧时序,这在 PC 笔记本电脑上很难做到 - 基本上这取决于他们的 CAN-to-USB 网关的质量。除此之外,除了加密或应用层协议中的时间戳之外,没有其他办法。
标签: raspberry-pi ip network-protocols can-bus snort