汽车导航 汽车导航
Ctrl+D收藏汽车导航
首页 > 汽车资讯 > 正文

车联网安全漏洞挖掘

作者:

时间:1900/1/1 0:00:00

小米公司于2010年4月正式成立。是一家专注于高端智能手机、互联网、汽车智能驾驶网络、智能家居生态链建设的创新型科技企业。小米公司以“让每个人都享受科技的乐趣”为公司愿景,应用互联网发展模式开发产品,坚持开放、非独占、不排他的合作策略,与行业伙伴共同推进智能生态链建设。

小米科技车联网高级安全专家尹以“挖掘车联网安全漏洞”为主题,从固件提取、隐藏调试分析、常见漏洞挖掘等方面入手。以下是发言摘要:

Discovery, Remote, Tesla

小米科技车联网高级安全专家尹小源

今天演讲的题目是车联网安全的漏洞挖掘,这也是我目前在小米工作的一部分。我今天主要讲四个部分:1。个人介绍;2.讲解车床固件的提取方法;3.分析调试模式的方法;4.机车端漏洞挖掘方法。目前在小米科技做车联网方面的研究,有八年行业相关工作经验,主要在Web、APP、lOT方面,有多年甲方车联网安全经验,目前在车联网安全体系建设、智能网联汽车漏洞挖掘方面有深入研究。

车辆固件提取

提取车床固件的第一步是信息收集。首先,拆卸设备,收集并存储芯片型号、封装信息和数据表。其中芯片型号如SK、SanDisk、Kioxia等。与OIC、TSOP、BGA等封装在一起。重要信息包括闪存的起始位置和大小。接下来就是根据封装选择合适的焊接工具和编程器,如RT809H、easyJTAG、Cyert 7500、Cyert 7500等,价格昂贵,很少使用。这一步主要是根据套餐选择合适的程序员和程序员库。接下来,我们需要解包固件并反转固件。这部分可以分析固件逻辑,是否存在可以利用的算法漏洞,最终验证安全漏洞。

现在总结一下提取固件的流程和技术要点:首先用高温胶带固定芯片。为了保证其他芯片不受高温影响,可能需要用高温胶带保护其他芯片。接下来要做好预热工作,来回转动热风加热均匀,让芯片完全脱离焊盘。在具体操作中需要注意的点有很多,尤其是需要多加练习。比如第一次没有掌握好温度,很容易损坏芯片,所以这是我们在提取车床固件的硬件方面最需要掌握的技术。接下来是软件层面。首先我们需要找到对应格式的文件系统,通过dd命令提取文件系统并验证。汽车启动的配置文件、脚本、配置信息、应用代码都在里面,是固件逆向需要的最重要的文件。

隐藏调试分析

第二部分介绍了隐藏调试,可以简单理解为官方的“后门”。通常是为了发现问题或解决问题(售后)而预设的功能模块,用于调试和分析。在维护期间,工作人员通常点击特定位置,并通过特定窗口输入密码,以进入工程模式。这些密码会被保密,一方面防止机主误操作,另一方面降低黑客和改装厂篡改系统的风险。工程模式是检测汽车故障的有效方法。我们可以通过前面的方法提取固件,通过固件反过来就可以得到“密码”。

此外,我们还可以通过搜索引擎、汽车论坛、汽车群来搜索“暗号”。这里有一个真实的案例。我们通过搜索引擎直接从相应的论坛获取调试代码,第二个通过车组,第三个通过反方向获取调试代码。最后一种是通过咸鱼购买相应的车机来获取调试代码。

常见漏洞挖掘

最后一部分是常见漏洞挖掘。以特斯拉的汽车漏洞挖掘为例:漏洞挖掘者首先拆解硬件,进一步分析芯片和调试端口,然后进行检测,最后从以太网端口固件进入并分析其系统。通过汽车和机器的逆向,漏洞挖掘者发现可以在固件代码中植入远程指令(固件刷机),通过这些指令达到控制汽车和机器的目的。比较有影响的案例是国外黑客查理·米勒通过远程利用直接让行驶中的汽车停下来,导致车祸。

Discovery, Remote, Tesla

图片来源:小米官网

