浅谈联网汽车安全漏洞
“智能网联汽车存在内生共性问题,即软硬件的漏洞后门,基于此进行的网络攻击可以直接带来勒索、盗窃、大规模车辆恶意操控风险,还有数据泄露等网络安全事件。如果内生的漏洞后门问题不解决,系统自身难保,很难谈系统安全之上的数据安全、应用安全。”
——中国工程院院士邬江兴
随着汽车智能化、网联化技术发展,汽车远程升级(Over-The-Air,OTA)技术得到了广泛应用。然而,车载软件在远程升级过程中存在数据被仿冒、窃取、攻击的潜在风险。2020年,国家市场监督管理总局曾发布《进一步加强汽车远程升级(OTA)技术召回监管的通知》,以加强对OTA的整治力度,提升联网汽车的安全性。
研究联网汽车监管历史可以发现,根据2017年《Science》上一篇题为“Black box is not safe at all(黑匣子根本不安全)”的文章(指汽车系统的黑匣子,即OBD,On-Board Diagnostic,车载诊断系统),美国自1996年起就强制要求所有在售汽车遵循OBD-II规范,欧盟自2001年起强制实施的则是European OBD(EOBD)规范。

*盗窃事故频发的三元催化器工作原理。上述规范都对用于处理废气的三元催化器有着一定限制要求。(图源网络)
其中存在两个问题。首先,OBD-II和EOBD中都没有专门针对安全性的规范——汽车制造商是无法对“黑匣子”进行全面测试的。也就是说,十余年来,汽车安全问题一直是联网汽车的沉疴痼疾。
第二个比较重要的安全问题在于,在单部汽车的ECU(Electronic Control Unit,电控单元)数量已多达数百个的当下,现有系统增加新功能时会更易受到攻击。车载信息娱乐系统(In-Vehicle Infotainment ,IVI)、智能手机连接、车辆远程信息处理等信息交互密集的系统往往最为薄弱,是攻击者的首要围攻对象。
本文中,针对汽车的黑客攻击分为“汽车传感器攻击”和“汽车访问攻击”两大类。
汽车传感器攻击:包含GPS(Global Positioning System,全球定位系统)干扰和欺骗、MMW(Millimeter Wave,毫米波)雷达干扰和欺骗、激光雷达传感器中继攻击和欺骗、超声波传感器干扰和欺骗以及摄像头传感器致盲等。
汽车访问攻击:包含密钥克隆和远程信息处理服务攻击,对自动驾驶汽车和传统汽车都有负面影响。
01.汽车传感器攻击
对具备自动驾驶功能的汽车而言,感知周围发生的事件是最为重要的能力之一。自动驾驶一般会涉及GPS、MMW雷达、LiDAR(Light Aetection And Ranging)传感器、超声波传感器和摄像头传感器。以下为上述传感器的攻击方法对应的反制措施。
GPS干扰和欺骗

*2016年7月16日,知名手游《精灵宝可梦:GO》遭黑客GPS欺骗攻击,服务器大面积瘫痪。
传统的GPS系统极易受到欺骗性攻击,使用廉价的SDR(Software-defined Radio,软件定义无线电)就可轻易实现GPS信号欺骗。目前的欺骗技术已经具备挑战复杂系统接收器防御构成的能力,欺骗预防领域的深入研究与开发迫在眉睫,尤其是事故发生后精确导航的恢复问题。接收器制造商同步实施和嵌入欺骗防御措施也同样重要。
MMW雷达攻击

* 电磁波谱。毫米波位于微波与远红外波相交叠的波长范围。
MMW雷达有着不受恶劣天气影响的绝对优势,能够“全天候全天时”工作,是汽车ADAS不可或缺的核心传感器之一。车载MMW雷达使用的频段主要集中在24GHz和77GHz这2个频段,后者的系统尺寸会比前者更为紧凑。2016年DEFCON极客大会(全球顶级安全会议)上,研究人员仅使用了一个微型超声波发射器就轻松实现了针对特斯拉MMW雷达的干扰和欺骗攻击,所造成的汽车“失明”和故障将对行车安全带来巨大威胁。
激光雷达传感器攻击

