High [CVE-2026-59205] Controlled native heap corruption in ImageCms.ImageCmsTransform.apply API
This high-severity Red Hat Linux advisory covers CVE-2026-59205 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. Prior to 12.3.0, Pillow's ImageCms.ImageCmsTransform.apply(im, imOut) API can trigger controlled native heap corruption when the caller supplies an output image whose mode does not match the transform's declared output mode.
This issue is fixed in version 12.3.0. This can lead to a denial of service (DoS) condition, making the affected system or application unavailable.
While the underlying issue is heap corruption via mode mismatch, it does not provide a controlled write primitive exploitable for code execution in affected Red Hat products. 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-843. 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; 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.
Under investigation: Exploit Intelligence; Red Hat Ansible Automation Platform 2; Red Hat Enterprise Linux 7; Red Hat Enterprise Linux 8; Red Hat Satellite 6. Will not fix / out of support: Red Hat AI Inference Server.
Red Hat fixing advisory: RHSA-2026:59518, RHSA-2026:60520, RHSA-2026:53520, RHSA-2026:52968, RHSA-2026:48933, RHSA-2026:50931.
- < 12.3.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
- Most applications using Pillow's color management via profileToProfile() or applyTransform() are not exposed. Only code that calls ImageCmsTransform.apply() directly with a user-controlled output image whose mode does not match the transform can trigger the heap corruption. Audit your code for direct apply() calls to confirm. RHEL builds ship with ASLR, full RELRO/PIE, and FORTIFY_SOURCE by default, making escalation from crash to code execution much harder. For DoS containment, configure automatic service restart (Restart=always in systemd, or container restart policies) so the process recovers without manual intervention.
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.