CVE-2026-15747: Mojolicious versions from 4.59 before 9.48 for Perl expose a stable representation of the session CSRF token to a BREACH compression oracle
Mojolicious versions from 4.59 before 9.48 for Perl expose a stable representation of the session CSRF token to a BREACH compression oracle.
csrftoken generates and caches one token per session and returns the same value on every call, and csrffield places that value in a hidden csrftoken input. When a response carrying the token also echoes attacker-controlled input and is gzip-compressed, the chosen values and the resulting compressed lengths form a BREACH oracle.
An attacker able to query it can recover the token and pass csrfprotect validation.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
Mojoliciousto a version that resolves this vulnerability.Fixed in 9.48
Event History
Frequently Asked Questions
What is the severity of CVE-2026-15747?
CVE-2026-15747 has a critical severity rating of 9.1 according to the CVSS 3.1 scoring.
How do I fix CVE-2026-15747?
To fix CVE-2026-15747, upgrade to Mojolicious version 9.48 or later.
What type of vulnerability is CVE-2026-15747?
CVE-2026-15747 is a Cross-Site Request Forgery (CSRF) vulnerability.
Which software is affected by CVE-2026-15747?
Mojolicious versions from 4.59 before 9.48 for Perl are affected by CVE-2026-15747.
What does CVE-2026-15747 expose in Mojolicious?
CVE-2026-15747 exposes a stable representation of the session CSRF token to a BREACH compression oracle.