TL;DR
- Sungrow의 관리 플랫폼 iSolarCloud에서 발견된 취약점으로, 전 세계에 설치된 1,000GW 이상 규모의 전력 변환 설비가 위험에 노출됨.
- 로그인 요청의
login_type을 5로 설정하면 비밀번호 확인 없이 지정된 사용자 계정에 로그인되는 인증 우회 취약점임. - 취약점은 유럽·중국·호주·국제용 클라우드 서버 4곳 모두에 영향을 미치며, 관리 계정 탈취로 이어질 수 있음.
- 공격자는 태양광 발전소와 인버터·배터리 저장 시스템을 제어하고 펌웨어를 설치할 수 있으며, 지역 정전과 국가 안보 위험으로 이어질 가능성이 제기됨.
- Sungrow는 통보를 받은 뒤 하루 안에 패치를 배포했으며, 소비자에게는 클라우드 연결을 최소화하고 제조사에는 사용자·관리 플랫폼 분리가 권고됨.
아키텍처 개요
- Sungrow는 Huawei와 함께 세계 주요 태양광 인버터 제조사 중 하나이며, 2025년 12월 기준 전 세계에 1,000GW가 넘는 전력 전자 변환기를 설치했고 유럽에서 큰 시장 점유율을 보유함.
- 사용자·관리 플랫폼은 iSolarCloud이며, 작성 시점에 유럽·중국·호주·국제용 등 서로 다른 도메인의 클라우드 시스템 4곳을 운영함.
- 각 시스템은 해당 지역의 데이터만 저장함.
- 공개된 취약점은 클라우드의 비즈니스 로직에 영향을 미치므로 네 서버 모두에 존재함.
- iSolarCloud는 REST 요청의 애플리케이션 계층에서 비대칭 암호화를 사용함.
- API에 전송되는 모든 POST 본문을 암호화함.
- 각 요청의 서명과 사용자 지정 헤더 데이터도 검증함.
- 이 구조로 인해 테스트 과정에서 요청을 검토·추적·조작하기가 더 어려움.
취약점 발견
- 지난 1년 동안 MQTT를 통한 기기 통신을 중심으로 클라우드 연결형 인버터 시스템을 분석했으며, Sungrow에서는 일반 사용자와 관리자 계정이 같은 관리 플랫폼을 공유한다는 점을 바탕으로 계정 탈취나 인증 우회 가능성을 조사함.
- 비밀번호 재설정 기능과 ‘이메일 코드 로그인’ 서비스를 먼저 확인했으나, 강력한 요청 제한으로 해당 방식의 계정 탈취는 차단됨.
- IDOR(Insecure Direct Object Reference), 권한 확인 누락, SQL 인젝션은 발견하지 못함. 주요 취약점 외에도 하위 도메인에서 정보 노출과 반사형 교차 사이트 스크립팅(XSS)을 발견했으나, 해당 내용은 이 글의 범위 밖임.
- 요청 제한 우회에 실패한 뒤 복호화한 로그인 요청을 살펴보니
user_account,user_password,login_type등의 필드가 포함돼 있었음. - ‘이메일 코드 로그인’ 방식의
login_type값은 8이었음. - 값을 차례로 바꾸던 중 5를 지정하자 즉시 로그인됨.
- 다른 계정으로 시험한 결과,
login_type을 5로 설정하면user_account필드에 지정한 계정으로 자동 로그인되며 비밀번호 필드는 무시됨. - 로그인 사실을 사용자에게 알리는 이메일이나 기타 알림이 전송되지 않았음. 이 조용한 인증 우회는 로그인 후 비밀번호 재설정 기능을 이용해 계정 탈취로 확대될 수 있음.
- 관리자 이메일 주소를 알아내는 방법도 확인함.
- 사용자와 조직이 계층적으로 구성돼 있어, 사용자는 상위 조직의 이메일 주소와 사용자 이름을 볼 수 있음. 이 정보를 취약점과 결합하면 권한을 상승시킬 수 있음.
- 별도로 공개되지 않은 정보 유출 경로를 이용하면 지원 계정, 경우에 따라 관리자 계정의 이메일 주소도 확인할 수 있음.
영향
- 관리자 관리 플랫폼에 접근하면 해당 서버에 연결된 모든 발전소를 완전히 제어할 수 있음.
- 공격자는 태양광 발전소와 인버터·배터리 저장 시스템을 열거하고, 수정하거나 시작·중지할 수 있음.
- 플랫폼에 등록된 모든 조직과 사용자에 접근할 수 있으며, 1KOMMA5°, Enpal 등 알려진 독일 태양광 유통업체의 관리 계정도 포함됨.
- 클라우드에 연결된 모든 기기에 공격자가 원하는 새 펌웨어 또는 사용자 지정 펌웨어 이미지를 설치할 수 있음.
- Sungrow의 독일 및 유럽 시장 점유율이 중대한 분기점에 이르렀다는 점을 근거로, 이러한 취약점을 통한 무단 접근이 국가 안보 문제이며 대륙 전체의 지역 정전으로 이어질 수 있다는 우려가 제기됨.
예방
- 소비자는 태양광 시스템의 클라우드 연결 여부를 재검토할 필요가 있음.
- 가능하다면 펌웨어 업데이트를 가져올 때만 태양광 발전소를 인터넷에 연결하고, 그 외 시간에는 어떤 클라우드에도 연결하지 않는 방식이 권고됨.
- 제조사는 사용자 플랫폼과 관리자 플랫폼을 분리하는 방안을 고려할 필요가 있음.
- 사용자 플랫폼은 필요한 기능만 제공해야 하며, 침해되더라도 광범위한 피해를 일으키는 데 악용될 수 없는 구조가 바람직함.
책임 있는 공개
- 취약점을 Sungrow에 즉시 알렸으며, Sungrow는 하루 안에 패치를 배포해 문제를 긴급 수정함.
- 근본 원인을 찾고 관련 문제를 수정하기 위한 상세 분석도 시작됨.
- Sungrow PSIRT와의 소통은 원활했으며, 과거 다른 태양광 제조사와 경험한 대응보다 나았음.
댓글 (0)
로그인하면 이 기사에 내 생각을 남길 수 있어요