Tesla Powerwall是一种家用能源存储产品,它使用电池来存储太阳能电池板或电网的电力,从而确保用户即使在停电期间仍能继续供电。该产品的备份网关组件旨在提供能源管理和监视,并负责控制与电网的连接,检测中断并切换到备用电源。

本文旨在提高用户对将设备连接到互联网的隐私和安全风险的认识,我会在本文介绍特斯拉备份网关,并确定了特斯拉可以提高安全性和隐私性以帮助客户保护自己的一些关键领域。与这些设备相关的安全风险先前已由其他研究人员进行了探索,如下所述我们对此进行了进一步研究。

最新研究表明,有97个活跃的家庭/商业太阳能/电池装置(“发电厂”)连接到互联网,无需事先身份验证即可从中收集大量信息。这里的风险不仅仅是侵犯隐私。恶意攻击者也有可能导致采取某些措施,。考虑到我们谈论的是强大的电池,这种行为可能会造成重大伤害。

自2020年1月以来,我们已经跟踪了379个独立的Tesla Backup Gateway安装。其中,一部分是商业级的Tesla Powerpack(非常大的电池组)。尽管这些数字似乎很低,但可能导致严重危害的恶意活动的可能性很大,因此值得尽快强调和缓解。

Tesla Powerwall安装有多种组件,包括为备用电池断路器安装的子面板,一些交流断开开关、太阳能逆变器、电源断路器的主子面板以及最后的Tesla网关。 Tesla Backup Gateway奇热是这种组合中最有趣的技术之一,因为它可以有效地管理具有通用软件堆栈的三部分电源(电池,电网和太阳能),并确定:

1.何时给电池充电?

2.何时向电网发送能量?

3.应该向房屋提供什么能源/混合能源(“负荷”)

为了服务客户,特斯拉对你的能源安装进行监控。为此,Tesla Backup Gateway通过三种不同的联网方案与Tesla通信:

· 无线网络

· AT&T移动(无线)

· 以太网

访问数据

以我的经验,Tesla Energy安装人员更喜欢将备份网关通过Wi-Fi连接到你的家庭网络,而AT&T无线电仅用于备份通信。顺便说一句,如果你还没有使用v局域网分割或其他网络隔离模型,那么现在是使用这些模型的好时机。Tesla Backup Gateway公开了一个带有在标准HTTPS端口443上运行的具有自签名证书的Web服务器,该服务器在你的本地网络上侦听。毫不奇怪,这也使得在互联网上非常容易找到这些服务器。 Tesla鼓励通过其备份网关的文档与网关进行交互。 Web界面类似于文档站点上的示例,显示了所有已连接的接收器和电源的电流:

你可以从界面中收集到丰富的信息,了解你的房子用了多少电,电网消耗多少,电池电量是多少以及一些所有权信息(“Doe的Powerwall”)。但是,事实证明,有很多丰富的API可以为该Web UI提供支持,这些API由GitHub的Vince Loschiavo非正式记录。

API调用显示,可以从网关的无身份验证中收集很多信息。例如,你只需使用cURL查询/ api / meters / aggregates端点即可确定太阳能、电池、电网和家庭能源的统计信息:

这些数字本身就会告诉你一些有趣的事情,例如:

Solar / instant_power:5379为5379瓦,这意味着在运行命令时,太阳能电池阵列将产生5.3kW的能量。

Load/instant_power:这里的“Load”指的是房屋,它使用了大约500瓦的能源(0.5 kW)。

Site/instant_power:“Site” 指的是电网,由于电池板产能过剩,以及powerwall电池已满,因此已发送了4.8 kW的能量。

频率:这是交流电源供应的频率。在这种情况下,60赫兹在北美很常见。在其他地方,比如英国,你会看到50赫兹。

深入研究,我们可以检查一些其他有趣的端点:

这可以告诉我们所处的时区,在Web UI中显示的网站名称以及网格代码,这些代码似乎可以控制诸如各个组件的频率之类的事情。最后,我们可以确定我们也属于哪个实用程序。

潜在危害

我不会在这里完全复制Vince的成果,强烈建议你阅读GitHub上的文档,以了解更多详细信息。可以说,使Tesla Backup Gateway暴露在互联网中会带来相当广泛的安全性和隐私隐患。

