揭示AUTOSAR中隐藏的漏洞

谈思实验室 2025-02-02 19:01

点击上方蓝字谈思实验室

获取更多汽车网络安全资讯

AUTOSAR是一个普遍采用的软件框架,用于各种汽车零部件,如ABS, ECU,自动照明、环境控制、充电控制器、信息娱乐系统等。AUTOSAR的创建目的是促进汽车零部件之间形成标准接口,可以在不同制造商之间互通。

因此,任何配备微控制器(MCU)的汽车零部件都应符合AUTOSAR的规定。

AUTOSAR标准不仅管理用于模块间通信的数据格式,还规定了这些模块的标准API。在汽车行业内使用的AUTOSAR平台有两个版本:Classic和Adaptive。

Adaptive平台是为高性能设备量身定制的,例如信息娱乐系统或高级驾驶辅助系统(ADAS),这些设备通常在Linux或QNX等资源丰富的操作系统上运行。另一方面,Classic平台部署于运行在微控制器单元裸板(MCU)上的低性能设备中,包括ABS, EBD, 安全气囊控制单元、车身控制模块、传输控制模块等系统。

虽然AUTOSAR是一个稳健而可靠的开发框架,但它并非没有潜在的错误和漏洞。在对AUTOSAR文件进行内部分析时,我们偶然发现了一个特别有趣的漏洞,这个漏洞可能会带来很大的安全风险。代码中的缺陷并不是由于AUTOSAR本身造成的,而是对AUTOSAR使用不当的结果。

在本文中,我们打算深入研究和剖析这个具体的案例。

01

AUTOSAR Classic固件开发

在大多数情况下,固件是利用两家领先的AUTOSAR软件提供商(Vector和Elektrobit)提供的工具链开发的。

Vector和Elektrobit都提供了配置工具和SDK,其中包括标准AUTOSAR模块的预构建实现,如MicroSAR OS运行时、CAN接口、NVM API、诊断模块、加密和内存接口等。这种被称为基本软件(Basic Software,简称BSW)的SDK是以中间件方式执行,因此不能在目标硬件上独立运行。

除了BSW之外,还有一套被称为微控制器抽象层(Microcontroller Abstraction Layer,简称MCAL)的驱动程序和库,用于对硬件的访问。每个打算将其MCU用于汽车行业的硬件制造商都提供了适用于其MCU的AUTOSAR MCAL。例如,有来自博世、恩智浦、瑞萨和英飞凌的MCAL。MCAL驱动程序和库也需要遵循AUTOSAR标准,以确保BSW可以与任何硬件制造商的MCAL一起使用。

新固件的开发通常从配置工具开始。在这里,开发人员构建要使用的硬件平台,为他们的项目选择所需的MCAL和BSW模块,然后在所有模块之间建立连接。例如,开发人员可以指定BSW中的CanIf模块应该使用哪个MCAL的CAN接口。一旦配置阶段完成,配置工具就会生成源代码,这些源代码本质上是MCAL和BSW的一个子集。

生成源代码之后,可以使用任何编译器或集成开发环境(IDE)对其进行编译,然后再将其安装到目标设备上。由配置工具输出的源代码已经包含了设备以默认行为操作所必需的一切。因此,开发人员可能不需要对所生成的代码进行任何修改。在BSW层之上的任何自定义代码往往都是最小化了的,通常占固件总大小的10%以下。

02

基于AUTOSAR的固件漏洞

在我们进行红队渗透测试的过程中,我们获得了基于AUTOSAR的固件进行安全评估。从攻击者和渗透测试者的角度来看,基于AUTOSAR的文件的潜在攻击点非常有限。该模块的源代码非常可靠,始终经过代码审查和漏洞分析。

关于常规漏洞和通用缺陷枚举(CWE),发现它们的可能性相当小。没有动态内存分配,所有变量要么是全局的,要么是堆栈上的,从而消除了发现double-free或use-after-free等漏洞的机会。汽车代码不执行字符串操作,而只关注二进制解析。因此,通过sprintf, sscanf, strcpy等操作遇到堆栈溢出的可能性在这里是不存在的。

当涉及到潜在的竞态条件漏洞时,AUTOSAR Classic不允许动态任务初始化或动态创建的同步原语。任务和同步事件列表是在配置阶段预先确定的。因此,考虑到静态的、预先配置的任务资源和事件集,自动生成的代码不太可能包含死锁或竞态条件。

