模糊测试面面观 | 电动汽车充电桩安全漏洞案例分享

news2024/12/29 11:04:13

在上一期我们讲了针对车载以太网DOIP协议详细阐释在实际过程的漏洞发掘过程,本期我们将继续延展,探讨电动车充电系统的安全漏洞。开源网安在基于 GB/T 27930-2015通信标准的电动汽车充电桩中,采用渗透测试、模糊测试和数据流分析等多种安全漏洞挖掘方法,成功发现了三个主要的安全漏洞,本期我们就对此三大安全漏洞进行深入阐述。

欺骗放电漏洞

电动汽车成为汽车消费的趋势,许多车辆尤其是越野SUV会配备车辆对外放电功能,以便于在野外使用家用电器,如风扇、照明、手机充电器等。也有很多车辆未配备对外放电功能,通过深入研究,我们发现充电系统其实存在着可以被利用伪造来自充电机的通信内容的漏洞。攻击者可以通过这种方式欺骗汽车进入充电状态,使得电池包直接对外暴露。这样可能会导致电池包被恶意利用,甚至在极端情况下发生火灾。

01

所需设备

放电插座、24V锂电池、放电装置

02

利用过程

  1. 12V稳压电源接在A+/A-作为辅助电源供电,将CC2使用1kΩ电阻下拉至设备地,CC1使用1kΩ电阻上拉至6V,激活BMS进入充电就绪状态。

  2. 按照正常充电流程,根据BMS的应答模拟充电机发送消息,诱使BMS打开电池包的继电器。

  3. 保持与BMS的正常通讯而不中断,放电插座处直接对外输出电池包的电压,可逆向对外放电。

03

测试结果

汽车进入充电状态并打开BMS继电器开关,电池包直接对外暴露。

04

修复建议

  1. 对通讯消息进行加密

  2. 完善BMS与充电机的身份认证机制

中间人攻击漏洞

电动汽车充电依据的标准《GB/T 27930-2015 电动汽车非车载传导式充电机与电池管理系统之间的通信协议》并未考虑信息安全问题,我们注意到现有的通讯总线存在被破坏的风险。攻击者可以在中间插入装置,解析、向外发送、篡改来自电池管理系统和充电机的全部信息。这样的行为可能导致信息泄漏、过压过流、异常停止充电等重大问题,严重威胁车辆和使用者的安全。

01

所需设备

12V转3.3V 降压器、CAN中继通讯设备、上位机设备(手机、PC)。

02

利用过程

  1. 利用充电枪上的A+/A-提供的12V辅助供电为中继通讯设备供电

  2. 利用CAN中继通讯设备截获来自BMS和充电机的全部CAN数据帧,经过缓存后转发至对端

  3. 通过ID判断当前数据帧的PGN,根据攻击者的篡改需求对数据部分进行修改

  4. 设备在获取完整的消息后使用Wi-Fi、串口等途径发送给攻击者

03

测试结果

造成信息泄露、过压过流、异常停止充电等问题。

修改充电电流前:191A

修改充电电流后:4A

04

修复建议

  1. 对通讯消息进行加密

  2. 完善BMS与充电机的身份认证机制

  3. 去除12V辅助供电的支持,使得BMS能够独立工作

  4. 优化充电枪接口的形状,杜绝恶意电路的插入

侧信道监听漏洞

电动汽车充电过程种的通信采用CAN总线通信协议,CAN总线作为差分信号线,在传输数据的时候会泄露电磁信号。我们发现充电接口处的CAN线缆由于分开较大距离且屏蔽不佳,存在被攻击者利用电磁探头侦测总线电平变化的风险,进而逆向推断当前总线的电平,获取当前传输的信息。这种方式可能导致关键信息的泄露,给车主造成极大的不便和风险。

01

所需设备

电磁探头、12V稳压电源、自研解析设备、上位机设备(手机、PC等)。

02

利用过程

  1. 在充电枪处放置电磁探头,探头圆环所在平面平行于CAN差分总线对所在的平面

  2. 激活充电过程,探头会侦测到CAN总线电平跳变瞬间产生的的电磁脉冲

  3. 经放大器放大后传入ADC转换为数字信号

  4. 经过阈值处理等操作还原真实的CAN总线 电平

  5. 通过进一步的帧解析,以CAN数据帧的格式传入MCU

  6. MCU基于GB/T 27930-2015 将CAN数据帧组装为消息并进行进一步的解析,发送至攻击者

03

测试结果

采集到的电磁信号特征,通过非物理接触改造充电线的方式获取通信数据。

04

修复建议

  1. 对通讯消息进行加密

  2. 强化充电接口处的电磁屏蔽性能

  3. 设计差分总线的连接,减小信号线对的间距

解决方案

