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. _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.
Scoring
- Severity
- CRITICAL
- CVSS base score
- 9.1
- CVSS vector
- CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N
- EPSS probability
- 0.26%
- CWE
- CWE-204, CWE-352
- Published
- 2026-07-14
- Last modified
- 2026-07-15
Affected products
- SRI Mojolicious
Weakness type
Related vulnerabilities
- CVE-2026-9161 — User Enumeration in DernekPlus' Website Template
- CVE-2026-86758 — Snipe-IT before 8.7.0 License Key Exposure via CSV Export
- CVE-2026-19205 — User Enumeration in GastroMenum's GastroMenum Web Panel
- CVE-2026-19080 — Username Enumeration in Menulux Software's Menulux Portal
- CVE-2026-78584 — Observable Response Discrepancy in Kibana Leading to Cross-Space Information Disclosure
- CVE-2026-84307 — Filament: Password validity disclosure for accounts denied panel access on login page
- CVE-2026-81033 — Automatisch through 0.15.0 User Enumeration via Forgot-Password Response Discrepancy
- CVE-2026-75575 — Rocket.Chat Missing DDP Rate Limit on the sendForgotPasswordEmail Meteor Method