因此,我们必须深入研究AUTOSAR框架,了解它的用法和对API的潜在使用不当,特别关注用户如何以可能导致漏洞的方式调用它。

我们在NvM模块中遇到了一组函数:NvM_ReadBlock, NvM_WriteBlock和NvM_RestoreBlockDefaults,这组函数通常用于在NVM中加载和存储设备设置(如EEPROM, NAND, NOR内存等)。

通过对NVRAM管理器规范中的函数原型进行研究:

很明显,这些函数缺少缓冲区大小检查,仅使用块ID来确定在配置阶段配置的特殊块表中的数据大小。换句话说,用户有责任包含在写入时验证保存在NvM块中的数据大小是否合适的代码。同样,当从NvM块中读取数据时,用户有责任提供足够大的缓冲区,因为NvM_ReadBlock只是根据NvM块的大小简单地覆盖缓冲区。

因此,这样的API调用可能会导致越界(Out of Bounds, 简称OOB)读取或写入。根据作为NvM_DstPtr/NvM_SrcPtr传递的缓冲区类型,可能会出现各种问题:

  • 如果用户提供了一个小的堆栈变量,但读取了一个大的NvM块,NvM_ReadBlock将在堆栈变量之外写入数据,这会导致堆栈损坏,并可能为远程代码执行(Remote Code Execution,简称RCE)打开大门。

  • 如果提供的变量是全局变量,NvM_ReadBlock将覆盖邻近的全局变量。这可能会导致代码中出现未定义的行为。

  • 如果用户为NvM_WriteBlock提供了一个小的堆栈或全局变量,将导致NvM_WriteBlock读取变量外的数据,并将随机数据存储到NVM中。

利用这种方法,我们发现了一个有趣的由于AUTOSAR API使用不当导致缓冲区溢出漏洞的案例。

03

测试设备在发现基于AUTOSAR的漏洞线

让我们看一下我们遇到的漏洞的简化版本:

NvM_ReadBlock将从NVM读取0x110字节,然后将其写入myVar的位置。虽然NvM_ReadBlock会准确地写入myVar的值,但之后它仍将继续用不可预测的值覆盖邻近的全局变量。

在我们发现的案例中,NvM_ReadBlock被设置为在堆栈上执行越界写入操作,这可能会覆盖函数的返回地址。

在这个具体案例中,对易受攻击函数的调用被MCU复杂的自定义工作流程所掩盖。然而,它仍然是可触发的,并且确实导致了执行崩溃。

04

缓解威胁

代码生成之后,管理源代码中与NvM API一起使用的变量大小就完全是开发人员的责任了。因此,AUTOSAR开发人员应当尽一切努力在配置器中对齐变量和NVM块的大小。AUTOSAR开发人员还应当避免修改生成的代码,除非他们完全理解有关NVM块大小的约束。

此外,没有NVM函数可以提供NVM块的大小来执行如下检查:assert(sizeof(myVar) == NvM_BlockSize(Block_ID));这是因为块大小被硬编码到NvM模块配置中,并被视为内部数据。

即使在使用AUTOSAR这样的标准化框架时,在某些情况下,也可能无意中引入重大的内存漏洞。为了减少这种情况,强烈建议采用持续的质量保证措施和定期的渗透测试。

05

总结

虽然AUTOSAR为汽车软件开发提供了一个稳健而标准的框架,但由于使用不当,特别是在NvM API的变量管理中,仍然可能出现潜在的漏洞。随着汽车技术越来越复杂,有必要通过持续的质量保证和定期的渗透测试来加强软件安全性。这些实践,加上对正在使用的框架的深刻理解,可以帮助开发人员降低潜在的安全风险,并提高汽车系统的整体安全性。

来源:汽车功能安全

 end 

 精品活动推荐 

 专业社群 

部分入群专家来自:

新势力车企:

特斯拉、合众新能源-哪吒、理想、极氪、小米、宾理汽车、极越、零跑汽车、阿维塔汽车、智己汽车、小鹏、岚图汽车、蔚来汽车、吉祥汽车、赛力斯......

外资传统主流车企代表:

大众中国、大众酷翼、奥迪汽车、宝马、福特、戴姆勒-奔驰、通用、保时捷、沃尔沃、现代汽车、日产汽车、捷豹路虎、斯堪尼亚......

内资传统主流车企:

吉利汽车、上汽乘用车、长城汽车、上汽大众、长安汽车、北京汽车、东风汽车、广汽、比亚迪、一汽集团、一汽解放、东风商用、上汽商用......

