0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

汽车电子的ECU攻击分析

智能汽车电子与软件 来源:电控知识搬运工 作者:电控知识搬运工 2022-10-17 16:13 次阅读

概述

汽车电子电器架构的角度来看,汽车就是由ECU(点)和总线(线)构成的一个结构体(对于无线传感,车内部很少用,把网关、T-BOX等也统称为ECU)。对汽车进行攻击,其实际就是针对不同的ECU进行攻击。ECU的攻击向量有哪些,如何攻击一个ECU,对于hacker来讲是最感兴趣的话题,对整车防御来讲也是首先要搞清楚的事情。 ECU结构 首先从几个不同角度来看看ECU是什么样子的

1.物理

拆开一个ECU,最直观来看,一个ECU可以分为两部分: 芯片/PCB + 接口; 芯片/PCB是被封装在金属外壳(电磁干扰)里的部分 接口又可以分为两种:不隐藏的通信接口+隐藏的调试接口

2.操作系统

从操作系统的角度看ECU,是要了解固件是如何运行的,是为了破解ECU的固件;

3.程序架构

这个是汽车的控制器独有的一部分,从这个分类角度可以进一步明确针对ECU不同模块的具体攻击手法。

先从这三个角度来看ECU,这三个角度涉及到硬件、操作系统/程序运行方法、汽车电子软件,细说起来每一个部分都很多,希望日后可以详细说一下。

ECU攻击 上一节说了汽车ECU是什么,从什么角度对其进行分层分类,从而在这一节得到攻击向量,以上三个角度可以统一在以下三层: 网络(接口):协议的攻击(从第一、第三角度看) 固件(FLASH):固件的逆向(从第一、二、第三角度看) 芯片/PCB:物理攻击(从第一角度看) 网络 网络的攻击向量可以通过无线网络和有线网络;有线网络主要是CAN网络;CAN网络攻击可以分为对RAW帧的攻击和对协议报文的攻击;RAW帧的攻击主要是因为CAN本身的属性造成的: 1.无身份认证 2.优先级 3.广播 4.总线错误 对于协议报文则可以从第三角度来看: 对诊断报文 对应用报文 对网络管理报文 固件 固件获取:固件获取的方法有很多种,也有很多的介绍;从第一角度来看,固件获取可以从FLASH直接提取,从调试口读取甚至可以动态调试 固件分析:这个就要先从第二角度来看了,对于通用操作系统有自己的工具链,相对麻烦一些;对于操作系统和程序没有区分的可以直接用动静态分析工具去做。 漏洞利用:对于通用的操作系统,其利用方法很多;对于另一种可以窃取一些数据,更改一些参数,但是持久化利用是一个问题。

芯片 到了芯片这一级,就是一些物理攻击手段了,最典型的就是侧信道分析和故障注入。参考NXP的一张图。

保护 简单说一下保护。针对各种攻击都应有相应的保护手段。保护的根本还是基于密码学的,目前来看就是要保证硬件安全,建立可信体系,主要使用的就是硬件安全模块,如HSM、TPM。 HIS SHE 这个规范主要是讲基于对称加密(AES)的硬件安全模块,其密钥如何管理,如何使用,并介绍了安全启动等流程

EVITASHE 这个项目介绍了对于不同场景采用不同的安全等级设计,分为FULL Medium Light三种,并对报文安全等级也进行了一个划分

小结

介绍了一下ECU攻击的情况,其中有自己的思考和参考一些他人的思考,后面需要对每一种结合自己的实践进行一个更详细的介绍。汽车作为一种IoT设备,和普通IoT设备的漏洞挖掘有很多相似之处,但是也有很多不同,对以下四个问题需要进行进一步思考: 1.对于汽车ECU的攻击向量还有待发掘 2.如何进行漏洞的利用 3.保护方法有效性 4.攻防的均衡

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 芯片
    +关注

    关注

    447

    文章

    47828

    浏览量

    409213
  • 汽车电子
    +关注

    关注

    3000

    文章

    7463

    浏览量

    161618
  • ecu
    ecu
    +关注

    关注

    14

    文章

    822

    浏览量

    53895

原文标题:汽车网络安全之ECU攻击