从理论上讲,备份网关管理的能源的电压、周期和其他设置以及与之连接的电池都是可配置的。如果这些设置可能被篡改,则可能损坏电池甚至电网。但是,出于明显的道德、法律和金钱原因,我不会深入研究这个领域。

薄弱凭证

即使网关得到了适当的保护,并且所有API都需要身份验证,我们的下一个发现还是无关紧要的:弱默认证书。家庭用户和安装人员可以使用弱凭证登录到Tesla备份网关,这在Tesla网站上有概述。

对于“首次登录”,这似乎是在网关重新引导(新安装或固件更新之后)之后,用户可以使用任何电子邮件地址以及网关序列号的后五个字符进行登录。大多数用户不太可能是第一次登录,因为登录也会停止Powerwall /电池操作。

通过身份验证后,可以使用API调用获取完整的序列号,以供后续访问。由于我的代码中包含字母数字字符,因此对于五个字符的首次登录,暴力破解的最坏情况是10位数字(0–9)加26个字母字符(A-Z,只使用大写),这使我们得到(26 + 10) )^ 5 = 6040万个密码组合。尽管从测试来看,似乎没有任何最大的登录尝试锁定,但从表面上看,可能的密码绝对是理论上的数目,这使得似乎似乎很难对Web服务器进行强行强制。但是,有许多技术可以将数字减少到足够低的程度,以使其可以被暴力破解。

从纯粹的物理角度来看,重要的是要注意打印在设备上的序列号,所以简单地在一个人的房子外面侦察,找到网关并拍下包含序列号的标签是切实可行的。乍一看,这似乎很难做到。但是,许多县级网站都会发布特斯拉太阳能和Powerwall家用安装许可证到互联网,例如在加利福尼亚州埃尔多拉多县所做的事情。这些许可证可以提供大量信息,以作为目标的备用网关的位置(尽管某些许可证仅适用于太阳能)独步以及设备安装地址的物理位置,从而使攻击得以继续。

但是,你甚至不必离开汽车,因为网关还会广播使用相同密码(序列号)的Wi-Fi接入点, Wi-Fi接入点SSID命名方案包括序列号(TEG-XXX)的后三个字符,从而进一步减少了暴力访问首次登录密码所需的工作量(你只需要猜测第一个两个字符,这可能是1296次尝试的最坏情况)。使用Wig-Fi OSINT数据库(例如Wiggle.net),找到更多的SSID(需要免费帐户)很容易,这使我们对备用网关使用的模式以及存在的模式有更深入的了解Tesla Backup Gateway广播基于SSID和MAC--00:23:A7或88:DA:1A的Wi-Fi SSID,与在网关中制造Wi-Fi芯片的Redpine Signals相关联。我没有尝试过,但是你可以将其与物理安装的家庭住所的纬度和经度粘合在一起,以在强行强制之前优化设置时间。

具有MAC 00:23:A7...的Tesla备份网关

具有MAC 88:DA:1A…的Tesla备份网关

此外,当备份网关连接到局域网时,它会使用其完整的序列号向网络广播其主机名。众所周知,某些家用路由器(例如Xfinity路由器)会将整个MAC / IP /主机名信息集从局域网泄漏到公共互联网。我们已经观察到泄漏发生的一个实例,最后,特斯拉应用程序还会显示完整的序列号,而且特斯拉账户还不支持MFA,而MFA使得网络钓鱼成为另一种可行的攻击载体。

值得指出的是,使用这些方法登录属于其他人或未经授权的网关可能会违反《计算机欺诈和滥用法》(CFAA)。即使很容易猜到凭证,也是如此。因此,最好在你拥有的或你有权访问的设备上进行任何测试。详细介绍这些绕过登录方法的目的是鼓励公众意识到风险。

事实证明,这些设备绝对是在互联网上的人都可以直接访问这些设备,并尝试登录并使用该配置。与大多数在互联网上提供服务的设备一样,使用简单的Google服务即可轻松找到它们。HTTP标题标签和自签名证书是找到它们的一种可靠、简单的方法。自2020年1月以来,我们在世界各地追踪了至少379个这样的例子:

