CPANSA-Mojolicious-2026-15747: Mojolicious vulnerability
| Publisher | giterlizzi | Document category | csaf_security_advisory |
|---|---|---|---|
| Initial release date | 2026-07-14T00:00:00 | Engine | CSAF Perl Toolkit 0.26 |
| Current release date | 2026-07-14T00:00:00 | Build Date | |
| Current version | 1 | Status | final |
| CVSS v3.1 Base Score | 9.1 | Severity | |
| Original language | Language | en | |
| Also referred to | |||
Vulnerability Description
Mojolicious versions from 4.59 before 9.48 for Perl expose a stable representation of the session CSRF token to a BREACH compression oracle. _csrf_token generates and caches one token per session and returns the same value on every call, and _csrf_field places that value in a hidden `csrf_token` 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 csrf_protect validation.
Vulnerabilities
CVE-2026-15747
Vulnerability DescriptionMojolicious versions from 4.59 before 9.48 for Perl expose a stable representation of the session CSRF token to a BREACH compression oracle.
_csrf_token generates and caches one token per session and returns the same value on every call, and _csrf_field places that value in a hidden `csrf_token` 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 csrf_protect validation.
| Weakness | CWE-204 : Observable Response Discrepancy |
|---|
Product status
Known affected
| Product | Score | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Mojolicious greater than 4.59 and less than 9.48 |
|
Fixed
- Mojolicious greater than or equal 9.48
giterlizzi
Namespace: https://github.com/giterlizzi/
gdt@cpan.org
References
- CPANSA-Mojolicious-2026-15747 JSON self
https://raw.githubusercontent.com/giterlizzi/perl-CPANSA-CSAF/develop/csaf/white/2026/cpansa-mojolicious-2026-15747.json - https://github.com/mojolicious/mojo/commit/01921fbbbbeca2d1397e082d4a647f9b84c24e27.patch external
https://github.com/mojolicious/mojo/commit/01921fbbbbeca2d1397e082d4a647f9b84c24e27.patch - https://metacpan.org/release/SRI/Mojolicious-9.48/changes external
https://metacpan.org/release/SRI/Mojolicious-9.48/changes - http://www.openwall.com/lists/oss-security/2026/07/14/16 external
http://www.openwall.com/lists/oss-security/2026/07/14/16 - CVE-2026-15747 (NVD) external
https://nvd.nist.gov/vuln/detail/CVE-2026-15747
Revision history
| Version | Date of the revision | Summary of the revision |
|---|---|---|
| 1 | Tue Jul 14 00:00:00 2026 | First release |
Sharing rules
TLP:WHITE
For the TLP version see: https://www.first.org/tlp/