GHSA-5r2p-pjr8-7fh7
NoneCVSS
—
EPSS
—
Published
Mar 5, 2026
CISA due date
—
Cloudanix analysis
A flaw in a machine learning software library could let a malicious search value run unwanted code, so affected installations should be updated.
- Exploitation
- Requires User Interaction
- Attacker needs
- User Interaction
- Complexity
- Moderate
- Impact
- Remote Code Execution
- Component
- Library
- Class
- RCE
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
The SageMaker Python SDK JumpStart search functionality used Python eval() to parse search-related input or metadata. If an attacker can influence the value being parsed, eval() can execute arbitrary Python expressions rather than treating the value as data. In a vulnerable runtime, this can lead to code execution with the privileges of the Python process running the SDK, including access to local files, environment variables, AWS credentials available to the process, and network-accessible resources from that execution context.
Why it matters to the business
Organizations using vulnerable versions of the sagemaker PyPI package may expose machine learning notebooks, pipelines, development workstations, or automation jobs to arbitrary code execution if untrusted or attacker-controlled JumpStart search input is processed. Consequences can include theft of cloud credentials, tampering with ML workflows, data exposure, unauthorized model or artifact access, and disruption of development or training operations. The issue is not listed in CISA KEV and has no reported exploit maturity in the supplied data, but it has been public for 158 days, so remediation should be handled through normal high-priority dependency patching.
How an attack unfolds
An attacker first needs a path to influence data consumed by the SageMaker Python SDK JumpStart search feature, such as through a notebook, script, automation workflow, shared parameter, or service that passes user-supplied search criteria into the vulnerable SDK code. Instead of supplying a benign search expression, the attacker supplies a Python expression designed to execute commands, import modules, read files, exfiltrate environment variables, or launch a follow-on payload. Because the vulnerable code evaluates the expression with eval(), the payload runs inside the Python process. The attacker then uses the privileges and network position of that process to access local artifacts, cloud credentials, model assets, datasets, or external command-and-control infrastructure. Successful exploitation depends heavily on whether untrusted input can reach the JumpStart search parser and what permissions the executing process has.
How to fix it
Upgrade the sagemaker PyPI package to version 3.4.0 or later wherever it is installed. Rebuild notebooks, containers, virtual environments, CI images, and ML workflow images that vendor or pin older sagemaker versions. Regenerate lockfiles after updating dependency constraints. If immediate upgrade is not possible, avoid passing untrusted input into JumpStart search functionality, restrict execution of shared notebooks and automation jobs, run affected workloads with least-privilege IAM roles, and isolate development or training environments from sensitive networks and credentials. Remove any local forks or patches that retain eval()-based parsing.
How to confirm the fix worked
Confirm installed versions with package inventory tooling or commands such as python -m pip show sagemaker and verify the reported version is 3.4.0 or later. Check dependency lockfiles, container manifests, notebook images, and build artifacts for pinned sagemaker versions below 3.4.0. Validate that rebuilt execution environments actually load the patched package by running a Python interpreter in the target environment and checking import sagemaker; sagemaker.__version__. Where source inspection is possible, confirm JumpStart search parsing no longer relies on eval() and uses the patched safe parser. Review applications and notebooks to ensure user-controlled values are not directly passed into JumpStart search without validation.
Typical attack path
- Identify an application, notebook, CI job, ML workflow, or automation script using a vulnerable sagemaker PyPI package version.
- Find a way to control or influence input passed to the SageMaker JumpStart search functionality.
- Craft a malicious Python expression that is valid for eval() and performs an attacker-chosen action.
- Trigger the vulnerable JumpStart search code path so the SDK evaluates the attacker-controlled expression.
- Execute commands or Python code with the privileges of the affected Python process.
- Collect secrets, cloud credentials, model artifacts, datasets, or system information available to that process.
- Use stolen credentials or network access for lateral movement, persistence, or data exfiltration.
How to detect it
To determine whether exploitation already occurred, review notebook execution history, Python application logs, ML pipeline logs, CI job logs, shell history, audit logs, and cloud activity generated by roles used in SageMaker or ML automation environments. Look for suspicious JumpStart search inputs containing Python execution syntax, imports of os/subprocess/socket, encoded payloads, or shell download commands. Correlate these events with unexpected outbound network connections, new files in temporary directories, unusual child processes spawned by Python, credential access, or anomalous AWS API calls made by the same execution role shortly after the search operation. Inspect notebooks and scripts for saved output cells or parameters containing payload-like strings. If endpoint telemetry is available, hunt for python processes spawning shells or command-line tools such as sh, bash, curl, wget, nc, or powershell. Because no public exploit indicators are supplied, detection should focus on behavioral evidence of Python expression injection and post-exploitation activity rather than a single definitive signature.
- __import__(
- os.system(
- subprocess.Popen(
- subprocess.call(
- subprocess.run(
- eval(
- exec(
- base64.b64decode(
- socket.socket(
- /bin/sh
- /bin/bash
- curl
- wget
- nc -e
- bash -c
- python -c
- python3 -c
- powershell -enc
- sagemaker.jumpstart
- JumpStart search
What your security team should do
- Inventory all uses of the sagemaker PyPI package across notebooks, containers, CI/CD images, ML pipelines, and developer environments.
- Upgrade all affected installations to sagemaker 3.4.0 or later and rebuild dependent runtime images.
- Prioritize environments that process user-supplied search terms, shared notebook parameters, external metadata, or automated JumpStart search workflows.
- Review IAM roles and credentials available to ML development and pipeline runtimes; reduce permissions to least privilege.
- Search notebooks, scripts, logs, and job histories for suspicious Python execution payloads passed near JumpStart search usage.
- Rotate credentials if evidence suggests malicious code ran in a vulnerable environment.
- Add dependency scanning or policy checks to prevent reintroduction of sagemaker versions below 3.4.0.
The record
SageMaker Python SDK replaced eval() with safe parser in JumpStart search functionality
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| PyPI | sagemaker | 0 | 3.4.0 |
Related vulnerabilities
- GHSA-rjrp-m2jw-pv9c SageMaker Python SDK has Exposed HMAC Also affects sagemaker
- GHSA-62rc-f4v9-h543 SageMaker Python SDK has Insecure TLS Configuration Also affects sagemaker
- CVE-2026-1777 The Amazon SageMaker Python SDK before v3.2.0 and v2.256.0 includes the ModelBuilder HMAC… Also affects sagemaker
- CVE-2026-1778 Amazon SageMaker Python SDK before v3.1.1 or v2.256.0 disables TLS certificate… Also affects sagemaker
- CVE-2025-0508 A vulnerability in the SageMaker Workflow component of aws/sagemaker-python-sdk allows… Also affects sagemaker
- CVE-2024-34072 sagemaker-python-sdk is a library for training and deploying machine learning models on… Also affects sagemaker
- CVE-2024-34073 sagemaker-python-sdk is a library for training and deploying machine learning models on… Also affects sagemaker
- CVE-2026-114729 Roundcube Webmail before 1.6.20 and 1.7.x before 1.7.5 is affected by a remote content… CWE-184