Python RCE (CVE-2026-29075)
CVE-2026-29075
Mesa is an open-source Python library for agent-based modeling, simulating complex systems and exploring emergent behaviors. In version 3.5.0 and prior, checking out of untrusted code in benchmarks.ym...
Overview
A high-severity vulnerability has been identified in the Mesa agent-based modeling library. This flaw could allow an attacker to execute malicious code on systems running affected versions, potentially leading to a full compromise of the build or automation server.
Vulnerability Details
Mesa is a popular open-source Python library used by researchers and developers to simulate complex systems. The vulnerability exists in versions 3.5.0 and earlier. The issue is located within the benchmarks.yml GitHub Actions workflow file. If a developer clones or uses a malicious Mesa repository containing a tampered workflow, the automation runner could execute unauthorized code with elevated privileges. This occurs because the workflow insufficiently validates code during the checkout process.
Potential Impact
The primary risk is to development and continuous integration/continuous deployment (CI/CD) environments. If exploited, an attacker could:
- Gain control of the privileged automation runner (like a GitHub Actions runner).
- Steal sensitive secrets, tokens, or credentials stored in the CI/CD environment.
- Compromise the build pipeline to inject malware into software releases.
- Access or exfiltrate private source code and data. Such an incident could lead to significant operational disruption, supply chain attacks, and data breaches. For information on real-world data breaches, you can review recent breach reports.
Affected Versions
- Mesa versions 3.5.0 and all prior versions are vulnerable.
Remediation and Mitigation
The maintainers of Mesa have released a fix. Immediate action is required to secure your environment.
-
Upgrade Immediately: The definitive solution is to upgrade Mesa to a version that includes the security patch. The fix was implemented in commit
c35b8cd. Update your Mesa dependency to the latest patched version as soon as possible. -
Audit CI/CD Workflows: Review your GitHub Actions workflows (or other CI/CD pipelines) that use Mesa. Ensure they are referencing trusted, official repositories and have not been modified to pull from unexpected sources.
-
Principle of Least Privilege: Configure your automation runners to operate with the minimum necessary permissions. Avoid using overly privileged tokens or secrets in workflows that process external code.
-
Stay Informed: Regularly update your dependencies and subscribe to security advisories for the open-source libraries you use. For the latest updates on vulnerabilities like this, follow our security news section.
Note: Simply avoiding the use of the benchmarks.yml workflow is not sufficient, as the vulnerability is in the library’s source code that may be pulled into your environment. Upgrading is the only complete mitigation.
Never miss a critical vulnerability
Get real-time security alerts delivered to your preferred platform.
Related Advisories
Semantic Kernel, Microsoft's semantic kernel Python SDK, has a remote code execution vulnerability in versions prior to 1.39.4, specifically within the `InMemoryVectorStore` filter functionality. The ...
Crawl4AI versions prior to 0.8.0 contain a remote code execution vulnerability in the Docker API deployment. The /crawl endpoint accepts a hooks parameter containing Python code that is executed using...
pyLoad is a free and open-source download manager written in Python. From version 0.5.0b3.dev13 to 0.5.0b3.dev96, the edit_package() function implements insufficient sanitization for the pack_folder p...
joserfc is a Python library that provides an implementation of several JSON Object Signing and Encryption (JOSE) standards. In 1.6.2 and earlier, a resource exhaustion vulnerability in joserfc allows ...
Other Python Vulnerabilities
pyLoad is a free and open-source download manager written in Python. From version 0.5.0b3.dev13 to 0.5.0b3.dev96, the edit_package() function implements insufficient sanitization for the pack_folder p...
An issue was discovered in 6.0 before 6.0.3, 5.2 before 5.2.12, and 4.2 before 4.2.29. `URLField.to_python()` in Django calls `urllib.parse.urlsplit()`, which performs NFKC normalization on Windows th...
joserfc is a Python library that provides an implementation of several JSON Object Signing and Encryption (JOSE) standards. In 1.6.2 and earlier, a resource exhaustion vulnerability in joserfc allows ...
Ormar is a async mini ORM for Python. In versions 0.9.9 through 0.22.0, when performing aggregate queries, Ormar ORM constructs SQL expressions by passing user-supplied column names directly into `sql...