Eversource 电动汽车补贴计划泄露马萨诸塞州客户数据
原文由 Michael Lynch 于 发布,订阅该博客
我最近为安装电动汽车充电桩申请了一笔补贴,却发现我的电力供应商 Eversource 竟然在公开泄露申请者的个人信息,包括:
- 姓名全称
- 车辆登记证(含车牌号和车辆识别代号)
- 家庭住址
- 电子邮箱地址
- 电话号码
后文我会讲述我是如何发现这个漏洞的来龙去脉,如果你只想了解安全漏洞本身,可以跳至相关章节。
为什么补贴申请流程这么复杂?
我住在马萨诸塞州,州政府有一个叫 Mass Save 的项目——你在能源账单中缴纳一笔费用,这笔钱会被用于资助可持续能源计划。例如,如果你为房屋做了保温改造以提升能效,Mass Save 就会补贴一部分费用。
我最近给自己的电动汽车安装了充电桩,发现 Mass Save 可以为此报销 700 美元的安装费用。太好了!
Eversource 是我的电力公司,所以我得通过它来申请这笔补贴。我上网申请,本以为 10 分钟就能搞定,结果光是填写那些没完没了的表格就花了一个多小时。
一上来,他们就要我填写姓名、地址和 Eversource 账户号码。这些信息 Eversource 本来就都有,还要我再填一遍,虽然多余,但也算了。
越往后填,他们问的问题就越离谱,比如:
- 你开的是什么型号的电动汽车?
- 在哪里买的?
- 花了多少钱?
- 车辆登记证在哪里?
- 是谁安装的充电桩?
- 电工的地址是什么?
- 充电桩具体安装在房屋的哪个位置?
我就为了证明自己买了个充电桩,有必要问这些吗?整个流程比 Eversource 宣传的“四步补贴流程”复杂得多。
我们需要你充电桩的 MAC 地址
在补贴申请中,Eversource 要求提供的最离谱的信息,就是充电桩的 MAC 地址。什么?
MAC 地址是充电桩上 Wi-Fi 芯片的唯一标识。它又不会印在设备上,我要怎么找到它?
我是一名软件开发者,也算是个家庭网络爱好者,所以还能在路由器的管理后台里找到充电桩的 MAC 地址,但我真不知道他们指望普通人怎么去完成这一步。
不对,重来
提交完所有材料一周后,我收到了 Eversource 的一封邮件:

Eversource 称我随申请上传的照片和文件不正确。
看来,是我的申请表填错了。
Eversource 不认可我上传的电工发票,理由是上面没有标注“已全额付清”。平时找承包商干活,付款后对方很少会给我一张标有“已付清”的发票,所以我只好又去麻烦忙得不可开交的电工,让他重新开票。
是我漏看了表格里的这项要求吗?没有,我回到申请门户重新查看了关于发票的说明,上面只写着“电线改造的承包商发票”,根本没提“已付清”字样。