这是一个真实的汽车机器漏洞挖掘。第一个问题是芯片的默认密码。通过硬件拆解,对车载AG35芯片进行分析。通过去掉AG35芯片的外壳,找到USB口并分析趋势,连接飞线或HSD接口,输入默认密码,从而直接……进入AG35系统。另一个是CPU。大多数CPU都有调试接口。我们可以通过工具直接进入系统,做进一步的分析。有时候这些调试端口进不去系统,我们可以通过故障注入得到一个外壳。

目前,车载以太网广泛应用于车载通信。我们可以分析一下车载中是否有车载以太网芯片。通过分析接口方向,一般是车载以太网双股线。通过车载以太网到RJ45设备,就可以进入车载内网,剩下的就是内网渗透和信息采集的工作了。这其实和web渗透、车载渗透的原理是一样的。

以下是我们到目前为止发现的常见漏洞。首先是港口服务。在我们使用调试代码进入机车系统后,我们可以通过一些命令来查看当前运行的服务。如果发现adbd服务没有运行,可以通过打包系统镜像加入adbd服务或者修改系统启动参数启动adb服务来启动adbd方法。类似的还有一些更新脚本,OTA进程,ftp服务等。是我们最关心的问题。

二是二进制应用,主要利用命令注入和堆栈溢出漏洞。第三是MQTT漏洞。目前MQTT在车端应用广泛,主要用于向车端推送新闻等信息、天气、交通信息,或者向云端推送车辆状态信息,如位置、车辆状态信息等。比如我们可以通过MQTT远程控制内部空调。我们在实际测试中发现,某款车型有很多用户信息,包括手机号、车牌号、位置、轨迹、用户令牌等重要信息,都是通过MQTT泄露的。我们可以用这些信息做很多有趣的事情,这里就不多说了。

第四是OTA。现在很多开发者会直接Google代码库,甚至把官方公开的代码直接复制到自己的实际应用代码中。比如直接复制AES算法的公钥和私钥并在自己的代码中使用,甚至复制一些AES算法的私钥和key以及iv。在实际分析中,我们直接把一些车的公钥或者钥匙复制到网站上进行搜索,发现通过搜索公钥直接获取私钥信息是一个很大的问题。在这里,我要提醒开发者,写代码一定要有安全规定。如果参考了别人的代码,不要不做任何改动就直接拿来用,否则会有很大问题。

Discovery, Remote, Tesla

图片来源:小米科技尹小源

这是我们在实际测试中结合车机和APP漏洞利用链的一个案例:反向APP主要是反向登录和加密算法,一般的APP都是有壳的,所以我们需要在有壳之后进行反向。这里的APP主要是一个控制汽车的APP。我们先通过逆向源代码构造了一些控制汽车的代码,但实际测试并不成功,因为没有控制汽车的有效账号。

然后我们通过之前的MQTT找到一些可用的手机号,通过手机号复用,挖掘应用层面的漏洞,然后去看车控指令是怎么构造的。最后我们发现车是通过云app远程控制的。于是,我们进一步反推了其中使用的供应商协议的逻辑漏洞,最终通过篡改部分代码,实现了通过云APP对汽车的控制。

以上利用链条比较完善。首先,APP端存在漏洞。虽然做了一些加密,增加了源代码层面,但最终我们还是通过脱壳,以及应用层和网络层的分析,实现了对汽车的控制。另外,机车的调试端也没有严格保护。通过前面的方法,提取固件,逆向分析。最后发现其机车控制受某供应商协议控制,从而找到供应商的漏洞。补充一点,本案例没有使用D-bus系统进行远程机车控制。

(以上内容来自……资深安全专家尹发表的“车联网中的漏洞挖掘”主题演讲小米科技的车联网,在2022年8月26日由Gaspar主办的2022中国汽车信息安全与功能安全大会上。)小米公司于2010年4月正式成立。是一家专注于高端智能手机、互联网、汽车智能驾驶网络、智能家居生态链建设的创新型科技企业。小米公司以“让每个人都享受科技的乐趣”为公司愿景,应用互联网发展模式开发产品,坚持开放、非独占、不排他的合作策略,与行业伙伴共同推进智能生态链建设。

小米科技车联网高级安全专家尹以“挖掘车联网安全漏洞”为主题,从固件提取、隐藏调试分析、常见漏洞挖掘等方面入手。以下是发言摘要:

Discovery, Remote, Tesla

