[Hack翻译]汽车黑客攻击,第三部分:汽车黑客攻击的Metasploit

495 阅读5分钟

原文地址:www.hackers-arise.com/post/2017/1…

原文作者:

发布时间:2017年10月19日

汽车黑客是黑客/渗透测试领域的前沿。随着自动驾驶汽车在不久的将来到来,这一领域将变得更加重要。关于这个领域的一些背景,请阅读我关于CAN协议SocketCAN的文章,以更好地了解所涉及的技术。

作为汽车黑客技术快速发展的一部分,我最喜欢的黑客工具之一Metasploit已经开发了连接汽车的能力和模块(关于Metasploit的更多信息,请查看我的系列文章 "Metasploit基础知识 "和我即将推出的Metasploit功夫课程,其中包括用Metasploit入侵汽车)。

image.png

如果你的Metasploit版本没有硬件模块,你可以随时输入msfupdate来获取最新的版本和模块。值得注意的是,Metasploit在这个领域的努力才刚刚开始,该框架在汽车黑客方面的能力相当有限,但我们期望在不久的将来有更多的汽车黑客模块。我们在这里要解决的重要任务是 "我如何将我的Metasploit框架与我的汽车网络联系起来"?

image.png

如果你读过我以前关于汽车黑客的文章,你就会明白,汽车的主流协议是CAN,而且是串行协议。我们在这里要做的是通过一个串行接口连接到汽车的CAN协议。从那里,我们可以用Metasploit中的几个预建模块在汽车网络上发送恶意流量。

步骤#1 获取OBD II连接器硬件

让我们首先获得一个连接到汽车的ODC II连接器的设备。市场上有几个,但我们将使用一个相对便宜的蓝牙ODB II迷你接口。我在亚马逊上购买了一个,价格不到12美元。它带有ELM327芯片组,可以有效地与汽车的CAN网络进行通信,并通过蓝牙与你的Metasploit系统进行连接,所以你需要有一台内置蓝牙的电脑,或者购买一个蓝牙USB适配器。关于蓝牙协议的更多信息,请阅读我的《蓝牙黑客,第二部分:蓝牙侦察》一文。

要订购这个蓝牙ELM327适配器,请点击下面的链接。

www.amazon.com/?tag=hacker…

第2步:安装串行端口

现在我们的硬件已经到位,我们需要设置必要的软件。 记住,CAN协议是一个串行协议,所以我们需要安装ruby gem "serialport",以便 "说 "出串行。

kali > gem install serialport

image.png

第三步:连接到ELM 327上的蓝牙

接下来,我们需要连接我们的蓝牙适配器,与我们车上的ELM 327适配器对话。这里可能值得注意的是,你需要把ELM 327放在汽车的ODB II连接器中,并打开汽车中的公用设施。

为了连接到ELM 327设备,我们需要它的MAC地址。我们可以使用内置的实用程序hcitool来扫描蓝牙设备并为我们提供MAC地址。

kali > hcitool scan

image.png

如你所见,我的MAC地址是00:19:6D:36:4A:9D。你的会有所不同。

现在,我们需要使用蓝牙适配器的MAC地址将其连接到ELM 327。确保你在双引号之间使用MAC地址,像下面这样。

kali > rfcomm connect /dev/rfcomm1 "00:19:6D:36:4A:9D"

第三步:运行ELM 327 Relay程序

下一步是运行ELM 327继电器,使Metasploit与ELM 327芯片组通信。你可以通过进入/usr/share/metasploit-framework/tools/hardware找到它。

kali > cd /usr/share/metasploit-framework/tools/hardware

kali > ls -l

image.png

在我们运行它之前,让我们看一下它的帮助屏幕。

kali > ruby elm327_relay.rb -h

image.png

正如你所看到的,它基本上只需要两个参数;速度(默认是115200)和串行设备(默认是/dev/ttyUSB0)。要确定使用哪个串行设备,可以检查Linux工具dmesg(显示信息),grep查找 "tty"。在我的例子中,那是ttyS0。

现在,用串口设备运行elm327继电器,并将速度保持在默认值,如下图所示。

kali >ruby elm327_relay.rb -s /dev/ttyS0

第四步:启动Metasploit

现在我们已经配置了Kali Linux来与ELM 327设备对话,我们需要创建一个硬件桥来连接Metasploit。记住,Metasploit是通过TCP/IP通信的。我们现在需要它通过串行端口与汽车上的CAN协议进行通信。

首先,启动Metasploit。

kali > msfconsole

然后,搜索汽车模块

kali > search automotive

image.png

正如你所看到的,目前真的只有几个汽车模块,而且它们的能力是有限的。让我们祈祷尽快有更多的Metasploit汽车模块。

我们需要使用auxiliary/client/hwbridge/connect模块。我们可以通过输入来加载它。

msf >use auxiliary/client/hwbridge/connect

image.png

我们可以在加载该模块后输入info来获得更多关于该模块的信息。

kali > info

image.png

最后,让我们执行该模块来创建我们的硬件桥。

msf > exploit

第五步:使用Metasploit汽车模块

现在我们已经在Metasploit和车辆的CAN协议之间建立了硬件桥,我们可以开始使用Metasploit的汽车黑客模块。

image.png

例如,如果我们想检索车辆的信息,我们可以使用post/hardware/automotive/getvinfo。

msf > use post/hardware/automotive/getvinfo

image.png

当我们为这个模块输入信息时,我们可以看到这个模块将查询和收集所有车辆的DTC(诊断故障代码)和其他信息,如速度、冷却剂温度、VIN,甚至清除DTC。

现在,我们可以将我们的Linux系统和Metasploit框架直接连接到汽车的网络上,以便直接与汽车的设备进行通信

寻找更多的汽车黑客教程和我即将推出的汽车黑客课程!


www.deepl.com 翻译