*激光雷达传感器运行示意图。
密歇根大学RobustNet研究小组与加州大学欧文分校Qi Alfred Chen研究小组合作研究发现,激光雷达感知系统也可以被欺骗,攻击者可通过向传感器发送光信号来混淆传感器所接受的脉冲,使其看到根本不存在的障碍。此类情况会导致车辆突然刹车并撞车。
超声波传感器攻击

*针对超声波传感器的欺骗攻击示意图。
图示攻击为2016年DEFCON中由浙大与360研究团队对特斯拉超声波传感器发起的欺骗攻击。只要在真实回波到达传感器之前,将精心制作的fake回波发送至传感器,就可实现对超声波传感器的感染。调控fake回波的时序还能操纵传感器的具体度数,导致传感器检测到不存在的物体,从而导致车辆碰撞。
摄像头传感器攻击
汽车摄像头传感器遭受的攻击类型基本分为以下两种:1)来自摄像头连接的 web 服务;2)来自实时流协议 RSTP 服务。深圳某传感器厂商曾被测出,其生产的17.5万台设备均存在缓冲区溢出的问题,一旦被攻击者远程入侵将被执行任意代码并彻底接管,带来无法预测的后果。
02.车辆访问攻击
密钥克隆
比利时鲁汶大学与英国伯明翰大学2020年的一项研究表明,由于丰田、现代和起亚等汽车制造商的芯片机械钥匙加密方式存在缺陷,此类品牌汽车存在被侵入或被盗的风险。黑客可通过加密系统存在的漏洞,即窃听原始遥控器的单一信号来实现汽车密钥的克隆,3分钟便可开走汽车。特斯拉2018年款Model S车型也被列为受影响车型之一,该安全问题已于2019年被解决。
部分制造商正在引入安全芯片TPMs(rusted Platform Modules,可信任平台模块),使用该模块的密钥被存储在硬件中,即便数据被窃也无法解密,在根源上保护了敏感信息。
远程信息服务攻击
SAE J1939协议伴随CAN总线诞生至今,始终在商用车、工程机械等设备的网络设计领域发挥重要作用,至今无可替代。然而密歇根大学的Burakova等人研究发现,有网络权限的黑客可以利用SAE J1939协议轻易控制中重型车辆的安全关键系统。为规避此类问题,需要汽车软件开发人员在软件开发时就提前建立安全机制,尽量防范各种攻击。
03.结语
作为产业数字化和数字产业化的交汇地带,联网汽车的本质是“软件定义汽车”,但这也同时意味着,其安全问题已超过传统物理安全的范畴,升级成为更复杂的数字安全问题。联网汽车必须受到更为完善的保护,从而更好地保护企业、车辆、用户的信息、财产与生命安全。
天目全数字实时仿真软件SkyEye作为基于可视化建模的硬件行为级仿真平台,支持用户通过拖拽的方式对硬件进行行为级别的仿真和建模,被测软件可不加修改地运行在SkyEye中。
结合常用的Fuzz工具,用户既可通过SkyEye的故障注入功能模拟传感器攻击,查找、分析硬件驱动上的安全漏洞,也可结合模糊技术查找、分析软件层安全漏洞,助力汽车虚拟ECU的测试与验证,确保汽车复杂软件的安全性和可靠性。

