Eversource 전기차 리베이트 프로그램, 매사추세츠 고객 정보 노출
원문은 Michael Lynch님이 에 게재했습니다. 이 블로그 구독하기
최근 전기차(EV) 충전기 설치에 대한 리베이트를 신청했다가, 전력 공급사인 Eversource가 신청 고객들의 개인정보를 공개적으로 노출하고 있었다는 사실을 알게 됐다. 노출된 정보는 다음과 같다.
- 성명
- 차량 등록증(번호판 및 차량식별번호 포함)
- 집 주소
- 이메일 주소
- 전화번호
취약점을 발견하게 된 경위를 뒤에서 자세히 설명하겠지만, 보안 취약점에 대한 내용만 바로 보고 싶다면 해당 부분으로 건너뛰기를 하면 된다.
왜 리베이트 절차는 이렇게 복잡한가?
나는 매사추세츠에 살고 있는데, 주 정부에서 Mass Save라는 프로그램을 운영한다. 에너지 요금에 세금을 부과해 모은 돈으로 지속가능한 에너지 사업을 지원하는 방식이다. 예를 들어 집의 에너지 효율을 높이기 위해 단열 공사를 하면 Mass Save에서 비용 일부를 보조해 준다.
최근 전기차(EV) 충전기를 설치했는데, Mass Save에서 설치 비용 중 700달러를 돌려준다는 사실을 알게 됐다. 좋은 소식이었다!
내 전력 회사는 Eversource라서 리베이트도 그쪽을 통해 신청해야 했다. 온라인으로 신청하면 10분이면 끝날 줄 알았는데, 끝없는 양식을 채우는 데만 한 시간이 넘게 걸렸다.
처음에는 이름, 주소, Eversource 계정 번호를 묻는다. Eversource가 이미 다 가지고 있는 정보라 중복인데, 뭐 그러려니 했다.
양식을 진행할수록 점점 더 뜬금없는 질문들이 나오기 시작했다. 예를 들면 이런 것들이었다.
- 어떤 종류의 전기차를 소유하고 있는가?
- 어디서 구입했는가?
- 얼마를 지불했는가?
- 차량 등록증은 어디에 있는가?
- 누가 EV 충전기를 설치했는가?
- 전기 기술자의 주소는 무엇인가?
- 충전기는 집의 정확히 어디에 설치되어 있는가?
EV 충전기를 샀다는 걸 확인하는 데 이런 정보가 왜 필요한가? 이 과정은 Eversource가 홍보하는 “4단계 리베이트 절차”와는 비교할 수 없을 만큼 복잡했다.
충전기 MAC 주소가 필요합니다
리베이트 신청 과정에서 Eversource가 요구한 것 중 가장 황당한 건 EV 충전기의 MAC 주소였다. 뭐라고?
MAC 주소는 EV 충전기 안의 WiFi 칩에 부여된 고유 식별자다. 기기 겉면에 인쇄되어 있지도 않은데, 도대체 어떻게 알아내라는 건가?
나는 소프트웨어 개발자이자 홈 네트워크 덕후라서 공유기 관리자 페이지에서 EV 충전기의 MAC 주소를 찾을 수 있었지만, 일반인은 어떻게 하라는 건지 모르겠다.
아니요, 틀렸습니다. 다시 하세요
모든 서류를 제출하고 일주일 뒤, Eversource로부터 이런 이메일을 받았다.

Eversource는 내가 신청서에 첨부한 사진과 서류가 잘못되었다고 주장한다.
보아하니 내가 신청서를 잘못 작성한 모양이다.
Eversource는 내가 올린 전기 기술자의 청구서에 “Paid in full(완납)” 표시가 없다는 이유로 반려했다. 대금을 치른 뒤에 “완납” 도장이 찍힌 청구서를 주는 업자는 거의 본 적이 없어서, 결국 바쁜 전기 기술자를 졸라 새 청구서를 다시 받아야 했다.
내가 양식의 요구사항을 놓친 걸까? 아니다. 포털로 돌아가 청구서에 대한 안내를 다시 확인해 보니 “Contractor’s invoice for wiring upgrade(배선 공사에 대한 시공업체 청구서)”라고만 되어 있을 뿐, “Paid in full”이라는 말은 어디에도 없었다.