灰色图块表示该区域没有数据,而彩色图块表示该区域的特斯拉备份网关的大致数量。当然,由于特斯拉总部位于美国加利福尼亚州,因此对美国用户的影响会更大。的确如此,这种情况集中在特斯拉的后院/家中:

当查看公开暴露的Tesla Backup Gateway设备时,对欧洲的看法也很有趣。最值得注意的是,在意大利有很多:

商用Tesla Powerpack也暴露在互联网上

在调查暴露的Tesla Backup Gateway设备时,我们还遇到了一个异常:只需抓取/ api /就可以从其中一些设备的Web服务器返回404响应。通过进一步研究,我们发现这是因为该设备实际上并不是网关设备,而是特斯拉Powerpack。

下面是展示给你的用户界面示例,仅浏览到服务器/在服务器上(在本例中,通过端口10443)。使用简单的代数,该电池的大小约为220kWh (114kWh/.52)。为了给你提供参考,Tesla Powerwall 2电池的大小为14kWh。所以,这个公开的Powerpack大约是一个家用powerwall电池的15倍。

在同一主机上,通常存在另一个接口,该接口在一种情况下在标准HTTPS端口443上运行:

更让人担心的是,这些设备还可以使用modbus/dnp3。在这种情况下,该特定服务器还在默认端口502上公开了Modbus,尽管DNP /20000似乎已关闭(在某些特斯拉文档中,这可能是由于DNP只暴露在串行上)。

特斯拉在其网站上公开记录了这些协议:

总结

我对互联网上这些设备的数量感到震惊,如上所述,数量可能相对较少,但是鉴于设备是处理高电压和高电流的大型电池,恶意操作可能会导致潜在的物理伤害。即使它们不是通过配置较弱的的家庭路由器连接互联网,也有可能对这些路由器进行定位,并从这些路由器转到局域网中进行控制。

尽管在互联网上放置Tesla Backup Gateway或Tesla Powerpack可能很诱人,但我们应该记住,互联网本身就是嘈杂的,大量未经请求的流量会定期通过各个端口。绝对不能假定将服务放在非标准端口上会阻止发现该服务,zmap和masscan等项目已证明,可以在五分钟之内扫描整个IPv4互联网。

此外,在未来十年中,分散式能源系统和网络连接的影响将变得越来越明显。太阳能市场竞争日趋白热化,一些州,例如加利福尼亚州,已经通过了法律,开始要求能源生产来自现场或非现场的太阳能农场。诸如NERC CIP之类的能源标准将在未来受到怎样的影响?电网的足迹现在包括分散的“小型发电厂”,它们会形成一个网络系统。

为了进一步强化这些设备,并帮助客户保持安全,特斯拉可以要求安装人员在初始配置时设置密码,而不是默认设置。另外特斯拉还强烈建议在用户帐户上实现双因素身份验证。在本文发布之前,我们就此事与特斯拉的产品安全部门取得了联系,他们告诉我们他们正在努力进一步缓解某些即将推出的安全功能中的意外漏洞。

