CVE-2026-31228 — Remote code execution via unsafe eval of LossFn / Optimizer strings in ART Kubeflow evaluation

MITRE service request: 1987825

Status: RESERVED (pending a qualifying public reference per CNA Rules §5.3).

Official CVE description

The Adversarial Robustness Toolbox (ART) thru 1.20.1 contains a remote code execution vulnerability in its Kubeflow component. The robustness evaluation function for PyTorch models uses the unsafe eval() function to dynamically evaluate user-supplied strings for the LossFn and Optimizer parameters without any sanitization or security restrictions. An attacker can exploit this by providing a specially crafted string that contains arbitrary Python code, which will be executed when eval() is called, leading to complete compromise of the system running the ART evaluation.

Summary

The Kubeflow-oriented robustness evaluation path treats remote-controllable LossFn / Optimizer fields as Python source and evaluates them with eval. Anyone who can influence pipeline parameters (object storage, CI variables, or compromised model_id inputs) can inject arbitrary expressions executed during evaluation.

Affected product and versions

Technical details

Risk

Critical for automated ML pipelines that reuse shared parameter blobs.

Remediation / workaround