Skip to main content
CVE Vulnerability Database
Vulnerability Database/CVE-2025-31949

CVE-2025-31949: Growatt Cloud Portal Information Leak

CVE-2025-31949 is an information disclosure vulnerability in Growatt Cloud Portal that allows authenticated attackers to obtain plant names using plant IDs. This article covers technical details, affected versions, and mitigation.

Published:

CVE-2025-31949 Overview

CVE-2025-31949 is an Insecure Direct Object Reference (IDOR) vulnerability affecting the Growatt Cloud Portal. An authenticated attacker can retrieve any plant name by supplying a known or guessed plant identifier. The flaw is categorized under CWE-639: Authorization Bypass Through User-Controlled Key.

The issue affects solar monitoring infrastructure operated through Growatt's cloud-based management portal. Because the platform manages photovoltaic (PV) installations globally, unauthorized enumeration of plant metadata can facilitate reconnaissance against renewable-energy operators. CISA published the coordinated advisory tracking this issue as ICSA-25-105-04.

Critical Impact

An authenticated user can enumerate plant names belonging to other tenants by iterating plant IDs, breaking multi-tenant isolation in the Growatt Cloud Portal.

Affected Products

  • Growatt Cloud Portal (all versions covered by CISA ICS Advisory ICSA-25-105-04)
  • Web interface and associated APIs of the Growatt cloud service
  • Customer plants (PV installations) registered under the portal

Discovery Timeline

  • 2025-04-15 - CVE-2025-31949 published to NVD
  • 2026-06-17 - Last updated in NVD database

Technical Details for CVE-2025-31949

Vulnerability Analysis

The Growatt Cloud Portal exposes an API endpoint that returns plant details keyed by a numeric plant identifier. The server authenticates the caller but fails to verify that the requesting account owns or has been granted access to the requested plant. Any authenticated user can therefore substitute an arbitrary plant ID and receive the associated plant name.

This is a classic Insecure Direct Object Reference pattern. Access control decisions rely on the presence of a valid session rather than on ownership checks bound to the resource identifier. The exposure is limited to plant name metadata, but plant names frequently disclose customer identity, site location, or installation purpose.

Root Cause

The root cause is a missing object-level authorization check in the plant lookup handler. The application trusts the plant ID supplied in the request and returns the corresponding record without confirming the caller is an authorized owner or operator of that plant.

Attack Vector

The attack is executed over the network against the public portal. The attacker requires only a valid authenticated session, which can be obtained through normal account registration. The attacker then iterates plant IDs in API requests and harvests plant names returned by the backend, enabling large-scale reconnaissance of Growatt tenants.

No verified proof-of-concept code is publicly available. The exploitation mechanism can be reproduced by replaying an authenticated plant-details request with modified plantId parameter values, as described in the CISA advisory.

Detection Methods for CVE-2025-31949

Indicators of Compromise

  • Repeated authenticated requests to Growatt Cloud Portal plant-detail endpoints with sequentially or randomly varying plantId values from a single account.
  • Access patterns where a single user session references plant identifiers not associated with that user's registered installations.
  • Anomalous data-volume patterns from low-privilege accounts pulling metadata across a wide numeric range of plant IDs.

Detection Strategies

  • Instrument the portal's API gateway to log the requesting user ID alongside each plantId accessed, and alert when the two do not correlate.
  • Baseline the normal number of distinct plant IDs viewed per session and flag deviations that suggest enumeration.
  • Correlate portal authentication logs with plant-access logs to identify accounts issuing high-cardinality lookups shortly after account creation.

Monitoring Recommendations

  • Forward Growatt Cloud Portal application and access logs to a centralized analytics platform for retention and correlation.
  • Monitor for HTTP 200 responses on plant-detail endpoints returning identifiers outside the caller's tenant scope.
  • Track and rate-limit sequential ID access patterns from any single account or source IP address.

How to Mitigate CVE-2025-31949

Immediate Actions Required

  • Review the mitigations published in CISA ICS Advisory ICSA-25-105-04 and apply vendor guidance provided by Growatt.
  • Audit portal accounts and disable inactive or unrecognized users that could be leveraged for enumeration.
  • Enforce rate limiting on plant-detail API endpoints to slow enumeration attempts.

Patch Information

Growatt has addressed the issue on the cloud portal side. Because the affected component is a hosted service, remediation is delivered by the vendor rather than through customer-installed updates. Refer to the CISA advisory for the authoritative status and any customer-side configuration guidance.

Workarounds

  • Restrict portal access to trusted networks where feasible and require strong authentication factors on all accounts.
  • Rename plants to avoid embedding sensitive customer, site, or geolocation details in the plant name field.
  • Monitor tenant activity for suspicious cross-tenant access attempts and revoke tokens associated with abuse.
bash
# Example: rate-limit plant-detail lookups at an upstream proxy (nginx)
# Consult the CISA advisory before deploying any mitigation.
limit_req_zone $binary_remote_addr zone=plantlookup:10m rate=10r/m;

location /plant/detail {
    limit_req zone=plantlookup burst=5 nodelay;
    proxy_pass https://portal.growatt.example/plant/detail;
}

Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

Default Legacy - Prefooter | Experience the World’s Most Advanced Cybersecurity Platform

Experience the Most Advanced Cybersecurity Platform

See how the world’s most intelligent, autonomous cybersecurity platform can protect your organization today and into the future.