特斯拉Powerwall网关可能受到黑客攻击相关推荐

  1. 特斯拉频繁遭遇黑客攻击,智能汽车都存在安全“漏洞”?如何查找?

    云驰未来是专注智能网联汽车信息安全的产品技术公司,近期重磅发布了国内第一款高度自动化的威胁分析与风险评估(TARA)工具--InTARA,解决了主机厂在TARA分析工作的相关痛点及难题. 随着智能网联 ...

  2. CTF---安全杂项入门第三题 这是捕获的黑客攻击数据包,Administrator用户的密码在此次攻击中泄露了,你能找到吗?...

    这是捕获的黑客攻击数据包,Administrator用户的密码在此次攻击中泄露了,你能找到吗?分值:30 来源: 2014sctf 难度:难 参与人数:3918人 Get Flag:384人 答题人数 ...

  3. 使用Python进行汽车黑客攻击:泄露GPS和OBDIICAN总线数据

    本文会介绍一种基于Python用于从OBDII端口发送和接收CAN消息的设备,还可以从行驶中的车辆获取实时GPS坐标.所有的CAN和GPS数据都有可能被泄漏到云中,因此可以通过Web浏览器对汽车进行远 ...

  4. 黑客攻击入侵流程及常见攻击工具

    黑客攻击入侵流程及常见攻击工具 1. 踩点 (Footprinting) 踩点目的: 主动获取信息情报, 确定目标域名系统, 网络地址范围, 名字空间, 关键系统,如网关.邮件.服务器等设置 踩点相关 ...

  5. 网络安全之几种常见的黑客攻击手段

    常见的黑客攻击手段 常见的攻击手段有:ARP攻击,DoS攻击,DDoS攻击,SYN攻击,缓冲区溢出攻击,等等.下面我将对这几种攻击做个介绍. 1 ARP攻击 ARP(Address Resolutio ...

  6. 网络安全技术与黑客攻击威胁

    网络安全技术与黑客攻击威胁 作者:彭铮良 1.1 引言 企业网络安全的核心是企业信息的安全.为防止非法用户利用网络系统的安全缺陷进行数据的窃取.伪造和破坏,必须建立企业网络信息系统的安全服务体系.关于 ...

  7. 易宝支付声明称遭遇大规模黑客攻击

    1月16日消息,易宝支付昨日发布声明表示,从14号下午16:20开始,易宝支付官方网站及支付平台服务器遭遇大规模黑客攻击,截止发稿前,攻击流量已超过10G,目前官网网站依然无法访问. 易宝支付发言人表 ...

  8. 任天堂遭史上最严重黑客攻击:完整源代码、设计文档及技术演示泄露

    十三 发自 凹非寺 量子位 报道 | 公众号 QbitAI 任天堂的这一波泄露事件,可以说是相当惨烈. 多少文件被泄露? 超过2TB. 涉及什么内容? 完整源代码.设计文档,近乎一切用于构建Wii主机 ...

  9. 全球40起黑客攻击或与CIA有关 长角牛黑客组织打卡“上班”

    4月11日讯 安全公司赛门铁克宣布,从16个国家遭遇的40起攻击中分析,这些攻击者使用的工具与"Vault 7"文件中揭露的CIA间谍战术中暴露的工具相当类似. 例如Fluxwir ...

最新文章

  1. 固态硬盘怎么看出厂日期_闲置的M.2固态硬盘怎么办?做个小巧便携高速的移动固态硬盘吧...
  2. nyoj-496-巡回赛--拓扑排序
  3. CodeForces-589B(思维/排序)
  4. boost::mpl::negate相关的测试程序
  5. 【Linux网络编程】无连接和面向连接协议的区别
  6. 简单的聊聊,顺便招前端
  7. CommonJS/AMD/CMD/UMD
  8. html5 canvas获取坐标,HTML5 canvas坐标
  9. 前端学习(805):简单数据类型和复杂数据类型
  10. bitset与取数凑数类问题
  11. 元组可以直接添加进数据库吗_数据库篇-第一章:数据库基本概念
  12. 小学阅读方法六种_小学数学速算六种方法
  13. Visual C# 打造 “浏览器”
  14. 网游中的网络编程3:在UDP上建立虚拟连接
  15. Boost Thread 编程指南、Boost线程入门教程
  16. win8普通版连接远程桌面---RDPWrap
  17. openvswitch console输出
  18. 单片机两个正玄波信号的相位差计算_【案例】南宁市首个多品牌信号机互联绿波带“新鲜出炉”...
  19. 好用免费的电脑摄像头录视频软件分享!
  20. python中地图测距

热门文章

  1. 碎片化的时代,如何学习
  2. Swift - lazy 修饰符和lazy 方法
  3. Android第三方开源对话消息提示框:SweetAlertDialog(sweet-alert-dialog)
  4. Linux文件系统体系结构
  5. 八荣八耻(超强暴笑豪华版)
  6. 热烈祝贺上汽通用五菱ASPICE项目通过CL 2级评估
  7. Day5_HTML+CSS+JS——RGB三原色
  8. Java创建文件夹及文件
  9. zigbee现存网络下更换协调器
  10. 奶牛家族(斐波那契数列的快速幂乘矩阵算法)