{"cve":"CVE-2026-42882","nvd":{"published":"2026-05-11T20:25:44.450","modified":"2026-10-26T18:10:00.173","status":"Deferred","description":"oxyno-zeta/s3-proxy is an aws s3 proxy written in go. Prior to 5.0.0, s3-proxy contains an authentication bypass caused by inconsistent URL path interpretation between the authentication middleware and the bucket handler. The authentication middleware evaluates resource path patterns against the percent-encoded request URI (r.URL.RequestURI()), while the bucket handler constructs S3 object keys from the decoded path (r.URL.Path). This mismatch, combined with the glob library being invoked without a path separator (causing * to match across / boundaries), allows unauthenticated attackers to write to, read from, or delete objects in protected S3 namespaces. Exploitation is possible via three techniques: (1) using * patterns\nthat match across path separators to reach protected routes via path traversal (e.g., /open/foo/drafts/../restricted/), (2) using percent-encoded slashes (%2F) to collapse multiple path segments into a single token at the auth layer while the decoded form resolves to a protected namespace at the storage layer, and (3) using dot-dot segments (../) under ** prefix patterns, where the raw path matches an open route while Go's URL parser resolves the traversal to a protected path before the bucket handler runs. An unauthenticated attacker with network access can perform unauthorized PUT, GET, or DELETE operations on objects in authentication-protected S3 namespaces. This vulnerability is fixed in 5.0.0.","cvss_v4":null,"cvss_v3":{"version":"3.1","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:L","score":9.4},"cwes":["CWE-22","CWE-863"],"references":["https://github.com/oxyno-zeta/s3-proxy/commit/1320e4abd46ad18c2851fedde50dbb79df8b7a51","https://github.com/oxyno-zeta/s3-proxy/commit/af5ff57d8c6022459495b8fb50130073bca7b48a","https://github.com/oxyno-zeta/s3-proxy/security/advisories/GHSA-rfgq-wgg8-662p","https://github.com/oxyno-zeta/s3-proxy/security/advisories/GHSA-rfgq-wgg8-662p"],"products":[],"source":"nvd","synced_at":"2026-10-26T18:27:13.530666824+00:00"},"epss":{"cve":"CVE-2026-42882","score":0.00554,"percentile":0.46019,"date":"2026-10-26"},"kev":null,"osv":[{"id":"GHSA-rfgq-wgg8-662p","url":"https://osv.dev/vulnerability/GHSA-rfgq-wgg8-662p","summary":"S3-Proxy has Security Issues in its Resource Path Matching Implementation","modified":"2026-06-25T23:11:23.649398436Z","packages":[{"ecosystem":"Go","name":"github.com/oxyno-zeta/s3-proxy","purl":"pkg:golang/github.com/oxyno-zeta/s3-proxy","ranges":["<0.0.0-20260424211602-1320e4abd46a"],"fixed":["0.0.0-20260424211602-1320e4abd46a"]}]},{"id":"GO-2026-5616","url":"https://osv.dev/vulnerability/GO-2026-5616","summary":"S3-Proxy has Security Issues in its Resource Path Matching Implementation in github.com/oxyno-zeta/s3-proxy","modified":"2026-06-25T23:01:33.768106752Z","packages":[{"ecosystem":"Go","name":"github.com/oxyno-zeta/s3-proxy","purl":"pkg:golang/github.com/oxyno-zeta/s3-proxy","ranges":["<0.0.0-20260424211602-1320e4abd46a"],"fixed":["0.0.0-20260424211602-1320e4abd46a"]}]}],"attribution":["This product uses the NVD API but is not endorsed or certified by the NVD.","EPSS scores: FIRST Exploit Prediction Scoring System, https://www.first.org/epss","Known exploited vulnerabilities: CISA Known Exploited Vulnerabilities Catalog, https://www.cisa.gov/known-exploited-vulnerabilities-catalog","Package advisories: OSV (https://osv.dev), from the GitHub Advisory Database, PyPA, Go, RustSec and other ecosystem databases, under CC-BY 4.0 or CC0","CVE records: the CVE Program's CVE List (https://www.cve.org), under its terms of use (https://www.cve.org/Legal/TermsOfUse). CVE is a registered trademark of The MITRE Corporation; this product is not affiliated with the CVE Program."]}