{"id":"CVE-2026-25478","aliases":["GHSA-2p2x-hpg8-cqp2","PYSEC-2026-2195"],"url":"https://o3.security/vulnerability/CVE-2026-25478","summary":"Litestar has a CORS origin allowlist bypass due to unescaped regex metacharacters in allowed origins","details":"Litestar is an Asynchronous Server Gateway Interface (ASGI) framework. Prior to 2.20.0, CORSConfig.allowed_origins_regex is constructed using a regex built from configured allowlist values and used with fullmatch() for validation. Because metacharacters are not escaped, a malicious origin can match unexpectedly. The check relies on allowed_origins_regex.fullmatch(origin). This vulnerability is fixed in 2.20.0.","published":"2026-02-09T18:46:56.445Z","modified":"2026-08-07T11:50:42.273577247Z","cvss":{"score":7.4,"severity":"HIGH","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:N/A:N"},"epss":null,"cisaKev":null,"exploitsKnown":0,"affectedPackages":[{"ecosystem":"PyPI","name":"litestar","fixedVersion":"2.20.0"}],"fix":{"url":"https://github.com/litestar-org/litestar/commit/eb87703b309efcc0d1b087dcb12784e76b003d5a","label":"litestar-org/litestar@eb87703"},"references":[{"type":"WEB","url":"https://docs.litestar.dev/2/release-notes/changelog.html#2.20.0"},{"type":"WEB","url":"https://github.com/litestar-org/litestar/releases/tag/v2.20.0"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/25xxx/CVE-2026-25478.json"},{"type":"ADVISORY","url":"https://github.com/litestar-org/litestar/security/advisories/GHSA-2p2x-hpg8-cqp2"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-25478"},{"type":"FIX","url":"https://github.com/litestar-org/litestar/commit/eb87703b309efcc0d1b087dcb12784e76b003d5a"}],"provenance":{"sources":["OSV.dev","FIRST.org (EPSS)"],"lastVerified":"2026-08-07T11:50:42.273577247Z"}}