小米科技车联网高级安全专家尹小源

今天演讲的题目是车联网安全的漏洞挖掘,这也是我目前在小米工作的一部分。我今天主要讲四个部分:1。个人介绍;2.讲解车床固件的提取方法;3.分析调试模式的方法;4.机车端漏洞挖掘方法。目前在小米科技做车联网方面的研究,有八年行业相关工作经验,主要在Web、APP、lOT方面,有多年甲方车联网安全经验,目前在车联网安全体系建设、智能网联汽车漏洞挖掘方面有深入研究。

车辆固件提取

提取车床固件的第一步是信息收集。首先,拆卸设备,收集并存储芯片型号、封装信息和数据表。其中芯片型号如SK、SanDisk、Kioxia等。与OIC、TSOP、BGA等封装在一起。重要信息包括闪存的起始位置和大小。接下来就是根据封装选择合适的焊接工具和编程器,如RT809H、easyJTAG、Cyert 7500、Cyert 7500等,价格昂贵,很少使用。这一步主要是根据套餐选择合适的程序员和程序员库。接下来,我们需要解包固件并反转固件。这部分可以分析固件逻辑,是否存在可以利用的算法漏洞,最终验证安全漏洞。

现在总结一下提取固件的流程和技术要点:首先用高温胶带固定芯片。为了保证其他芯片不受高温影响,可能需要用高温胶带保护其他芯片。接下来要做好预热工作,来回转动热风加热均匀,让芯片完全脱离焊盘。在具体操作中需要注意的点有很多,尤其是需要多加练习。比如第一次没有掌握好温度,很容易损坏芯片,所以这是我们在提取车床固件的硬件方面最需要掌握的技术。接下来是软件层面。首先我们需要找到对应格式的文件系统,通过dd命令提取文件系统并验证。汽车启动的配置文件、脚本、配置信息、应用代码都在里面,是固件逆向需要的最重要的文件。

隐藏调试分析

第二部分介绍了隐藏调试,可以简单理解为官方的“后门”。通常是为了发现问题或解决问题(售后)而预设的功能模块,用于调试和分析。在维护期间,工作人员通常点击特定位置,并通过特定窗口输入密码,以进入工程模式。这些密码会被保密,一方面防止机主误操作,另一方面降低黑客和改装厂篡改系统的风险。工程模式是检测汽车故障的有效方法。我们可以通过前面的方法提取固件,通过固件反过来就可以得到“密码”。

此外,我们还可以通过搜索引擎、汽车论坛、汽车群来搜索“暗号”。这里有一个真实的案例。我们通过搜索引擎直接从相应的论坛获取调试代码,第二个通过车组,第三个通过反方向获取调试代码。最后一种是通过咸鱼购买相应的车机来获取调试代码。

常见漏洞挖掘

最后一部分是常见漏洞挖掘。以特斯拉的汽车漏洞挖掘为例:漏洞挖掘者首先拆解硬件,进一步分析芯片和调试端口,然后进行检测,最后从以太网端口固件进入并分析其系统。通过汽车和机器的逆向,漏洞挖掘者发现可以在固件代码中植入远程指令(固件刷机),通过这些指令达到控制汽车和机器的目的。比较有影响的案例是国外黑客查理·米勒通过远程利用直接让行驶中的汽车停下来,导致车祸。

Discovery, Remote, Tesla

图片来源:小米官网

这是一个真实的汽车机器漏洞挖掘。第一个问题是芯片的默认密码。通过硬件拆解,对车载AG35芯片进行分析。通过去掉AG35芯片的外壳,找到USB口并分析趋势,连接飞线或HSD接口,输入默认密码,从而直接……进入AG35系统。另一个是CPU。大多数CPU都有调试接口。我们可以通过工具直接进入系统,做进一步的分析。有时候这些调试端口进不去系统,我们可以通过故障注入得到一个外壳。

目前,车载以太网广泛应用于车载通信。我们可以分析一下车载中是否有车载以太网芯片。通过分析接口方向,一般是车载以太网双股线。通过车载以太网到RJ45设备,就可以进入车载内网,剩下的就是内网渗透和信息采集的工作了。这其实和web渗透、车载渗透的原理是一样的。