全球领先一级供应商:

博世、大陆集团、联合汽车电子、安波福、采埃孚、科世达、舍弗勒、霍尼韦尔、大疆、日立、哈曼、华为、百度、联想、联发科、普瑞均胜、德赛西威、蜂巢转向、均联智行、武汉光庭、星纪魅族、中车集团、赢彻科技、潍柴集团、地平线、紫光同芯、字节跳动、......

二级供应商(500+以上):

Upstream、ETAS、Synopsys、NXP、TUV、上海软件中心、Deloitte、奇安信、为辰信安、云驰未来、信大捷安、信长城、泽鹿安全、纽创信安、复旦微电子、天融信、奇虎360、中汽中心、中国汽研、上海汽检、软安科技、浙江大学......

人员占比


公司类型占比


更多文章

不要错过哦,这可能是汽车网络安全产业最大的专属社区!

关于涉嫌仿冒AutoSec会议品牌的律师声明

一文带你了解智能汽车车载网络通信安全架构

网络安全:TARA方法、工具与案例

汽车数据安全合规重点分析

浅析汽车芯片信息安全之安全启动

域集中式架构的汽车车载通信安全方案探究

系统安全架构之车辆网络安全架构

车联网中的隐私保护问题

智能网联汽车网络安全技术研究

AUTOSAR 信息安全框架和关键技术分析

AUTOSAR 信息安全机制有哪些?

信息安全的底层机制

汽车网络安全

Autosar硬件安全模块HSM的使用

首发!小米雷军两会上就汽车数据安全问题建言:关于构建完善汽车数据安全管理体系的建议