文章参考
https://www.trendmicro.com/en_us/research/18/c/connected-vehicle-security-vulnerabilities.html
https://publicism.info/engineering/penetration/7.html
https://www.blackhat.com/docs/eu-15/materials/eu-15-Petit-Self-Driving-And-Connected-Cars-Fooling-Sensors-And-Tracking-Drivers-wp1.pdf
https://s3.documentcloud.org/documents/3004659/DEF-CON-whitepaper-on-Tesla-sensor-jamming-and.pdf
https://files.laggy.org/infoconatdc27/contents/cons/DEF%20CON/DEF%20CON%2024/DEF%20CON%2024%20presentations/DEF%20CON%2024%20-%20Liu-Yan-Xu-Can-You-Trust-Autonomous-Vehicles-WP.pdf
http://www.manongjc.com/detail/50-dwpjtbcfdardkeo.html
https://www.usenix.org/system/files/conference/woot16/woot16-paper-burakova.pdf
相关文章:
浅谈联网汽车安全漏洞
“智能网联汽车存在内生共性问题,即软硬件的漏洞后门,基于此进行的网络攻击可以直接带来勒索、盗窃、大规模车辆恶意操控风险,还有数据泄露等网络安全事件。如果内生的漏洞后门问题不解决,系统自身难保,很难谈系统安…...
深入理解SeaTunnel:易用、高性能、支持实时流式和离线批处理的海量数据集成平台
深入理解SeaTunnel:易用、高性能、支持实时流式和离线批处理的海量数据集成平台 一、认识SeaTunnel二、SeaTunnel 系统架构、工作流程与特性三、SeaTunnel工作架构四、部署SeaTunnel1.安装Java2.下载SeaTunnel3.安装连接器 五、快速启动作业1.添加作业配置文件以定义…...
项目上线 | 兰精携手盖雅工场,数智驱动绿色转型
近年来,纺织纤维行业零碳行动如火如荼。作为低碳环保消费新时尚引领者,同时也是纤维领域隐形冠军,兰精在推进绿色发展的同时,也在不断向内探索企业数字化转型之道,以此反哺业务快速扩张。 数智转型,管理先…...
102-Linux_I/O复用方法之poll
文章目录 1.poll系统调用的作用2.poll的原型3.poll支持的事件类型4.poll实现TCP服务器(1)服务器端代码:(2)客户端代码:(3)运行结果截图: 1.poll系统调用的作用 poll 系统调用和 select 类似,也是在指定时间内轮询一定数量的文件描述符,以测试其中是否有…...
【VAR模型 | 时间序列】帮助文档:VAR模型的引入和Python实践(含源代码)
向量自回归 (VAR) 是一种随机过程模型,用于捕获多个时间序列之间的线性相互依赖性。 VAR 模型通过允许多个进化变量来概括单变量自回归模型(AR 模型)。 VAR 中的所有变量都以相同的方式进入模型:每个变量都有一个方程式ÿ…...
Spark任务提交流程
1. yarn-client Driver在任务提交的本地机器上运行,Driver启动后会和ResourceManager通讯,申请启动ApplicationMaster; 随后ResourceManager分配Container,在合适的NodeManager上启动ApplicationMaster,此时的ApplicationMaster的…...
python相对路径与绝对路径
9.1 Python 绝对路径与相对路径 - 知乎 (zhihu.com) 目录 1. 绝对路径 1.1 概念 1.2 用绝对路径打开文件 1.2 相对路径 1.3 python路径表示的斜杠问题 1. 绝对路径 1.1 概念 绝对路径 指完整的描述文件位置的路径。绝对路径就是文件或文件夹在硬盘上的完整路径。 在 Win…...
SPSS如何进行基本统计分析之案例实训?
文章目录 0.引言1.描述性分析2.频数分析3.探索分析4.列联表分析5.比率分析 0.引言 因科研等多场景需要进行数据统计分析,笔者对SPSS进行了学习,本文通过《SPSS统计分析从入门到精通》及其配套素材结合网上相关资料进行学习笔记总结,本文对基本…...
Python项目实战篇——常用验证码标注和识别(需求分析和实现思路)
前言:验证码识别和标注是现在网络安全中的一个重要任务,尤其是在一些电商平台和在线支付等场景中,验证码的安全性至关重要。本文将介绍如何使用Python实现常用的验证码标注和识别,以便为自己的项目提供参考。 一、需求分析 1、验证…...
MySQL基础(六)多表查询
多表查询,也称为关联查询,指两个或更多个表一起完成查询操作。 前提条件:这些一起查询的表之间是有关系的(一对一、一对多),它们之间一定是有关联字段,这个关联字段可能建立了外键,…...
零死角玩转stm32中级篇3-SPI总线
本篇博文目录: 一.基础知识1.什么是SPI2.SPI和IIC有什么不同3.SPI的优缺点4.SPI是怎么实现通信的5.SPI 数据传输的步骤6.SPI菊花链7.通过SPI实现数据的读和写 二.STM32F103C8T6芯片SPI协议案例代码 一.基础知识 1.什么是SPI SPI(Serial Peripheral Interface&#…...
顺序表功能实现(入手版详解)
🍉博客主页:阿博历练记 📖文章专栏:数据结构与算法 🚚代码仓库:阿博编程日记 🌹欢迎关注:欢迎友友们点赞收藏关注哦 文章目录 🍓前言✨顺序表🔍1.顺序表的整体…...
Java 中的线程是什么,如何创建和管理线程-下(十三)
书接上文 CompletableFuture CompletableFuture 是 Java 8 中新增的类,提供了更为强大的异步编程支持。它可以将多个异步任务组合成一个整体,并且可以处理异常情况。 例如,可以使用 CompletableFuture 来实现异步任务的串行执行࿱…...
为什么我的Windows 10 便签不支持更改字体?
Windows便签是一款常用的记录工具,可以帮助我们快速记录一些重要的信息。在使用Windows便签时,如果你想要更好地呈现你的信息,可以通过设置字体来达到这个效果。本文将介绍Windows便签字体设置的相关知识,希望对你有所帮助。 1、打…...
野火STM32电机系列(六)Cubemx配置ADC规则和注入通道
前文已经配置了GPIO、编码器 本节讲解CubeMXADC规则和注入通道 本文adc注入通道采用定时器触发,因此在上文定时器配置的基础上进行 常规信号(温度等)使用带DMA的常规通道连续采样 注入采样由定时器触发,采集电机三相电流&…...
预制菜,巨头们的新赛场
俗话说“民以食为天”,饮食对于大众的重要性自然是无需赘述。然而,随着生活节奏的加快,越来越多年轻人没有时间和精力去烹制菜肴,这也是外卖行业持续火热的重要原因之一。尽管如此,随着消费者健康意识的持续提升&#…...
英语语法第一章之英语语法综述
英语的任何句型基本都可以翻译成 什么怎么样 ,在这里什么就是我们常说的主语,而怎么样就是我们常说的谓语; 可能有些小伙伴会反问,不是主谓宾吗?别急等我慢慢讲解 在这里谓语也有很有多的不同的动作 可以独立完成的动作 句型&am…...
ChatGPT被淘汰了?Auto-GPT到底有多强
大家好,我是可夫小子,关注AIGC、读书和自媒体。解锁更多ChatGPT、AI绘画玩法。 说Auto-GPT淘汰了ChatGPT了,显然是营销文案里面的标题党。毕竟它还是基于ChatGPT的API,某种意义只是基于ChatGPT能力的应用。但最近,Auto…...
unity NGUI使用方法
基本用法 很多基本模块比如按钮、slider等都能从Prefab中直接拖拽到场景中实现,但都需要有一个Collider(Prefab已经自带) 因为不仅是UI,所有带有Collider的游戏物体都能接收到OnClick, OnPress这样的事件——前提是需…...
软件测试技术(五)软件测试流程
软件测试流程 软件测试流程如下: 测试计划测试设计测试执行 单元测试集成测试确认测试系统测试验收测试回归测试验证活动 测试计划 测试计划由测试负责人来编写,用于确定各个测试阶段的目标和策略。这个过程将输出测试计划,明确要完成的测…...
基于ASP.NET+ SQL Server实现(Web)医院信息管理系统
医院信息管理系统 1. 课程设计内容 在 visual studio 2017 平台上,开发一个“医院信息管理系统”Web 程序。 2. 课程设计目的 综合运用 c#.net 知识,在 vs 2017 平台上,进行 ASP.NET 应用程序和简易网站的开发;初步熟悉开发一…...
uni-app学习笔记二十二---使用vite.config.js全局导入常用依赖
在前面的练习中,每个页面需要使用ref,onShow等生命周期钩子函数时都需要像下面这样导入 import {onMounted, ref} from "vue" 如果不想每个页面都导入,需要使用node.js命令npm安装unplugin-auto-import npm install unplugin-au…...
CMake基础:构建流程详解
目录 1.CMake构建过程的基本流程 2.CMake构建的具体步骤 2.1.创建构建目录 2.2.使用 CMake 生成构建文件 2.3.编译和构建 2.4.清理构建文件 2.5.重新配置和构建 3.跨平台构建示例 4.工具链与交叉编译 5.CMake构建后的项目结构解析 5.1.CMake构建后的目录结构 5.2.构…...
服务器硬防的应用场景都有哪些?
服务器硬防是指一种通过硬件设备层面的安全措施来防御服务器系统受到网络攻击的方式,避免服务器受到各种恶意攻击和网络威胁,那么,服务器硬防通常都会应用在哪些场景当中呢? 硬防服务器中一般会配备入侵检测系统和预防系统&#x…...
1.3 VSCode安装与环境配置
进入网址Visual Studio Code - Code Editing. Redefined下载.deb文件,然后打开终端,进入下载文件夹,键入命令 sudo dpkg -i code_1.100.3-1748872405_amd64.deb 在终端键入命令code即启动vscode 需要安装插件列表 1.Chinese简化 2.ros …...
Maven 概述、安装、配置、仓库、私服详解
目录 1、Maven 概述 1.1 Maven 的定义 1.2 Maven 解决的问题 1.3 Maven 的核心特性与优势 2、Maven 安装 2.1 下载 Maven 2.2 安装配置 Maven 2.3 测试安装 2.4 修改 Maven 本地仓库的默认路径 3、Maven 配置 3.1 配置本地仓库 3.2 配置 JDK 3.3 IDEA 配置本地 Ma…...
安宝特方案丨船舶智造的“AR+AI+作业标准化管理解决方案”(装配)
船舶制造装配管理现状:装配工作依赖人工经验,装配工人凭借长期实践积累的操作技巧完成零部件组装。企业通常制定了装配作业指导书,但在实际执行中,工人对指导书的理解和遵循程度参差不齐。 船舶装配过程中的挑战与需求 挑战 (1…...
MySQL 知识小结(一)
一、my.cnf配置详解 我们知道安装MySQL有两种方式来安装咱们的MySQL数据库,分别是二进制安装编译数据库或者使用三方yum来进行安装,第三方yum的安装相对于二进制压缩包的安装更快捷,但是文件存放起来数据比较冗余,用二进制能够更好管理咱们M…...
基于PHP的连锁酒店管理系统
有需要请加文章底部Q哦 可远程调试 基于PHP的连锁酒店管理系统 一 介绍 连锁酒店管理系统基于原生PHP开发,数据库mysql,前端bootstrap。系统角色分为用户和管理员。 技术栈 phpmysqlbootstrapphpstudyvscode 二 功能 用户 1 注册/登录/注销 2 个人中…...
Chrome 浏览器前端与客户端双向通信实战
Chrome 前端(即页面 JS / Web UI)与客户端(C 后端)的交互机制,是 Chromium 架构中非常核心的一环。下面我将按常见场景,从通道、流程、技术栈几个角度做一套完整的分析,特别适合你这种在分析和改…...
