Cyber Posture

CVE-2026-25478

HighPublic PoC

Published: 09 February 2026

Published
09 February 2026
Modified
17 February 2026
KEV Added
Patch
CVSS Score 7.4 CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:N/A:N
EPSS Score 0.0002 5.9th percentile
Risk Priority 15 60% EPSS · 20% KEV · 20% CVSS

Summary

CVE-2026-25478 is a high-severity Permissive Cross-domain Security Policy with Untrusted Domains (CWE-942) vulnerability in Litestar Litestar. Its CVSS base score is 7.4 (High).

Operationally, exploitation aligns with the MITRE ATT&CK technique Exploit Public-Facing Application (T1190); ranked at the 5.9th percentile by exploit likelihood (below the median); it is not currently listed in the CISA KEV catalog; a public proof-of-concept is referenced.

Threat & Defense at a Glance

What attackers do: exploitation maps to Exploit Public-Facing Application (T1190).
Threat & Defense Details

MITRE ATT&CK Enterprise TechniquesAI

T1190 Exploit Public-Facing Application Initial Access
Adversaries may attempt to exploit a weakness in an Internet-facing host or system to initially access a network.
Why these techniques?

CORS origin validation bypass via unescaped regex in public-facing ASGI web framework directly enables remote exploitation of the application to subvert cross-origin controls and access sensitive data.

Confidence: HIGH · MITRE ATT&CK Enterprise v18.1

NVD Description

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.…

more

The check relies on allowed_origins_regex.fullmatch(origin). This vulnerability is fixed in 2.20.0.

Deeper analysisAI

CVE-2026-25478 affects Litestar, an Asynchronous Server Gateway Interface (ASGI) framework, in versions prior to 2.20.0. The vulnerability arises in the CORSConfig.allowed_origins_regex component, where a regular expression is constructed from configured allowlist values without escaping metacharacters. This regex is then used with Python's fullmatch() function for origin validation, enabling malicious origins to match unexpectedly and bypass intended CORS restrictions. The issue is classified under CWE-942 (Permissive Cross-domain Policy with Untrusted Domains) and carries a CVSS v3.1 base score of 7.4 (AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:N/A:N).

An attacker can exploit this vulnerability remotely over the network with low complexity and no required privileges, though it necessitates user interaction, such as tricking a victim into loading a malicious webpage. By crafting an origin string that exploits the unescaped metacharacters in the regex, the attacker can make their domain appear to match the application's allowlist. Successful exploitation changes the scope to high, allowing high-impact confidentiality violations, such as unauthorized access to sensitive data via cross-origin requests that bypass CORS protections.

Litestar addressed this issue in version 2.20.0, as detailed in the project's changelog, release notes, and a specific commit (eb87703b309efcc0d1b087dcb12784e76b003d5a). The GitHub security advisory (GHSA-2p2x-hpg8-cqp2) recommends upgrading to 2.20.0 or later to mitigate the vulnerability by properly escaping metacharacters in the regex construction.

Details

CWE(s)

Affected Products

litestar
litestar
≤ 2.20.0

CVEs Like This One

CVE-2026-41056Shared CWE-942
CVE-2025-9292Shared CWE-942
CVE-2026-1181Shared CWE-942
CVE-2026-30924Shared CWE-942
CVE-2026-32610Shared CWE-942
CVE-2024-22348Shared CWE-942
CVE-2026-34449Shared CWE-942
CVE-2026-6662Shared CWE-942
CVE-2026-5302Shared CWE-942
CVE-2026-27579Shared CWE-942

References