面对这些挑战,我们积极行动并提出解决方案。针对第一个漏洞,我们正在研究加强加密和身份验证的措施,以防止攻击者篡改通信内容或伪造通信协议。用户也可以通过对系统进行模糊测试,发现更多的潜在漏洞,如输入验证错误、缺乏身份验证等,以及评估系统在面对各种攻击场景时的安全性,以确保通信内容的完整性和准确性。

对于第二个漏洞,我们正在研究如何改进物理层的防护措施,如增强CAN线缆的屏蔽,减少电磁脉冲和其他外部信号的干扰。用户亦可以通过模糊测试向系统中输入异常信号或干扰信号验证系统的物理层防护能力,并发现潜在的漏洞。并根据结果针对性改进以提高系统对外部干扰的抵御能力。

总之,通过模糊测试的应用,我们能够更全面地评估和提高系统的安全性,发现可能存在的漏洞,并提供相应的改进措施。模糊测试可以模拟各种攻击场景,帮助用户检测和验证加密和身份验证漏洞,以及物理层防护漏洞。通过及时发现和解决这些漏洞,可以确保电动汽车充电系统在面对各种安全威胁时能够保持安全可靠。

总结

在车联网安全中,模糊测试是一种重要的技术手段,它能够帮助我们发现潜在的安全漏洞并评估系统的抵御能力。通过向系统中输入异常或无效的数据,模糊测试可以模拟攻击场景,发现系统可能存在的漏洞。在智能网联汽车领域,模糊测试可以帮助我们发现和修复各种安全漏洞,如缓冲区溢出、输入验证错误等。通过模拟各种攻击情景,评估系统的安全性,并提供有效的修复措施。除了发现漏洞,模糊测试还可以帮助我们评估系统对各种攻击的抵御能力。通过模拟真实的攻击场景,包括网络攻击和物理层攻击,模糊测试可以测试系统的抗攻击能力,以确保智能网联汽车在面对各种安全威胁时能够保持安全可靠。

随着智能网联汽车的发展,模糊测试将成为车联网安全领域不可或缺的工具之一。开源网安将继续深入研究和应用模糊测试技术,以保护智能网联汽车的安全性,并为智能网联汽车的发展贡献力量。通过长期进行安全测试和改进,确保人们能够安心享受智能网联汽车带来的便利,构建一个更安全可靠的车联网生态系统。

推荐阅读:

模糊测试面面观 | 车载以太网协议DOIP模糊测试实践案例分享

模糊测试面面观 | 揭示真实世界中的漏洞发现过程

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1098456.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

易天光通信推出100G BIDI ER光模块最新解决方案

随着数字信息时代的快速发展,网络通信技术的迅猛进步成为推动科技创新和产业升级的重要引擎之一。作为光通信行业的新秀,近期易天光通信推出了全新的100G BIDI ER1 Lite光模块和100G BIDI LR1 Lite光模块,助力崭新的未来网络建设。 易天光通…

45.复购率问题求解

思路分析: (1)近xx天,最大日期肯定就是最新的一天,故先用max(order_date) over() today计算当天日期 (2)过滤出最近90天的订单并且按照user_id,product_id分组求购买次数; &#xff…

逐字稿 | 视频理解论文串讲(上)【论文精读】

大家好,前两期我们讲了视频理解领域里的两篇经典的论文,一个是双流网络,第一个是 I3D 网络,所以说对视频理解这个问题有了个基本的了解。 那今天我们就从 2014 年开始,一直到最近 2021 年的工作,我们一起来…

攻防世界题目练习——Web引导模式(三)(持续更新)

题目目录 1. mfw2.3.4.5. 1. mfw 进去看到网页和页面内容如下: 看到url的参数 ?pageabout ,我以为是文件包含什么的,反复试了几次,想用 …/…/…/…/etc/passwd ,但是发现.似乎被过滤了,实在不知道怎么做…

转行学网络安全,月薪6k到30k,给兄弟们一些个人建议

前言: 网络安全是指网络系统的硬件、软件及其系统中的数据受到保护,不因偶然或恶意原因而遭受破坏、更改、泄露,系统连续可靠正常地运行,网络服务不中断。 截至2018年8月,我国网民规模达8.02亿人,互联网高…

PHP 生成微信小程序码,并存储图片

背景 当前鄙人接手的项目,需要在设备机器上展示 小程序二维码 为了记录扫码用户从哪台机器注册的 那么,实现方案就是:在小程序码中,绑定设备编号参数 在此,记录一番实现步骤 … 小程序开发文档 - 【 获取不限制的小程…

数据结构-----红黑树简介

目录 前言 1.什么是红黑树? 2.为什么需要红黑树?(与AVL树对比) 3.红黑树的特性 前言 在此之前我们学习过了二叉排序树和平衡二叉树(AVL树),这两种树都是属于搜索树的一种,那么今天…

计算机毕业设计 无人智慧超市管理系统的设计与实现 Javaweb项目 Java实战项目 前后端分离 文档报告 代码讲解 安装调试

