充电桩漏洞挖掘实践

半年前写过一篇名为的 车联网安全基础知识之充电基础设施 概述文章,阐述了充电网络的结构与安全威胁。在写文章的时候研究了多款国外充电桩,挖掘了5个高危漏洞。将漏洞报送给相关方并协助进行漏洞修复工作。Bender 近日完成了漏洞处理,发布了漏洞公告。现在和大家分享下其中的部分漏洞。

寻找研究对象

在寻找研究对象的时候,发现国外不少充电桩有独立IP,暴露在公网。国内的充电桩暴露在公网的较少。于是选择了国外充电桩作为研究对象。虽然从充电桩查找网站上可以找到很多的充电桩,但这些大多是按照运营商来划分的,无法定位到充电桩的制造商。

image-20220428143421195

于是,换了一种思路。到充电桩联盟上去找有哪些充电桩制造与运营企业。幸运的是,很快就发现了 Ebee(本德尔子公司)。image-20220428144305061

在上述表中确定了,研究的范围。接下来需要找到具体的研究型号。在研究之前需要拿到固件,有些充电桩的固件是难以获取的,最终根据固件获取的难以程度确定了两个研究对象,Ebee(Bender) 与 Garo AB。他们有远程研究的两个共同的特征,公网可访问、固件可获取。虽然GARO没有在上述联盟中,后文会讲述到通过供应链关系,我们是如何找到 GARO 并展开研究的。

Bender 本德尔创建于1946年,总部位于德国,是专业从事低压系统漏电保护技术的专业厂商。德国本德尔公司早在上世纪八十年代即进入中国大陆市场。产品的应用领域涵盖了电动或混动汽车、能源生产和分配、可再生能源和建筑物技术以及其他各种工业领域的应用。Ebee 本德尔子公司,专注于充电桩控制器开发,为多个品牌充电桩提供充电控制器。

Garo AB 集团创建于 1939 年,总部位于瑞典。专注于新能源领域,2016年登陆 Nasdaq。

Bender CC系列充电控制器存在多个漏洞

img

EBEE CC系列充电控制器为 GARO、ENSTO、Bender 等企业的充电桩核心部件。充电控制器是充电桩的大脑,与上层通信负责远程连接云服务进行远程远控,下端与电气设备相连管控与汽车之间的充电。

充电控制器监视充电系统内部硬件,如仪表、用户接口板或插座。它的特点是紧凑的设计和尺寸,从而使充电系统智能化、小型化和减少成本。为了确保充电控制器能够通信,需要一个后端系统。鉴于大多数后端供应商严格坚持开放充电点协议(OCPP),充电控制器OCPP1.5和OCPP1.6兼容。所有在OCPP中特定的消息支持,以及一些供应商特定的扩展基于数据传输的消息。与供应商后端实现的集成测试,例如Vattenfall、Bosch、NTT和DRIIVZ已经成功执行。充电控制器可以作为一个始终连接到移动网络的系统运行。控制器支持2.5G 移动和4G UMTS移动网络。在线操作的连接要求SIM卡(不包括在交付中)。使用RFID模块,包括RFID读卡器和LED,可以方便地进行用户交互。充电是通过持有一个有效的RFID卡靠近阅读器开始的。在离线操作中,充电控制器无需授权可以随意充电,也可以基于RFID和授权的RFID卡授权本地白名单用户。

Ebbe 官网上并没有提供固件,我们根据充电桩的指纹特征找到使用 CC612 的另外一个厂商,该厂商固件不但可以下载,还提供了一些开发文档。这些开发文档,在我们的研究过程中起到了很多大的帮助。

CVE-2021-34601

从固件中发现存在 SSH 硬编码,但用户的权限为普通权限。利用 CVE-2021-34602 可以实现权限提升。

image-20220428145929244

CVE-2021-34602

使用 CVE-2021-34601 硬编码, 进入系统后发现了明文存储的 WEB 后台的账号与密码。并且普通用户也能够查看。登录后发现了存在命令注入漏洞。

image-20220428150416046

GARO 存在多个漏洞

研究这个漏洞是因为 ebbe 影响了 Garo A8 充电桩,但在验证的时候发现,GARO 其他型号的充电桩不受影响,特别是看到有些部分充电桩WEB后台甚至没有启用任何身份保护机制。在浏览后台管理系统的时候,在软件升级页面获取到了固件。

GARO Wallbox GLB/GTB/GTC 使用的 WiFi 模块(也充当主控TCU)是基于树莓派开发的。

image-20220428154315145

在 GARO 发现了多个漏洞,已分配三个CVE编号 CVE-2021-45876、CVE-2021-4587、CVE-2021-45878。

1. Without Authentication(CVE-2021-45878)

Lack of access control on the web manger pages that allows any user to view and modify information.

2. Hard Coded Credentials for Tomcat Manager(CVE-2021-45877)

A hardcoded credential in /etc/tomcat8/tomcat-user.xml, which allows attackers to gain authorized access and control the tomcat completely; Normal user can’t be modified or deleted the account .

3. Unauthenticated Command Injection(CVE-2021-45876)

The url parameter of the function module downloadAndUpdate is vulnerable to an command Injection. Unfiltered user input is used to generate code which then gets executed when downloading new firmware.

特别需要注意的是,未授权用户能够调用API /freecharge 接口实现免费充电。

image-20210919170834915

供应链安全

ebbe 充电桩控制器漏洞影响面

根据 ebbe 官网介绍,CC612充电控制器隶属于 Bender 集团。

image-20210717101441288

从固件中发现,除了用户使用的页面意外还有其他隐藏的管理页面。包括操作员/operator、制造外/manufacturer 外,以及一个开发页面/dev。

image-20220428151537682

根据如上的隐藏页面的充电桩 WEB 后台的指纹特征,确认受影响的充电桩包括:

  • Garo A8
  • Bender GmbH Co. KG CC612_2S0R
  • Chago(ENSTO) EVB100
  • etc

GARO log4j漏洞影响

GARO Wallbox GLB/GTB/GTC 使用了 log4j 组件,在 log4j 曝出漏洞中我们对该充电桩进行了验证, 虽然最终验证不受影响,但充电领域的软件供应链也应引起关注。

image-20220428155427689

漏洞管理

ebbe 作为充电控制器供应商,产品的漏洞会影响使用了此款充电控制器的所有充电桩。这对应的是闭源软件供应链安全。

log4j 影响十分巨大,但如何确定自己的产品是否受到影响,这是一个很难回答的问题。这对应的是开源软件供应链安全。

从对以上充电桩漏洞挖掘的经历,我们意识到了开源与闭源软件供应链对车联网安全影响程度之深。为解决车联网中软件供应链安全问题,不久之后,我们将推出车联网漏洞管理(协作)平台,敬请期待。

收到致谢

BENDER/EBEE 与 CERT@VDE 联合发布漏洞公告中对 奇安信星舆实验室 进行了致谢。

image-20220428153411278

相关连接