리베이트 양식 어디에도 청구서에 완납 표시가 필요하다는 언급은 없다.
그럼 사진은 뭐가 문제였을까? 충전기 사진을 올리는 걸 깜빡한 걸까?
아니다. 신청서에 사진은 분명 있었다. 충전기는 선명하게 잘 보였고, 일련번호 사진도 또렷하게 읽을 수 있었다. 설마 MAC 주소를 사진으로 찍을 수 있다고 생각한 걸까?
나는 사진의 뭐가 문제인지 물으며, MAC 주소를 사진으로 찍는 건 불가능하다고 설명하는 이메일을 보냈다.
일주일 뒤 답장이 왔다. 다른 사진을 왜 반려했는지는 설명하지 않은 채, EV 충전기 모바일 앱에서 MAC 주소를 찾아 스크린샷을 찍어 보내라고 했다. 알겠다고 할 수밖에…
Eversource EV 리베이트 프로그램의 왜곡된 유인
Eversource의 리베이트 프로그램은 뭔가 수상했다. 모든 단계가 불필요한 서류 작업과 교묘한 함정으로 나를 괴롭히도록 설계된 것처럼 느껴졌다.
매사추세츠 주에 뭔가 썩은 게 있는 걸까? Eversource가 리베이트로 지급되지 않은 돈을 가져가는 걸까?
EV 리베이트 프로그램을 감독하는 매사추세츠 공공사업부(DPU)에 전화해 도대체 무슨 일인지 물었다. 왜 Eversource는 리베이트 신청을 이렇게 어렵게 만드는가?
DPU 직원은 Eversource가 사진을 반려했다가 이의를 제기하면 똑같은 사진을 그대로 승인했다는 민원을 들은 적이 있다고 했다. Eversource가 사진을 평가하는 데 자동화 시스템을 쓰고, 재심사 때는 더 정확한 시스템이거나, 더 가능성 높게는 사람이 직접 사진을 확인하는 것 같다는 설명이었다.
그럼 그런 경우 Eversource가 리베이트 금액을 그냥 챙기는 건가? DPU 담당자는 “아니다”라고 답했다. 리베이트 신청이 실패해도 Eversource가 돈을 가져가지는 않는다. 승인된 경우에도 Eversource가 먼저 리베이트를 지급하고 주 정부에 상환을 청구하는 구조라고 했다.
잠깐, Eversource가 그냥 돈을 전달만 한다면 왜 이 프로그램을 운영하는 걸까?
DPU 담당자는 Eversource가 사람들이 EV를 사길 원하기 때문이라고 설명했다. 매사추세츠 주민들이 EV를 갖게 되면, Eversource가 판매하지 않는 휘발유에 쓰던 지출이 Eversource가 많은 도시에서 독점적으로 판매하는 전기로 옮겨가기 때문이다.
그제야 이해가 되기 시작했다. Eversource는 고객의 리베이트 신청이 실패하길 바라는 게 아니라, 아예 신경조차 쓰지 않는 것이다.
고객이 Eversource에 리베이트를 신청할 때쯤이면 이미 EV를 구입한 뒤다. 고객은 앞으로 몇 년간 Eversource로부터 추가 전력을 구매해야 하는 상황에 묶여 있다. 그 시점에서 Eversource는 고객에게서 원하는 것을 이미 다 얻었고, 고객은 Eversource가 약속을 지키도록 할 지렛대가 전혀 없다.
나는 DPU 담당자에게 EV 충전 리베이트를 신청한 사람 수와 실제로 완료한 사람 수를 추적하는지 물었다. Eversource는 절차를 완료한 사람 수만 DPU에 보고한다고 했다. Eversource가 신청자의 99%를 반려해도 DPU는 알 길이 없다는 뜻이다.
Eversource, 고객 기록 유출
Eversource가 요청한 정보를 제출하려고 리베이트 포털에 다시 접속했을 때 이런 생각이 들었다. Eversource가 EV 리베이트 절차의 모든 부분에 투자를 최소화했다면, 보안에 투자는 했을까?
안타깝게도 답은 ‘아니오’였다. Eversource 리베이트 포털에서 심각한 보안 취약점을 찾는 데 2분도 걸리지 않았다.
사이트 보안을 기본적으로 확인하기 위해 웹 브라우저의 네트워크 콘솔을 열어 브라우저와 리베이트 포털 사이의 원시 통신 내용을 살펴봤다. 브라우저가 리베이트 서버에 수십 개의 요청을 보냈는데, 그중 하나가 특히 눈에 띄었다.
URL 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라는 단어가 포함되어 있다는 것이었다. 보통 로그인이 필요 없는 URL에 등장하는 단어들이다.
내 브라우저가 보낸 요청은 인증된 상태였다. Cookie 라인이 서버에 내 로그인 ID를 알려주고 있었다. 하지만 서버가 과연 로그인 상태를 확인하고 있기나 한 걸까?
리베이트 포털 서버가 로그인을 확인하는지 테스트하기 위해 Cookie 라인을 제거한 채 동일한 요청을 보냈다. 그럼에도 리베이트 포털은 내 개인정보를 그대로 반환했다. 큰일이다. Eversource는 로그인을 확인하지 않고 있었다.
내 신청 ID는 6자리 숫자에 불과해 경우의 수가 100만 개도 되지 않는다. 게다가 아마 순차적으로 부여될 테니, 리베이트 포털에 접속하는 누구든 내 프로젝트 ID를 추측해 내가 제출한 이름, 전화번호, 우편 주소, 차량식별번호(VIN) 등 모든 정보를 볼 수 있다.
악의적인 사용자가 내 신청서를 변경하면 어떻게 될까?
Eversource 리베이트 포털이 내 개인정보를 유출하는 것만으로도 충분히 심각하지만, 문제는 더 있다. 내 신청서에 접근하는 로그인 폼은 이렇게 생겼다.