补贴申请表从未提及发票需要标有“已付清”字样。
那我的照片又有什么问题?是我忘了上传充电桩的照片吗?
没有,申请里明明有那张照片,充电桩清晰可见,序列号的照片也清楚易读。难道他们以为我能把 MAC 地址拍出来?
我发邮件问他们照片到底哪里不对,并解释 MAC 地址是没法拍照的。
一周后收到了回复。他们没有解释为什么驳回我其他的照片,只是让我在充电桩的手机 App 里找到 MAC 地址,然后截个图上传。好吧……
Eversource 电动汽车补贴计划中扭曲的激励机制
我总觉得 Eversource 的补贴计划有点不对劲。每一步都像是在故意用繁琐的文件和暗藏的陷阱来刁难我。
马萨诸塞州是不是有什么猫腻?难道没有发出去的补贴,最后都归 Eversource 所有了?
我打电话给负责监管电动汽车补贴计划的马萨诸塞州公用事业部(DPU),问问到底是怎么回事。为什么 Eversource 把申请补贴搞得这么难?
DPU 的工作人员说,她也听到过类似投诉:有人被驳回的照片,在申诉时用完全相同的照片又通过了。听起来 Eversource 像是先用自动化系统审核照片,而复审时则更准确,或者更可能是由真人来查看照片。
那么,在这些情况下 Eversource 是不是就把补贴款私吞了?“不是的,”DPU 的工作人员说,“申请失败的话,Eversource 一分钱也拿不到。而且即便是申请成功的案例,Eversource 也只是先行垫付补贴,然后再向州政府申请报销。”
等等,如果 Eversource 只是经手转一笔钱,那他们为什么要来运营这个项目?
DPU 的工作人员解释说,Eversource 希望人们购买电动汽车。如果马萨诸塞州的居民都开上了电动汽车,他们花的钱就会从汽油——Eversource 并不销售——转向电力——而 Eversource 在许多城市拥有独家售电权。
这下我就明白了:Eversource 并不是想让客户的补贴申请失败,他们只是根本不在乎这些申请。
等到客户向 Eversource 申请补贴时,客户早就已经买了电动汽车。未来好几年里,客户都得向 Eversource 多买电。到了这个阶段,Eversource 已经从客户身上得到了想要的一切,而客户却没有任何筹码能让 Eversource 兑现补贴承诺。
我问 DPU 的工作人员,他们是否会统计有多少人申请了充电桩补贴、又有多少人最终拿到补贴。对方说,Eversource 只会向 DPU 报告有多少人完成了整个流程。就算 Eversource 驳回了 99% 的申请,DPU 也无从得知。
Eversource 泄露客户记录
当我回到 Eversource 的补贴申请门户,提交他们要求补充的材料时,我不禁想到:如果 Eversource 在补贴流程的每个环节都尽可能地压缩投入,那他们在安全方面又投入了多少呢?
不幸的是,答案是毫无投入。我只花了不到两分钟,就在 Eversource 的补贴门户上发现了一个严重的安全漏洞。
出于对网站安全性的基本检查,我打开了浏览器的网络控制台,查看浏览器与补贴门户之间的原始通信。浏览器向补贴服务器发起了几十个请求,其中有一个格外引人注意。
对这个网址 https://eversource.dsmcentral.com/traksmart4/public/guest/commercial/v2/application.json?projectId=123456 的请求返回了大量数据,看起来是这样的:
[ { "fieldId": "FORM-60-102189-108632-4094090-2-Task_Instances_Attributes-2354-CustomerPrintedName", "label": "Rebate Payee Printed Name", "value": "Michael Lynch", "displayValue": null, "templateParameters": null, "attributeName": "CustomerPrintedName", "uniqueFieldIdSource": "", "inventoryOptions": null, "dynamicOptions": null, "rendering": "textField", "formatter": "None" },...]响应内容长达数千行,看起来就是我在补贴申请中提交的所有数据,只是少了上传的照片和文件。
为了获取这些信息,我的浏览器发送了这样一个 HTTP 请求(我已将真实的申请 ID 替换为 123456):
POST /traksmart4/public/guest/commercial/v2/application.json?projectId=123456 HTTP/1.1
Host: eversource.dsmcentral.com
Cookie: JSESSIONID=node0f7ynpnyr35zk1c91byqpx2x5n97179.node0;Path=/traksmart4;Secure
Content-Type: application/json
Content-Length: 27
{"programId":8,"formId":60}引起我注意的是,URL 路径中包含了 public 和 guest 这两个词,这通常出现在无需登录即可访问的地址中。
我浏览器发出的请求是经过身份验证的。Cookie 这一行就是在告诉服务器我的登录身份。但问题是,服务器真的会校验登录状态吗?
为了测试补贴门户的服务器是否真的在校验登录,我发起了完全相同的请求,只是去掉了 Cookie 这一行。结果补贴门户依然返回了我的全部隐私数据。糟了,Eversource 根本没有做登录校验。
我的申请 ID 只有 6 位数字,也就是说总共不到 100 万种可能。而且我敢肯定它们是按顺序编号的,所以任何访问补贴门户的人只要猜中我的项目 ID,就能看到我提交的所有信息,包括姓名、电话号码、邮寄地址和车辆识别代号(VIN)。
如果恶意用户篡改了我的申请会怎样?
Eversource 的补贴门户泄露我的个人信息已经够糟了,但更糟的还在后面。以下是访问我的申请时的登录表单:

