浅谈联网汽车安全漏洞
“智能网联汽车存在内生共性问题,即软硬件的漏洞后门,基于此进行的网络攻击可以直接带来勒索、盗窃、大规模车辆恶意操控风险,还有数据泄露等网络安全事件。如果内生的漏洞后门问题不解决,系统自身难保,很难谈系统安全之上的数据安全、应用安全。”
——中国工程院院士邬江兴
随着汽车智能化、网联化技术发展,汽车远程升级(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这样的事件——前提是需…...
软件测试技术(五)软件测试流程
软件测试流程 软件测试流程如下: 测试计划测试设计测试执行 单元测试集成测试确认测试系统测试验收测试回归测试验证活动 测试计划 测试计划由测试负责人来编写,用于确定各个测试阶段的目标和策略。这个过程将输出测试计划,明确要完成的测…...
React Native 开发环境搭建(全平台详解)
React Native 开发环境搭建(全平台详解) 在开始使用 React Native 开发移动应用之前,正确设置开发环境是至关重要的一步。本文将为你提供一份全面的指南,涵盖 macOS 和 Windows 平台的配置步骤,如何在 Android 和 iOS…...
2025年能源电力系统与流体力学国际会议 (EPSFD 2025)
2025年能源电力系统与流体力学国际会议(EPSFD 2025)将于本年度在美丽的杭州盛大召开。作为全球能源、电力系统以及流体力学领域的顶级盛会,EPSFD 2025旨在为来自世界各地的科学家、工程师和研究人员提供一个展示最新研究成果、分享实践经验及…...
Redis相关知识总结(缓存雪崩,缓存穿透,缓存击穿,Redis实现分布式锁,如何保持数据库和缓存一致)
文章目录 1.什么是Redis?2.为什么要使用redis作为mysql的缓存?3.什么是缓存雪崩、缓存穿透、缓存击穿?3.1缓存雪崩3.1.1 大量缓存同时过期3.1.2 Redis宕机 3.2 缓存击穿3.3 缓存穿透3.4 总结 4. 数据库和缓存如何保持一致性5. Redis实现分布式…...
基于uniapp+WebSocket实现聊天对话、消息监听、消息推送、聊天室等功能,多端兼容
基于 UniApp + WebSocket实现多端兼容的实时通讯系统,涵盖WebSocket连接建立、消息收发机制、多端兼容性配置、消息实时监听等功能,适配微信小程序、H5、Android、iOS等终端 目录 技术选型分析WebSocket协议优势UniApp跨平台特性WebSocket 基础实现连接管理消息收发连接…...
智能分布式爬虫的数据处理流水线优化:基于深度强化学习的数据质量控制
在数字化浪潮席卷全球的今天,数据已成为企业和研究机构的核心资产。智能分布式爬虫作为高效的数据采集工具,在大规模数据获取中发挥着关键作用。然而,传统的数据处理流水线在面对复杂多变的网络环境和海量异构数据时,常出现数据质…...
dify打造数据可视化图表
一、概述 在日常工作和学习中,我们经常需要和数据打交道。无论是分析报告、项目展示,还是简单的数据洞察,一个清晰直观的图表,往往能胜过千言万语。 一款能让数据可视化变得超级简单的 MCP Server,由蚂蚁集团 AntV 团队…...
AI,如何重构理解、匹配与决策?
AI 时代,我们如何理解消费? 作者|王彬 封面|Unplash 人们通过信息理解世界。 曾几何时,PC 与移动互联网重塑了人们的购物路径:信息变得唾手可得,商品决策变得高度依赖内容。 但 AI 时代的来…...
Java + Spring Boot + Mybatis 实现批量插入
在 Java 中使用 Spring Boot 和 MyBatis 实现批量插入可以通过以下步骤完成。这里提供两种常用方法:使用 MyBatis 的 <foreach> 标签和批处理模式(ExecutorType.BATCH)。 方法一:使用 XML 的 <foreach> 标签ÿ…...
R语言速释制剂QBD解决方案之三
本文是《Quality by Design for ANDAs: An Example for Immediate-Release Dosage Forms》第一个处方的R语言解决方案。 第一个处方研究评估原料药粒径分布、MCC/Lactose比例、崩解剂用量对制剂CQAs的影响。 第二处方研究用于理解颗粒外加硬脂酸镁和滑石粉对片剂质量和可生产…...
【Redis】笔记|第8节|大厂高并发缓存架构实战与优化
缓存架构 代码结构 代码详情 功能点: 多级缓存,先查本地缓存,再查Redis,最后才查数据库热点数据重建逻辑使用分布式锁,二次查询更新缓存采用读写锁提升性能采用Redis的发布订阅机制通知所有实例更新本地缓存适用读多…...
