High [CVE-2026-59204] Denial of Service via crafted JPEG2000 image
This high-severity Red Hat Linux advisory covers CVE-2026-59204 affecting Red Hat AI Inference Server 3.3, Red Hat OpenShift AI 3.4, Red Hat Quay 3.12.
Android app · Google Play
Monitor future Red Hat Linux CVEs from your phone.
Choose a whole vendor or a precise platform, then receive matching security advisories by phone notification, email, or both. Coverage follows 32 official vendor sources and 160+ reviewed platform categories.
Summary
Pillow is a Python imaging library. From 8.2.0 through 12.2.0, src/libImaging/Jpeg2KDecode.c accumulates total_component_width across every tile in a JPEG2000 image instead of recomputing it per tile, allowing a crafted tiled JPEG2000 file to force substantially higher transient memory usage and trigger out-of-memory failures during decoding.
This issue is fixed in version 12.3.0. A remote attacker could exploit this vulnerability by providing a specially crafted JPEG2000 image file.
Due to incorrect calculation of memory requirements for image tiles, processing this file can lead to excessive memory consumption, resulting in a denial of service (DoS) through out-of-memory failures. The impact is limited to denial of service via excessive memory allocation.
A crafted JPEG2000 file can trigger out-of-memory failures, but this does not lead to code execution or information disclosure. Red Hat severity: Important — CVSS 7.5 (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H).
Weakness: CWE-131. Affected Red Hat products: Red Hat AI Inference Server 3.3; Red Hat OpenShift AI 3.4; Red Hat Quay 3.1; Red Hat Quay 3.12; Red Hat Quay 3.15; Red Hat Quay 3.9; Exploit Intelligence; Lightspeed Core; OpenShift Lightspeed; Red Hat AI Inference Server; Red Hat Enterprise Linux AI (RHEL AI) 3; Red Hat OpenShift AI (RHOAI); Red Hat Quay 3.
- 8.2.0
- 12.2.0
Official advisory · high-confidence parse· fetched 5 days ago·verify at source
- 12.3.0
- rhaiis/model-opt-cuda-rhel9:1787601159
- rhoai/odh-automl-rhel9:1786612415
- rhoai/odh-autorag-rhel9:1786612637
- rhoai/odh-llm-d-kv-cache-rhel9:1787169432
- rhoai/odh-mlflow-rhel9:1787226790
- rhoai/odh-openvino-model-server-rhel9:1787303251
- rhoai/odh-pipeline-runtime-datascience-cpu-py312-rhel9:1787073866
- rhoai/odh-pipeline-runtime-pytorch-cuda-py312-rhel9:1787073873
- rhoai/odh-pipeline-runtime-pytorch-llmcompressor-cuda-py312-rhel9:1787073459
- rhoai/odh-pipeline-runtime-pytorch-rocm-py312-rhel9:1787073611
- rhoai/odh-pipeline-runtime-tensorflow-cuda-py312-rhel9:1787073451
- rhoai/odh-pipeline-runtime-tensorflow-rocm-py312-rhel9:1787073451
- rhoai/odh-th06-cpu-torch210-py312-rhel9:1787076778
- rhoai/odh-th06-cuda130-torch210-py312-rhel9:1787077779
- rhoai/odh-th06-rocm64-torch291-py312-rhel9:1787076481
- rhoai/odh-training-cuda128-torch29-py312-rhel9:1786611803
- rhoai/odh-training-rocm64-torch29-py312-rhel9:1786611435
- rhoai/odh-trustyai-garak-lls-provider-dsp-rhel9:1786613209
- rhoai/odh-workbench-codeserver-datascience-cpu-py312-rhel9:1787121387
- rhoai/odh-workbench-jupyter-datascience-cpu-py312-rhel9:1787074331
- rhoai/odh-workbench-jupyter-pytorch-cuda-py312-rhel9:1787073605
- rhoai/odh-workbench-jupyter-pytorch-rocm-py312-rhel9:1787073546
- rhoai/odh-workbench-jupyter-tensorflow-cuda-py312-rhel9:1787073717
- rhoai/odh-workbench-jupyter-tensorflow-rocm-py312-rhel9:1787073713
- rhoai/odh-workbench-jupyter-trustyai-cpu-py312-rhel9:1787073593
- quay/quay-rhel8:1786395065
- quay/quay-rhel8:1786170635
- quay/quay-rhel8:1785261506
- quay/quay-rhel8:1785950004
- RHSA-2026:59518
- RHSA-2026:60520
- RHSA-2026:53520
- RHSA-2026:52968
- RHSA-2026:48933
- RHSA-2026:50931
Official advisory · high-confidence parse· fetched 5 days ago·verify at source
Mitigation checklist
- If the application does not need JPEG2000 support, block .jp2, .j2k, .jpf, and .jpx uploads at the input layer. For services that do process JPEG2000, set memory limits on the process or container (LimitAS= in systemd, or memory limits in Kubernetes/Podman) so a crafted image can only crash the worker, not the whole host. Add automatic restarts (Restart=always in systemd, or container restart policies) so the service recovers from OOM kills without someone having to intervene.
Official advisory · high-confidence parse· fetched 5 days ago·verify at source
Discussion(0)
No comments yet. Share field notes, upgrade gotchas, or questions — verify against the vendor advisory before acting on community advice.
Sign in to join the discussion.