Eversource 的补贴门户只需用电子邮箱、邮政编码和 6 位申请编号就能登录。
那个会转储我所有数据的不安全 URL 恰好包含了所有这些字段。恶意用户可以从这个存在漏洞的 URL 中获取我的申请编号、电子邮箱和邮政编码,然后冒充我登录补贴门户。他们可以查看我的所有信息,包括我上传的照片和文件。
更糟的是,恶意用户还可以修改我补贴申请中的信息,比如把我的补贴支票寄到别的地址。
上报漏洞
负责管理 Eversource 补贴门户的公司叫 Resource Innovations,看起来他们还为其他城市的一批电力公司运营着类似的项目。
我给 Resource Innovations 的 privacy@ 邮箱发了邮件,说明我发现了一个严重漏洞,希望能与他们的安全团队联系并分享细节。我找不到 Eversource 公开的安全联系邮箱,于是直接给 Eversource 的首席信息安全官 Christopher Leigh 发了邮件。
第二天,我收到了 Resource Innovations 信息安全副总裁 Desiree Robinson 的回复。她提出可以立即通过视频会议来复盘这个漏洞,但问题非常简单,根本不需要开会。我直接通过邮件给她发了一个无需身份验证就能成功的 HTTP 请求示例。她在次日回复说问题已经修复,我也确认在没有有效登录凭证的情况下,确实无法再访问那个存在漏洞的 URL。
Eversource 的首席信息安全官 Christopher Leigh 始终没有回复我,但 Eversource“高管问询办公室”的 Karla Pickett 给我回了信。她说供应商“目前正在着手解决此问题”。
我向 Karla Pickett 和 Desiree Robinson 询问,她们能否分享更多关于未来将采取哪些保护措施来更好地保护客户的细节。我还问她们是否为以协同披露方式报告安全问题的人提供漏洞赏金。两人都未回复我的后续提问。
就在我为这篇博文准备截图时,我注意到同一流程中的另一个 URL 也在未校验身份的情况下暴露客户数据。这一次,它只泄露了我的全名、家庭住址和申请编号。我再次联系 Desiree Robinson 上报了这个问题。她七分钟后就回复说正在调查。第二天我再次尝试那个 URL,发现它已经能正确地进行身份校验了。
在 Eversource 和 Resource Innovations 的工程与安全方面,有很多值得诟病的地方,但有一点我必须肯定:他们的响应非常迅速。除了在我提到报酬的时候。
上报时间线
- 2025-01-27 —— 我向 Eversource、Resource Innovations 以及马萨诸塞州公用事业部报告发现了一个想要上报的漏洞。
- 2025-01-28 —— Resource Innovations 回复并要求提供细节。
- 2025-01-28 —— 我向 Resource Innovations 提供了漏洞详情。
- 2025-01-29 —— Resource Innovations 报告称问题已修复。
- 2025-02-05 —— 我就同一门户的另一个 URL 上的相同问题向 Resource Innovations 进行了上报。
- 2025-02-05 —— Resource Innovations 表示将开始着手修复。
- 2025-02-06 —— 我再次测试了该漏洞 URL,发现其已能正确强制执行身份验证。
马萨诸塞州居民可以做什么
巧的是,Eversource 目前正在申请由纳税人出资的新一轮电动汽车补贴计划。
马萨诸塞州居民可以就 Eversource 的这项提案向州政府提交意见。根据 DPU 的说法,来自本州居民的意见在这些备案中很有分量,所以如果你关心电动汽车项目,我鼓励你在 2026 年 2 月 18 日前提交一份公开评论(见“任何有意就此事发表评论的人……”)。
此外,本周三(2 月 11 日)还将通过 Zoom 就 Eversource 的提案举行一场公开听证会。
我对电动汽车补贴计划的期望清单
先说明一下背景:Eversource 不是街边那种夫妻店式的电力公司。它是一家财富 500 强企业,在过去 12 个月里盈利达 13 亿美元。
根据我在这次 Eversource 电动汽车补贴计划中的经历,他们拿着马萨诸塞州居民的公共资金,却把尽可能多的工作都推给了这些居民自己。
电动汽车补贴申请本该是一个 5 到 10 分钟就能完成的流程:提交购买凭证,然后等着收支票就行。但实际上,我花了好几个小时、历时两个多月,至今仍不知道 Eversource 是否会批准我的申请。而我所做的大部分工作,都是在收集那些与项目目的毫不相关的文件和信息。
根本问题在于,可衡量的东西才会被管理,但没有人去衡量马萨诸塞州居民在处理 Eversource 补贴计划上所花费的时间。因此,Eversource 尽量压缩对该项目的投入,浪费了居民的时间,还泄露了他们的个人信息。
以下是我希望在 Eversource 新一轮电动汽车补贴计划中看到的改进:
- Eversource 不得要求客户为申请补贴而创建新的网上账户。
- 补贴申请表必须通过标准的 Eversource 客户门户提供。
- 第三方供应商可以负责管理补贴门户,但必须实现安全的单点登录(SSO)流程,让客户无需创建新账户。
- Eversource 必须用其已掌握的客户信息(如姓名、地址和账户号码)预先填好申请表。
- 对于为其主要住所申请充电桩补贴的房主,所需的证明文件应仅限于(1)充电桩的品牌、型号和序列号,以及(2)充电桩及相关电气工程的收据或发票。
- 发票无需标有“已付清”字样。
- 居民无需证明自己拥有电动汽车,因为为了拿一小笔补贴而亏本安装充电桩是毫无意义的。
- Eversource 必须自费聘请一家位于马萨诸塞州的网络安全公司,每年对补贴门户进行一次安全审计。
- Eversource 必须将审计结果提交给马萨诸塞州公用事业部(DPU),并在六周内修复所有被评为“高危”或“严重”的问题。
- Eversource 必须按季度公布以下数据:
- 开始申请补贴的客户数量,
- 收到一次或多次申请驳回的客户数量(无论最终结果如何),
- 成功申请并收到补贴款的客户数量。
- 在整个申请过程中,Eversource 必须公示负责监管电动汽车补贴计划的马萨诸塞州公用事业部具体办公室的联系方式。
- 在补贴申请被驳回的通知中,必须醒目地展示该联系方式,以便居民就错误的驳回提出申诉。
- 马萨诸塞州公用事业部必须有权审计充电桩补贴的申请。
- 如果 Eversource 驳回了一份申请,而公用事业部认定该驳回无效,Eversource 必须向客户支付申请补贴金额 150% 的赔偿。
- 即使相关申请之后获得批准,公用事业部也不得为涉及无效驳回的申请向 Eversource 报销。
注:为避免泄露我个人账户的信息,文中展示的 HTTP 请求中的唯一标识符已被隐去或修改。
随机一篇博客
评论
登录后参与讨论