{"id":"CVE-2026-93336","state":"PUBLISHED","title":"Missing authorization in the unit resources download route in Juju controllers","description":"Missing authorization in the unit resources download route in Canonical Juju 4.0 through 4.0.15 allows a controller-authenticated principal (a unit agent, or a user with only login permission) to read any application's charm resource in any model,  including container-registry credentials, via a crafted request naming an arbitrary unit.","publishedAt":"2026-10-22T17:32:13.820Z","updatedAt":"2026-10-22T17:32:13.820Z","severity":{"score":7.1,"label":"High","version":"4.0","vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:L/VA:N/SC:N/SI:N/SA:N","source":"canonical"},"assigner":"canonical","products":["Canonical Juju"],"affected":[{"vendor":"Canonical","product":"Juju","packageName":"juju","defaultStatus":"unaffected","versions":[{"version":"4.0","status":"affected","lessThan":"4.0.16","versionType":"semver"}],"platforms":["Linux"],"collectionURL":"https://canonical.com/juju","repo":"https://github.com/juju/juju"}],"references":["https://github.com/juju/juju/security/advisories/GHSA-fp7x-6hq5-3c3w","https://github.com/juju/juju/pull/23360"],"weaknesses":["CWE-862"],"ingestedAt":"2026-10-29T20:13:34.582Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2026/93xxx/CVE-2026-93336.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-93336","state":"PUBLISHED","datePublished":"2026-10-22T17:32:13.820Z","dateUpdated":"2026-10-22T17:32:13.820Z","assignerShortName":"canonical","assignerOrgId":"cc1ad9ee-3454-478d-9317-d3e869d708bc","dateReserved":"2026-09-17T18:37:26.952Z"},"containers":{"cna":{"title":"Missing authorization in the unit resources download route in Juju controllers","descriptions":[{"lang":"en","value":"Missing authorization in the unit resources download route in Canonical Juju 4.0 through 4.0.15 allows a controller-authenticated principal (a unit agent, or a user with only login permission) to read any application's charm resource in any model,  including container-registry credentials, via a crafted request naming an arbitrary unit."}],"affected":[{"vendor":"Canonical","product":"Juju","packageName":"juju","defaultStatus":"unaffected","versions":[{"version":"4.0","status":"affected","lessThan":"4.0.16","versionType":"semver"}],"platforms":["Linux"],"collectionURL":"https://canonical.com/juju","repo":"https://github.com/juju/juju"}],"references":[{"url":"https://github.com/juju/juju/security/advisories/GHSA-fp7x-6hq5-3c3w","tags":["vendor-advisory"]},{"url":"https://github.com/juju/juju/pull/23360","tags":["patch"]}],"metrics":[{"format":"CVSS","scenarios":[{"lang":"en","value":"GENERAL"}],"cvssV4_0":{"attackVector":"NETWORK","attackComplexity":"LOW","attackRequirements":"NONE","privilegesRequired":"LOW","userInteraction":"NONE","vulnConfidentialityImpact":"HIGH","subConfidentialityImpact":"NONE","vulnIntegrityImpact":"LOW","subIntegrityImpact":"NONE","vulnAvailabilityImpact":"NONE","subAvailabilityImpact":"NONE","exploitMaturity":"NOT_DEFINED","Safety":"NOT_DEFINED","Automatable":"NOT_DEFINED","Recovery":"NOT_DEFINED","valueDensity":"NOT_DEFINED","vulnerabilityResponseEffort":"NOT_DEFINED","providerUrgency":"NOT_DEFINED","version":"4.0","baseSeverity":"HIGH","baseScore":7.1,"vectorString":"CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:L/VA:N/SC:N/SI:N/SA:N"}}],"problemTypes":[{"descriptions":[{"cweId":"CWE-862","lang":"en","description":"CWE-862 Missing Authorization","type":"CWE"}]}],"providerMetadata":{"shortName":"canonical","orgId":"cc1ad9ee-3454-478d-9317-d3e869d708bc","dateUpdated":"2026-10-22T17:32:13.820Z"},"impacts":[{"capecId":"CAPEC-1","descriptions":[{"lang":"en","value":"CAPEC-1 Accessing Functionality Not Properly Constrained by ACLs"}]}],"credits":[{"lang":"en","value":"Eurico Nicacio","type":"reporter"}],"source":{"discovery":"EXTERNAL"},"x_generator":{"engine":"cvelib 1.8.0"}}}}}