A specially-crafted file can cause libjxl's decoder to write pixel data to uninitialized unallocated memory. Soon after that data from another uninitialized unallocated region is copied to pixel data.
This can be done by requesting color transformation of grayscale images to another grayscale color space. Buffers allocated for 1-float-per-pixel are used as if they are allocated for 3-float-per-pixel. That happens only if LCMS2 is used as CMS engine. There is another CMS engine available (selected by build flags).
Metrics
Affected Vendors & Products
References
| Link | Providers |
|---|---|
| https://github.com/libjxl/libjxl/issues/4549 |
|
History
Wed, 11 Feb 2026 15:45:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| Description | A specially-crafted file can cause libjxl's decoder to write pixel data to uninitialized unallocated memory. Soon after that data from another uninitialized unallocated region is copied to pixel data. This can be done by requesting color transformation of grayscale images to another grayscale color space. Buffers allocated for 1-float-per-pixel are used as if they are allocated for 3-float-per-pixel. That happens only if LCMS2 is used as CMS engine. There is another CMS engine available (selected by build flags). | |
| Title | libjxl: Out-of-bounds write in grayscale color transformation when using LCMS2 | |
| Weaknesses | CWE-805 | |
| References |
| |
| Metrics |
cvssV4_0
|
Status: PUBLISHED
Assigner: Google
Published:
Updated: 2026-02-11T15:19:55.442Z
Reserved: 2026-02-03T16:27:32.730Z
Link: CVE-2026-1837
No data.
Status : Awaiting Analysis
Published: 2026-02-11T16:16:04.697
Modified: 2026-02-11T18:06:04.010
Link: CVE-2026-1837
No data.
OpenCVE Enrichment
No data.