Eversource 리베이트 포털에서는 이메일 주소, 우편번호, 6자리 신청 번호만으로 로그인할 수 있다.
내 데이터를 몽땅 쏟아내는 취약한 URL에는 그 필드들이 모두 포함되어 있다. 악의적인 사용자는 취약한 URL에서 내 신청 번호, 이메일 주소, 우편번호를 빼내어 나인 척하고 리베이트 포털에 로그인할 수 있다. 그러면 내가 업로드한 사진이나 서류를 포함한 모든 정보에 접근할 수 있다.
더 심각한 건, 악의적인 사용자가 내 리베이트 신청서의 정보를 변경해 리베이트 수표를 다른 우편 주소로 보내도록 할 수도 있다는 점이다.
취약점 제보
Eversource의 리베이트 포털을 관리하는 회사는 Resource Innovations이며, 다른 도시의 여러 전력 회사에서도 유사한 프로그램을 운영하는 것으로 보인다.
나는 Resource Innovations의 privacy@ 이메일로 심각한 취약점을 발견했으며 보안팀과 세부 내용을 공유하고 싶다는 메일을 보냈다. Eversource에서는 공개된 보안 메일 주소를 찾을 수 없어, 최고정보보호책임자(CISO)인 Christopher Leigh에게 직접 이메일을 보냈다.
다음 날 Resource Innovations의 정보보안 담당 부사장인 Desiree Robinson으로부터 답장을 받았다. 그는 취약점을 검토하기 위해 즉시 화상 통화를 하자고 제안했지만, 문제가 너무 단순해서 통화할 필요도 없었다. 나는 인증 없이도 동작하는 HTTP 요청 예시를 이메일로 보냈고, 다음 날 그는 문제가 수정되었다고 답장했다. 나도 유효한 로그인 토큰 없이 취약한 URL에 더 이상 접근할 수 없음을 확인했다.
Eversource의 CISO인 Christopher Leigh에게는 답을 받지 못했지만, Eversource ‘Executive Inquiry office’의 Karla Pickett으로부터는 연락을 받았다. 그는 협력사가 “현재 이 문제를 해결하기 위해 작업 중”이라고 말했다.
나는 Karla Pickett과 Desiree Robinson 두 사람에게 앞으로 고객을 더 잘 보호하기 위해 어떤 보호 조치를 마련했는지 자세히 공유해 줄 수 있는지 물었다. 또 보안 문제를 조율된 공개(coordinated disclosure) 방식으로 제보하는 사람에게 버그 바운티를 제공하는지도 물었지만, 두 사람 모두 후속 질문에는 답하지 않았다.
이 블로그 글을 위해 스크린샷을 준비하던 중, 같은 UI 흐름에 있는 다른 URL 역시 인증 확인 없이 고객 데이터를 노출하고 있다는 사실을 발견했다. 이번에는 성명, 집 주소, 신청 번호만 노출되고 있었다. 나는 다시 Desiree Robinson에게 연락해 이를 제보했고, 그는 7분 만에 조사 중이라는 답장을 보냈다. 다음 날 해당 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는 현재 새로운 EV 리베이트 프로그램을 위한 납세자 자금 지원을 요청하는 중이다.
매사추세츠 주민은 Eversource의 제안에 대해 주 정부에 의견을 제출할 수 있다. DPU에 따르면 이런 신청 건에서 매사추세츠 주민의 의견은 영향력이 있으므로, EV 프로그램에 관심이 있다면 공개 의견 제출을 2026년 2월 18일까지 하길 권한다(“Any person interested in commenting on this matter…” 참조).
이번 주 수요일(2월 11일)에는 Eversource 제안에 대한 공개 청문회도 Zoom으로 열릴 예정이다.
EV 리베이트 프로그램을 위한 나의 바람 목록
참고로 Eversource는 동네 자그마한 전력 회사가 아니다. 포춘 500대 기업으로, 지난 12개월간 13억 달러의 이익을 기록했다.
Eversource의 현행 EV 리베이트 프로그램을 겪어본 바로는, 매사추세츠 주민들의 공공 자금을 사용하면서 가능한 한 많은 일을 그 주민들에게 떠넘기고 있다.
EV 리베이트 신청은 구매 증빙을 제출하고 우편으로 수표를 기다리는 5~10분짜리 절차가 되어야 한다. 하지만 나는 두 달에 걸쳐 몇 시간을 들였고, 아직도 Eversource가 내 신청을 승인할지 알 수 없다. 내가 한 작업 대부분은 프로그램 목적과는 전혀 상관없어 보이는 서류와 정보를 모으는 일이었다.
근본적인 문제는 측정되는 것이 관리된다는 점인데, 매사추세츠 주민들이 Eversource 리베이트 프로그램 때문에 쓰는 시간은 아무도 측정하지 않는다는 것이다. 그 결과 Eversource는 프로그램에 대한 투자를 최소화하고, 주민들의 시간을 낭비하며 개인정보를 노출시킨다.
Eversource의 새로운 EV 리베이트 프로그램에서 내가 보고 싶은 것은 다음과 같다.
- Eversource는 리베이트 조건으로 고객에게 새로운 온라인 계정 생성을 요구해서는 안 된다.
- 리베이트 양식은 표준 Eversource 고객 포털을 통해 제공되어야 한다.
- 제3자 업체가 리베이트 포털을 운영할 수는 있지만, 고객이 새 계정을 만들 필요가 없도록 안전한 single sign-on(SSO) 흐름을 구현해야 한다.
- Eversource는 이미 보유한 고객 정보(이름, 주소, 계정 번호 등)로 리베이트 양식을 미리 채워 넣어야 한다.
- 주거지에 EV 충전 리베이트를 신청하는 주택 소유자의 경우, 필요한 서류는 (1) 충전기의 제조사, 모델 및 일련번호와 (2) 충전기 및 전기 공사에 대한 영수증 또는 청구서만이어야 한다.
- 청구서에 완납 표시가 있을 필요는 없다.
- 부분 리베이트를 받기 위해 손해를 감수하며 EV 충전기를 설치할 리 없으므로, 주민이 EV 소유를 증명할 필요는 없어야 한다.
- Eversource는 자비로 매사추세츠 소재 웹 보안 업체를 고용해 리베이트 포털에 대한 연례 보안 감사를 실시해야 한다.
- Eversource는 이 감사 결과를 MA DPU에 제공해야 하며, High 또는 Critical 등급으로 평가된 문제는 6주 이내에 수정해야 한다.
- Eversource는 다음 지표를 분기별로 공개해야 한다.
- 리베이트 신청을 시작한 고객 수,
- 한 번 이상 신청이 반려된 고객 수(최종 결과와 무관하게),
- 리베이트를 성공적으로 신청해 지급받은 고객 수.
- Eversource는 신청 과정 전반에 걸쳐 EV 리베이트 프로그램을 감독하는 매사추세츠 DPU 담당 부서의 연락처를 표시해야 한다.
- 연락처는 리베이트 신청 반려 통지서에 눈에 잘 띄게 표시되어야 하며, 주민이 잘못된 반려에 대해 이의를 제기할 수 있도록 해야 한다.
- MA DPU는 EV 충전기 리베이트 신청을 감사할 수 있어야 한다.
- Eversource가 신청을 반려했는데 DPU가 부당한 반려로 판단한 경우, Eversource는 고객에게 신청한 리베이트 금액의 150%를 지급해야 한다.
- DPU는 부당한 반려가 있었던 청구 건에 대해서는 나중에 승인되더라도 Eversource에 상환해서는 안 된다.
참고: 내 계정 정보가 유출되지 않도록 표시된 HTTP 요청에서 고유 식별자는 생략하거나 변경했다.
글을 무작위로 읽기
댓글
로그인하고 댓글 남기기