文章出处:【微信号:智能汽车电子与软件,微信公众号:智能汽车电子与软件】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    高性能电源在汽车ECU地漂测试中的应用

    地漂测试是汽车ECU的重要测试项目之一,能够有效评估ECU的通信和控制性能。因此,在ECU生产、整车制造、第三方检测等机构在进行研发设计、来料测试、验证检测等过程中,一般需要进行地漂测
    发表于 03-12 16:46 148次阅读
    高性能电源在<b class='flag-5'>汽车</b><b class='flag-5'>ECU</b>地漂测试中的应用

    可以在vag汽车上解锁md1cs004 ECU上的tc298吗?

    是否有人尝试在 vag 汽车上解锁 md1cs004 ECU 上的 tc298?
    发表于 03-05 07:30

    有些汽车ECU会使用2片单片机,请问这2片单片机是如何分配任务的?

    来自一位用户的咨询,麻烦帮忙解答。越详细越好,有图有真相。如有相关的视频、文档也可以辅助说明,谢谢。 有些汽车ECU会使用2片单片机,请问这2片单片机是如何分配任务的? 下图是某F1动力总成的ECU
    发表于 02-02 08:13

    电动汽车ECU进入休眠后,目前有3种唤醒模式,CAN总线和AC电压的唤醒设计原理是什么?

    电动汽车ECU进入休眠后,目前有3种唤醒模式,我想知道CAN总线和AC电压的唤醒设计原理是什么?
    发表于 02-02 06:19

    一般的汽车ECU处理器是32位的吗?具体的RAM和Flash有多大呢?

    现在一般的汽车ECU处理器是32位的吗,具体的RAM和Flash有多大呢?现在汽车ECU处理器位数发展到多少了?相应配备的RAM和Flash有多大?
    发表于 02-02 06:08

    请问汽车ECU通信如何实现?

    汽车ECU通信如何实现?
    发表于 02-01 07:09

    汽车ECU一般采用芯片架构?使用什么系统?

    汽车ECU一般采用芯片架构,使用什么系统?
    发表于 02-01 06:09

    汽车ECU编程是单片机C语言还是汇编语言?

    汽车ECU编程是单片机C语言吗?还是汇编语言?
    发表于 01-26 06:08

    关于汽车电子ECU的三种形式

    ECU的优点和缺点给大家说说,优点就是提升动力增加功能,第二可以适当的解决有些问题,像有的车调校出问题了刷ECU解决换挡顿挫动力不衔接。
    发表于 01-22 11:03 171次阅读
    关于<b class='flag-5'>汽车</b><b class='flag-5'>电子</b><b class='flag-5'>ECU</b>的三种形式

    Xilinx XA3S1600E汽车电子ECU开发方案

    电子发烧友网站提供《Xilinx XA3S1600E汽车电子ECU开发方案.pdf》资料免费下载
    发表于 10-20 11:10 0次下载
    Xilinx XA3S1600E<b class='flag-5'>汽车</b><b class='flag-5'>电子</b><b class='flag-5'>ECU</b>开发方案

    汽车ECU高边开关设计方案

    比如针对本文介绍的智能高低边开关,典型的应用场景是汽车ECU中,用于提供包括加热,配电,驱动泵等;
    发表于 09-14 09:22 582次阅读
    <b class='flag-5'>汽车</b><b class='flag-5'>ECU</b>高边开关设计方案

    CAN总线在汽车ECU中的作用

    CAN作为汽车ECU之间广泛应用的通信总线,有一些和应用相关的基础问题。
    的头像 发表于 08-19 09:38 2996次阅读
    CAN总线在<b class='flag-5'>汽车</b><b class='flag-5'>ECU</b>中的作用

    ECU到DCU的发展之路

    电动汽车在现代社会越来越常见,电子控制单元 (ECU) 也成为汽车电子设备的标准嵌入式控制系统。 ECU
    的头像 发表于 08-03 15:07 844次阅读
    从<b class='flag-5'>ECU</b>到DCU的发展之路

    汽车ECU的故障类型

    故障类型 不难发现,在控制器层面可以进一步将各种零部件抽象到传感器,通讯,控制器,执行器和机械系统。这就是汽车实施故障诊断的起点,即针对ECU来做故障诊断,诊断哪些故障。按此思路,通常ECU故障分为
    的头像 发表于 07-26 10:38 632次阅读

    ecu测试是什么 汽车ecu测试的共性有哪些

    ECU开发测试中,通常会把二者区分开来,我们从以下几个角度来看差异点: 测试对象:软件测试是面向集成在芯片上的软件;系统测试是针对包含软件、硬件与标定的ECU
    发表于 07-25 09:33 599次阅读
    <b class='flag-5'>ecu</b>测试是什么 <b class='flag-5'>汽车</b><b class='flag-5'>ecu</b>测试的共性有哪些