谈思实验室 深入专注智能汽车网络安全与数据安全技术,专属汽车网络安全圈的头部学习交流平台和社区。平台定期会通过线上线下等形式进行一手干货内容输出,并依托丰富产业及专家资源,深化上下游供需对接,逐步壮大我国汽车安全文化及产业生态圈。
评论 (0)
  • 文/Leon编辑/cc孙聪颖2025 年全国两会正如火如荼地进行,这一备受瞩目的年度盛会,再度成为社会各界聚焦的核心。会议期间,代表们积极建言献策,诸多建议迅速引发舆论热潮,频繁登上热搜榜单。其议题范畴极为广泛,紧密围绕产业革新、民生保障与就业促进、教育优化升级、AI 技术规范与发展等多个关键领域展开探讨。这些热点议题不仅精准呼应了当下经济社会发展的紧迫需求,更深度契合了民众对美好生活的向往与诉求,因此在网络空间中激起千层浪,吸引了海量网民的高度关注 。全国人大代表、美的集团首席财务官钟铮,今年
    华尔街科技眼 2025-03-08 20:11 131浏览
  • 文/郭楚妤编辑/cc孙聪颖在这个瞬息万变的时代,流量的到来毫无预兆,不知哪片云会带来降雨。哪怕行事极为低调,也可能在不经意间成为舆论焦点。原本团结、紧张、严肃的全国两会,就因一位来自商界的人大代表周云杰的意外走红,变得活泼起来。周云杰是海尔集团董事局主席、首席执行官,在两会期间以一种意想不到的方式进入大众视野,成为网络热议的焦点人物。故事得从 3 月 5 日讲起。当日,第十四届全国人民代表大会第三次会议首场 “代表通道” 集中采访活动在北京人民大会堂举行。小米公司创始人雷军以全国人大代表的身份亮
    华尔街科技眼 2025-03-08 20:30 130浏览
  • 一、系统概述MYD-LD25X搭载的Debian系统包含以太网、WIFI/BT、USB、RS485、RS232、CAN、AUDIO、HDMI显示和摄像头等功能,同时也集成了XFCE轻量化桌面、VNC远程操控、SWITCH网络交换和TSN时间敏感网络功能,为工业设备赋予“超强算力+实时响应+极简运维”的体验!类别名称描述源码TF-AArm Trusted Firmware 2.8OP-TEEOP-TEE 3.19BootloaderU-boot 2022.10KernelLinux Ke
    米尔电子嵌入式 2025-03-07 14:08 373浏览
  • 3月9日,海信电视举行“巅峰画质 影游旗舰”新品发布会,正式发布E8Q旗舰系列电视新品,搭载全球首颗信芯AI画质芯片H7、全新升级的黑曜屏Ultra、330Hz系统级高刷、U+Mini LED光晕控制系统、影院级帝瓦雷声学系统五大行业首发科技,为极致影游爱好者打造电视画质的巅峰之作。海信电视E8Q系列提供65/75/85/100/116英寸五个版本,其中E8Q Pro零售指导价为75英寸/13599元、85英寸/17999元、100英寸/27999元;E8Q零售指导价为65英寸/7499元、75
    华尔街科技眼 2025-03-09 20:52 128浏览
  • 深圳触觉智能RK3506开发板现已上市,开启预售!搭载瑞芯微RK3506B/J超低功耗工业处理器(1.5GHz三核A7+M0,主频1.5GHz);支持1280×1280显示、双百兆网口、星闪无线三模,板载高达2路CAN FD与5路串口。RK3506适用场景简介工业控制‌:RK3506适用于工业控制、工业通信、人机交互等应用场景。其多核异构架构(3xCortex-A7+Cortex-M0)和外设接口丰富,支持Buildroot、Yocto系统,适合轻量级HMI应用‌。‌工业通信‌:RK3506均支
    Industio_触觉智能 2025-03-07 10:04 165浏览
  •        深夜的公园里,当路灯熄灭后,传统监控摄像头只能拍出模糊的黑白画面,仿佛老式胶片电影里的场景。而搭载为旌瑶光ISP的摄像头,却能像猫科动物一样,在几乎全黑的环境中捕捉到行人衣服的颜色、树叶的纹理,甚至快速跑动的宠物狗毛发细节。这种从“黑白默片”到“全彩4K电影”的跨越,背后是为旌瑶光ISP对传统红外补光技术的颠覆性创新。一、传统方案之困:被红外光“绑架”的夜视世界        传统安防摄像头依赖红外
    中科领创 2025-03-07 16:50 526浏览
  • ​CS6212是一款可分别用于USB Type-C主机/显示端口源应用的带重定时的有源开关。这设备符合USB 3.2标准版本1.0和USB Type-C标准上的VESA DisplayPort Alt模式 1.0版,支持通过GPIO或12C进行灵活的模式切换。此设备支持USB 3.2第2x1代 运行速度高达10Gbps,DisplayPort 1.4运行速度高达HBR3 8.1Gbps。CS6212管脚分布及功能定义:CS6212支持重定时器训练,并支持USB 3.2标准中定义的状态状态机(RT
    QQ1540182856 2025-03-07 10:09 234浏览
  • Sub-GHz,即工作频段低于1GHz的无线通信技术,常见频段有315MHz、433MHz、868MHz与915MHz等。其可借助无线电波在自由空间传播的特性,把数据调制到射频载波上进行传输,达成物联网设备间的无线通信,是物联网设备实现高效、稳定、无缝交互的“通信基石”。典型射频信号(无线电波)收发电路简示在工业自动化、智慧城市、智慧农业与智能家居等物联网领域中,LoRa、Wi-SUN、Z-Wave、Sigfox等工业级通信协议大多运行在Sub-GHz频段。而正是通过Sub-GHz射频技术,传感
    华普微HOPERF 2025-03-07 11:39 263浏览
  • 在企业管理和职场环境中,权力是一个常被提及却又让人感到微妙的话题。有人觉得它充满吸引力,有人却对它避之不及。然而,不管你对权力的态度如何,理解它、掌握它,甚至善用它,都是职场成功的重要一环。今天,我们就来深入探讨权力的本质,特别是个人权力和社会权力的区别,以及如何在职场中逐步建立属于自己的影响力。权力的两种面貌:你掌控自己,还是掌控他人?说到权力,首先要区分它的两种类型。个人权力是你对自己生活的掌控感。比如,你能自由决定自己的职业方向,不用总是请示他人。这种权力让人感到踏实和满足,是我们在生活中
    优思学院 2025-03-07 15:56 324浏览
  • 近年来,越来越多的企业在5S管理的基础上,开始追求6S、7S甚至8S管理,仿佛S越多,管理就越先进,企业就越优秀。于是,6S增加了“安全”,7S又加上了“节约”,8S甚至引入了“学习”……看似更加全面,实则很多企业只是机械地增加S,却忽略了管理的核心目标:提升效率、降低浪费、优化工作环境。优思学院认为,5S本身已经是一套成熟的精益管理工具,它的核心理念不仅简单高效,而且易于实施和推广。如果企业只是为了赶时髦,盲目增加S,而没有真正理解5S的本质,那么这些额外的“S”很可能会变成管理上的负担,而不
    优思学院 2025-03-07 12:43 316浏览
我要评论
0
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