Skip to content
VulniPulse
High7.5Red Hat Linux

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.

CVE-2026-59205 Published Jul 14, 2026Updated by vendor Jul 14, 2026
Affected products & platforms
Red Hat LinuxUnclassified
Open vendor advisory

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.

Matching phone alertsOptional email delivery

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.

Affected versions
  • < 12.3.0

Official advisory · high-confidence parse· fetched 5 days ago·verify at source

Fixed versions
  • 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

Recommended fix / mitigation
  • 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.