车联网安全基础知识之大众J949(OCU/TBOX)

车联网安全基础知识之大众J949(OCU/TBOX)

OCU(Online Connectivity Unit)既紧急呼叫模块和通信单元。其他车上的同类模块在国内通常称之为 TBOX(Telematics BOX)。国外多称之为 TCU(Telematics Control Unit)。

OCU 具有一个固定的内置SIM卡, 用于登录移动网络。 它的作用是发送和接收 Car-Net e-Remote 服务的数据和命令。 通过无线网络实现永久的互联网连接, 确保后台和车辆之间的数据传输, 即使在关闭点火开关后也可以接收、 处理和执行命令。OCU 是车联网系统系统中最重要的组件之一。

主要功能

OCU 的功能和其他 TBOX 功能相似,详情见 车联网安全基础知识之TBOX主要功能

4 代 OCU 硬件分析

第一代 OCU1 出现在 2012 年,现已经历四次迭代,当前最新版本第四代 OCU4。OCU 的供应商为 LG,第一代在越南制造,第三代在中国或越南制造。第四代由越南制造。OCU 从第 3 代起开始逐步支持车载以太网。

OCU 安装在仪表板后面,附带备用电池和备用天线。外接有蜂窝网络天线和 GNSS 定位天线,部分版本还有 Wi-Fi 天线。增加备用电池、内置扬声器和内置通讯天线来增强 OCU 的健壮性,避免出现整车断电无法拨打 eCall 的情况。主连接器中,有电源、调试接口、CAN、以太网、音视频等接口。

image-20210727235612456

对外通信方面,OCU 使用内置 eSIM 卡,支持的频段在不同国家存在一定的差异。GNSS 定位支持所有主流的定位系统,包括 GPS、Glonass、Beidou、SBAS 以及 Galileo。

OCU4-TLVHE4IU

2019 年推出最新的第四代 OCU。今年大众推出的 ID.4 就使用了最新的 OCU4。

image-20210810173934227

TLVHE4IU-N