🍊作者:计算机编程-吉哥 🍊简介:专业从事JavaWeb程序开发,微信小程序开发,定制化项目、 源码、代码讲解、文档撰写、ppt制作。做自己喜欢的事,生活就是快乐的。 🍊心愿:点…

FSM人物动画状态机

人物动画状态机 介绍FSM角色模型的设置角色动作的设置角色动画控制器的设置书写角色动画的具体状态,实现缓动起步的FSM总结 介绍 摇杆我就不介绍了,之前我在这里面讲过怎么用摇杆,摇杆连接。 这里我先说下什么是FSM人物动画状态机&#xff0…

文心一言 VS 讯飞星火 VS chatgpt (114)-- 算法导论10.2 7题

七、用go语言,给出一个 O(n)时间的非递归过程,实现对一个含 n个元素的单链表的逆转。要求除存储链表本身所需的空间外,该过程只能使用固定大小的存储空间。 文心一言: 在Go语言中,你可以使用迭代方法来反转一个单链表…

【C++】:string用法详解

朋友们、伙计们,我们又见面了,本期来给大家解读一下有关Linux的基础知识点,如果看完之后对你有一定的启发,那么请留下你的三连,祝大家心想事成! C 语 言 专 栏:C语言:从入门到精通 数…

算法通过村第十四关-堆|黄金笔记|中位数

文章目录 前言数据流中的中位数的问题总结 前言 提示:我独自度过了太多的时光,沉默已成一种习惯。 帕瑞尔马卡姆《夜航西飞》 这个是一个比较难的题目,要不尝试一下看看。 数据流中的中位数的问题 参考题目地址:295. 数据流的中位…

身为程序员,你很有必要了解一下JNPF

一、JNPF是什么? JNPF是一个“低代码”的可视化编程平台,采用J2EE技术体系,基于Spring Boot框架封装的快速开发平台,包含多种开箱即用的功能,具备RBAC、自动生成代码、SaaS多租户等多个功能和模块。 JNPF,重…

真人现在猫鼠躲猫猫游戏搭建流程:专业思考与深度思考

真人现在猫鼠躲猫猫游戏是种充满乐趣和挑战的团队竞技游戏。本文将从游戏规则设计、场地布置、技术实现和用户体验等方面,深入探讨人现在猫鼠躲猫猫游戏的搭建流程,并结合专业思考与深度思考,为游戏搭建提供全面指导。 一、游戏规则设计&…

【uboot】Uboot的启动流程

引言 在驱动岗位上,每一位新员工刚入职期间都需要理解和掌握uboot,但深入的理解代码往往需要耗费大量的时间去反复阅读。本文希望对uboot进行尽可能详细的解析,帮助其他人更快的掌握和理解uboot源码。 准备工作 uboot源码 本文是基于Hi35…

Redux详解(二)

1. 认识Redux Toolkit Redux Toolkit 是官方推荐的编写 Redux 逻辑的方法。 通过传统的redux编写逻辑方式,会造成文件分离过多,逻辑抽离过于繁琐(具体可看上篇文章 Redux详解一),React官方为解决这一问题,推…

【设计模式】单例模式、“多例模式”的实现以及对单例的一些思考

文章目录 1.概述2.单例模式实现代码2.1.饿汉式单例2.2.懒汉式单例2.3.双检锁单例2.4.静态内部类单例2.5.枚举单例 3.对单例的一些思考3.1.是否需要严格的禁止单例被破坏?3.2.懒汉式真的比饿汉式更佳吗?3.3.单例存在的问题 4.其他作用范围的单例模式4.1.线…

空调原理与结构、制冷剂类型及相关先进技术

一、空调相关知识 1. 空调定义 空调是指利用各种技术和设备对某一空间内空气的温度、湿度、洁净度和流速进行调节,以满足人们对舒适性要求或不同工艺环境要求。 2. 基本原理 蒸发吸热、冷凝放热 压力越低沸点越低 3. 空调主要结构 空调主要由压缩机、冷凝器、…

求臻医学:MRD的十八般武艺 AI双驱动流派

作为专注于肿瘤精准诊疗领域的国家高科技企业,求臻医学依托《中国肿瘤基因图谱计划》和《肿瘤精准医学大数据平台》项目,围绕肿瘤诊断监测、预后评估、肿瘤早筛、遗传筛查、药物研发服务等场景,开发了针对肺癌、结直肠癌、胃癌、前列腺癌等实…

【Qt高阶】Qt D-Bus 简介【2023.10.16】

Qt D-Bus介绍 简介总线技术名词消息(阐述总线的消息内涵)服务名对象路径接口备忘表(便于记住名字的格式)调试 麒麟V10 与D-Bus 简介 D-Bus 是一个进程间通信(IPC)和远程过程调用(RPC)机制,最初是为了 Linux 开发,用来取代现有的竞争的 IPC 解决方案,提供…