CVE-2025-53512
mediumpriority · track · 0EPSS 0.004 · 32 %ileEUUSEPSS · scored 2026-10-27
The /log endpoint on a Juju controller lacked sufficient authorization checks, allowing unauthorized users to access debug messages that could contain sensitive information.
cvss
Technical severity, 0–10. One row per scoring source.
base score 0–10 · higher = more severe · hover a vector to decode
ssvc
A stakeholder decision — act, attend, or track — from exploitation and impact.
weaknesses
The CWE weakness classes this flaw belongs to.
affected products (5)
Products and version ranges known to be affected.
advisories (2)
Vendor and ecosystem advisories describing this.
- GHSA-r64v-82fh-xc63Juju vulnerable to sensitive log retrieval via authenticated endpoint without authorization2025-07-09ghsa · osvUS
### Impact Any user with a Juju account on a controller can read debug log messages from the `/log` endpoint. No specific permissions are required - it's just sufficient for the user to exist in the controller user database. The log messages may contain sensitive information. ### Details The `/log` endpoint is accessible at the following endpoints: - `wss://<controller-ip>/log` - `wss://<controller-ip>/model/<model-uuid>/log` In order to connect to these endpoints, the client must pass an X-Juju-Client-Version header that matches the current version and pass credentials in a Basic Authorization header. Once connected, the service will stream log events even though the user is not authorised to view them. To reproduce: ``` juju bootstrap juju add-user testuser juju change-user-password testuser ``` Run the [wscat](https://github.com/websockets/wscat) command below to connect to `wss://<controller-ip>:17070/api`. Update the JSON payload to include the username and password that were created above. ``` wscat --no-check -c wss://contorller-ip:17070/model/modelUUID/api { "type": "Admin", "request": "Login", "version": 3, "params": { "client- version": "3.6.1.0", "auth-tag": "user-testuser", "credentials": " password" } } ``` Observe that the connection fails due to a lack of permissions. Run the command below to connect to the log endpoint. Note that the credentials are passed in the --auth flag. ``` wscat --auth user-testuser:password -H "X-Juju-ClientVersion: 3.6.4" --no-check -c wss://<controller-ip>:17070/log ``` Observe that the logs are returned in the server’s response. ### Code The `/log` handlers are registered here https://github.com/juju/juju/blob/3.6/apiserver/apiserver.go#L867 https://github.com/juju/juju/blob/3.6/apiserver/apiserver.go#L980 And the only auth required is that the incoming request be for an authenticated user https://github.com/juju/juju/blob/3.6/apiserver/apiserver.go#L713 but no specific permission checks are done. ### Workarounds There are no workarounds. ### References [F-01](https://drive.google.com/file/d/1pHRNiaA8LyMVJYwIyTqelsqJ9FmImDf0/view)
- GO-2025-3806Juju vulnerable to sensitive log retrieval via authenticated endpoint without authorization in github.com/juju/juju2025-07-28vendor · osvUS
Juju vulnerable to sensitive log retrieval via authenticated endpoint without authorization in github.com/juju/juju
also known as (5)
Other names and identifiers for this entity.
sources
Which sources assert this record, and when.
references (6)
External citations — patches, advisories, analysis.
- https://access.redhat.com/security/cve/cve-2025-53512cnnvd
- https://github.com/juju/juju/releasesPatchcnnvd
- https://github.com/juju/juju/security/advisories/GHSA-r64v-82fh-xc63cnnvd
- https://nvd.nist.gov/vuln/detail/CVE-2025-53512cnnvd
- https://github.com/juju/juju/security/advisories/GHSA-r64v-82fh-xc63enisa_euvd
- https://github.com/juju/juju/security/advisories/GHSA-r64v-82fh-xc63ExploitVendor Advisorynvd
Attackers weaponise vulnerabilities like this against internet-exposed services. See what is exposed on your perimeter with a free passive scan.
Free scan