OCU4 高配,不支持蓝牙和 Wi-Fi。使用的主要芯片如下 。

  • 通信模组:Qualcomm MDM9240,支持的频段包括GSM 850/1900、UMTS B2/B4/B5/*B6、LTE FDD B2/B4/B5/B12/B13/B17/B29(RX);
  • MCU: 英飞凌 Tricore SAK-TC234LE-32F200F AB,有丰富的接口 1x FlexRay,2x LIN,4x QSPI,6x CAN,包括数据速率增强的 CAN FD;

image-20210810175257907

TLVHE4IU-E

不支持蓝牙和 Wi-Fi。使用的主要芯片如下。

  • 通信模组:Qualcomm MDM9240,支持频段 LTE FDD B7。

  • MCU: 英飞凌 Tricore SAK-TC234LE-32F200F AB,有丰富的接口 1x FlexRay,2x LIN,4x QSPI,6x CAN,包括数据速率增强的 CAN FD;

image-20210810173138847

OCU3-TLVHM3IU/TLVLM3IU

OCU3 的 PCB 板大体结构相似,主要由一个通信模组以及一个用于和总线交互的 MCU 组成,剩下就是按需配置的以太网桥、Wi-Fi 芯片等。剩下的就是一些基础的电路模块如电源管理、晶振、滤波等。

OCU3 有高低配两个版本,但在高低配之下还有划分。高低配直接的差别是高配支持以太网,低配不支持。其他版本的差异主要是通信基带支持的频段不同、以及是否支持 Wi-Fi 和蓝牙。

OCU3 小版本较多,外观上也有如下两个版本,左边的一个较为圆润,右边一个棱角分明。

image-20210727224548555

TLVHM3IU-ETLVHM3IU-N 高配

OCU3 高配,支持以太网,不支持 Wi-Fi 和蓝牙。使用的主要芯片如下。

  • 通信模组:Qualcomm MDM9240,支持的频段包括 GSM 900/1800 、UMTS B1/B3/B8 、LTE FDD B1/B3/B7/B8/B20/B28A;

  • 以太网桥: 东芝 TC9560XBG,采用 ARM Cortex-M3 架构,支持 IEEE 802.1AS 和 IEEE 802.1Qav 等标准;RealTek RTL9044AB;

  • MCU: 英飞凌 Tricore SAK-TC234LE-32F200F AB,有丰富的接口 1x FlexRay,2x LIN,4x QSPI,6x CAN,包括数据速率增强的 CAN FD;

image-20210804142622826

TLVLM3IU-N 低配

OCU3 低配,支持 Wi-Fi ,没有以太网和蓝牙。使用的主要芯片如下。

  • 通信模组:Qualcomm MDM9628,支持的频段包括 GSM 900/1800 、UMTS B1/B3/B8 、LTE FDD B2/B4/B5/B12/B17;

  • MCU: 英飞凌 Tricore SAK-TC234LE-32F200F AB,有丰富的接口 1x FlexRay,2x LIN,4x QSPI,6x CAN,包括数据速率增强的 CAN FD;

image-20210804152358291

TLVLM3IU-E 低配

OCU3 低配,不支持以太网、Wi-Fi 及蓝牙。使用的主要芯片如下。

  • 通信模组:Qualcomm MDM9240,支持的频段包括 GSM 900/1800 、UMTS B1/B3/B8 、LTE FDD B1/B3/B7/B8/B20/B28A;

  • MCU: 英飞凌 Tricore SAK-TC234LE-32F200F AB,有丰富的接口 1x FlexRay,2x LIN,4x QSPI,6x CAN,包括数据速率增强的 CAN FD;

image-20210804154005728

OCU2 - TUVM02IU

FCC ID 为 TUVM02IU-E、TUVM02IU-C 等,未查询具体的资料。

image-20210804193001931

OCU1-TUVM01IU

TUVM01IU 是第一代 OCU,在越南制造。支持的频段包括 GSM 1900 PCS UP | LTE 2,1900 PCS UP | LTE 25,1900+ UP | LTE 35,TD PCS Lower DOWN | UMTS CH 2 UP | UMTS CH 25 UP | UMTS CH 35 DOWN 。

OCU 第一代经历过 3 次较大的硬件升级,从TUVM01IU-G 从衍生出了 TUVM01IU-R、TUVP01IU-G、TUVP01IU-R 等。

image-20210804193247841

下图是 MQB 平台中使用第一代 OCU 的电路板,部分芯片丝印已无法识别。可识别的主要芯片如下。

  • MCU: 飞思卡尔 SPC5606BMLL6 32 位 PPC 架构的 MCU,内存为 1MB,处理器频率为 64MHz。通信方式有 6 路 CAN,使用 JTAG 进行调试。
  • SDRAW: 华邦 W94AD6KBHX

image-20210804215151781

接口测试

手头正好有一个 OCU3,接上 12V 直流电,使用逻辑分析仪识别出了 CAN 接口。其中一条报文的 ID 为 0x36F,数据为 F8 FF FF BF FF FF FF 07。

image-20210804161054778

但在识别串口的时候出现了异常,使用常见的波特率无法解析数据。猜测使用了自有协议通信,无法查看到明文的数据。串口的使用需要用到后面讲到的开发工具 ODT。

image-20210621203222034

对其他接口的测试这里暂不展示。

开发工具 ODT

在第一代 OCU 中,使用 ODT(OCU Development Tool,OCU开发工具) 调试、测试、分析 OCU。

image-20210803190800583

ODT 运行在 Window 系统上,通过 USB 转串口工具与 OCU 相连。 ODT 具有查看信息、设置参数、触发功能等功能。

  • 查看信息:在 ODT 可以直观的查看 GNSS定位信息、网络状态、SIM卡信息、电源状态、系统日志、服务日志、调试日志、配置数据等;
  • 设置参数:除了查看功能外,还能设置一些列参数,如 APN、供电模式等;
  • 触发功能:此外,还能够收发短信、播放音频、升级系统等。

image-20210803191145364

车联网中的 OCU

在车联网系统中,OCU 处于核心位置。从下图中可以看出,OCU 通过 CAN 总线和车载以太网接入网关; J794(车机) 方面,除了通过信息娱乐 CAN 相连以外, J794(车机) 还与 OCU 上的麦克风、扬声器相连。

image-20210804173827503

在大众最近的电子架构中,OCU 与车载应用服务器(ICAS1)通过车载以太网和CAN总线相连。OCU 与 娱乐系统(ICAS3)通过 A2B 相连。

image-20210803221158220

OCU 硬件总结

纵观四代 OCU 的发展,功能越来越丰富,承载的数据量也越来越大。在外观方面,各代差异较小,外部连接上依旧是少数的天线接口和主连接器上的排针,但可以看出还是多出了一些接口。芯片方面,仍旧采用通信模组搭配MCU的方案,通信模组负责与外界进行无线通信,MCU 负责与总线通信。伴随着技术的更替,车载以太网开始在车端广泛应用,以太网交换芯片的出现是OCU发展的最大变化,某种意义上也意味着车载网络的变革。

历代 OCU 使用的主要芯片变化不大,通信模组采用高通 MDM平台,供应商为 Sierra Wireless。国内其他厂商的 TBOX 常使用移远通信的通信模组。通信模组使用 eSIM卡;与 MCU 通过 SPI 和 GPIO 相连;与以太网网桥通过 PCIE 相连;与以太网交换芯片通过 RGMI 和 SPI 相连;与音视频芯片通过 I2S 相连。

MCU 与主控(通信模组) 通过SPI 和 GPIO 相连;下端连接 CAN、按钮、安全气囊等。

image-20210813124534571

本文主要讲解硬件部分,系统与软件部分后续会专题讲解。

安全威胁

以渗透测试人员的角度审视 OCU 的安全,并列举一些常见的风险点。这里以大众 OCU 为主体,也会谈及一些通用 TBOX 的共性问题。

通信

  • 无线网络

    OCU 具备的无线通信方式有蜂窝网络、GNSS、Wi-Fi,可能还有蓝牙。蜂窝网络存在被降级的风险;定位存在被欺骗的风险,国内采用多模,仅 GPS 可被欺骗,威胁系数较小;Wi-Fi 层面一是配置安全,比较重要的一点是初始密码的强度,然后是 Wi-Fi 网络下网络隔离以及开放服务的安全。蓝牙主要是协议栈的安全。

  • 内网 APN

    通过 OCU APN 接入企业内网,由于内网防护较弱,容易被渗透。

  • 总线

    通过 OCU 总线攻击其他 ECU。

OTA

一般状态下,智能网联汽车中 OTA 请求与固件包的下发是通过 OCU 与 TSP 来实现的。获取到系统权限后,既可以通过分析升级程序或者分析通信流量获取固件包,获取升级包后,分析升级 包可以发现其中的脆弱点进行利用;还能分析出其他 ECU 的升级逻辑,利用升级程序缺陷刷入恶意固件绕过安全限制或植入恶意代码。

image-20210815221455601

以下是一些可能出现问题的点:

  1. 云端威胁,OTA 平台存在漏洞。
  2. OTA 固件泄露,泄露的途径有OTA管理平台漏洞、测试包泄露、售后泄露、明文传输截取、逆向程序获取下载地址等。
  3. 升级程序设计缺陷,如升级包签名验签绕过等。
  4. OTA 的可用性,在实施软件升级时,若不能保证策略的合理性、提示的有效性,将会严重影响消费者的生命和财产安全,如某车型在长安街上停车一小时,乘客无法操纵车辆,甚至无法下车,给公共交通安全和用户生命安全带来严重隐患。

硬件安全

  1. 预留未保护的调试接口,如串口、ADB、USB、JTAG 等。
  2. 存储安全,SOP 封装 Flash 易被提取。
  3. MCU 代码读保护未开启,可提取固件、动态调试等。

系统/软件安全

  1. 使用过时的组件,开源组件存在已知漏洞,如 Dnsmasq。
  2. 未划分用户权限,都以 root 权限运行。
  3. 软件本身存在的漏洞,如命令注入、缓冲区溢出等。
  4. 开放的服务存在缺陷,SSH、Telnet 弱口令,私有服务传输敏感信息等。

总结

这篇文章实质上是对 TBOX 的一次安全分析。之所以没有直接讲TBOX,是因为直接讲太过空洞。于是借助 OCU 将 TBOX 实体化,讲一次实际的案例。不同厂家的设计方案虽有不同,但大体还是相似的。遂以小见大,把对 OCU 的安全认知类推到其他 TBOX 上。

致谢

感谢 Julie 的校对与建议、感谢提供参考资料的 Gorgias。

参考

系列文章