以下是我们到目前为止发现的常见漏洞。首先是港口服务。在我们使用调试代码进入机车系统后,我们可以通过一些命令来查看当前运行的服务。如果发现adbd服务没有运行,可以通过打包系统镜像加入adbd服务或者修改系统启动参数启动adb服务来启动adbd方法。类似的还有一些更新脚本,OTA进程,ftp服务等。是我们最关心的问题。

二是二进制应用,主要利用命令注入和堆栈溢出漏洞。第三是MQTT漏洞。目前MQTT在车端应用广泛,主要用于向车端推送新闻等信息、天气、交通信息,或者向云端推送车辆状态信息,如位置、车辆状态信息等。比如我们可以通过MQTT远程控制内部空调。我们在实际测试中发现,某款车型有很多用户信息,包括手机号、车牌号、位置、轨迹、用户令牌等重要信息,都是通过MQTT泄露的。我们可以用这些信息做很多有趣的事情,这里就不多说了。

第四是OTA。现在很多开发者会直接Google代码库,甚至把官方公开的代码直接复制到自己的实际应用代码中。比如直接复制AES算法的公钥和私钥并在自己的代码中使用,甚至复制一些AES算法的私钥和key以及iv。在实际分析中,我们直接把一些车的公钥或者钥匙复制到网站上进行搜索,发现通过搜索公钥直接获取私钥信息是一个很大的问题。在这里,我要提醒开发者,写代码一定要有安全规定。如果参考了别人的代码,不要不做任何改动就直接拿来用,否则会有很大问题。

Discovery, Remote, Tesla

图片来源:小米科技尹小源

这是我们在实际测试中结合车机和APP漏洞利用链的一个案例:反向APP主要是反向登录和加密算法,一般的APP都是有壳的,所以我们需要在有壳之后进行反向。这里的APP主要是一个控制汽车的APP。我们先通过逆向源代码构造了一些控制汽车的代码,但实际测试并不成功,因为没有控制汽车的有效账号。

然后我们通过之前的MQTT找到一些可用的手机号,通过手机号复用,挖掘应用层面的漏洞,然后去看车控指令是怎么构造的。最后我们发现车是通过云app远程控制的。于是,我们进一步反推了其中使用的供应商协议的逻辑漏洞,最终通过篡改部分代码,实现了通过云APP对汽车的控制。

以上利用链条比较完善。首先,APP端存在漏洞。虽然做了一些加密,增加了源代码层面,但最终我们还是通过脱壳,以及应用层和网络层的分析,实现了对汽车的控制。另外,机车的调试端也没有严格保护。通过前面的方法,提取固件,逆向分析。最后发现其机车控制受某供应商协议控制,从而找到供应商的漏洞。补充一点,本案例没有使用D-bus系统进行远程机车控制。

(以上内容来自……资深安全专家尹发表的“车联网中的漏洞挖掘”主题演讲小米科技的车联网,在2022年8月26日由Gaspar主办的2022中国汽车信息安全与功能安全大会上。)

标签:发现远程特斯拉

汽车资讯热门资讯
爱驰全新车型亮相工信部第360批《道路机动车辆生产企业及产品公

分享爱驰U5、U6共5个版型新车亮相工信部公布的第360批《道路机动车辆生产企业及产品公告》日前,

1900/1/1 0:00:00
我国牵头的自动驾驶测试场景评价国际标准正式立项

9月12日,我国牵头在国际标准化组织(ISO)框架下提出的《道路车辆自动驾驶系统测试场景场景评价与测试用例生成》(ISO34505)国际标准项目,经投票表决后正式获得立项,

1900/1/1 0:00:00
福特调整管理层,加强供应链和电动汽车部门

盖世汽车讯据外媒报道,9月22日,福特汽车公司宣布进行管理层重组,并精简其产品开发和供应链部门。几天前,福特汽车公司曾表示,由于可能缺少某些零部件,其库存中有高达45万辆的汽车无法交付。

1900/1/1 0:00:00
Seoul Robotics推出逆行驾驶检测系统 提高驾驶安全性

盖世汽车讯据外媒报道,

1900/1/1 0:00:00
自动驾驶安全实践挑战及思考

上海磐时是一家专门从事汽车功能安全、预期功能安全、信息安全相关的培训、流程咨询、产品咨询、工程服务的专业公司。

1900/1/1 0:00:00