CVE-2026-32640
SimpleEval: Objects (including modules) can leak dangerous modules through to direct access inside the sandbox
Impact
### Impact If the objects passed in as `names` to SimpleEval have modules or other disallowed / dangerous objects available as attrs. Additionally, dangerous functions or modules could be accessed by passing them as callbacks to other safe functions to call. Examples (found by @ByamB4): Any module where non-underscore attribute chains reach os or sys: - os.path, pathlib, shutil, glob (direct .os / .sys attributes) - statistics (has .sys) - numpy (has .ctypeslib.os and .f2py.sys) - urllib.parse (has .warnings.sys) ### Patches The latest version 1.0.5 has this issue fixed. ### Workarounds Don't pass in objects or modules which have direct attributes to potentially dangerous items. Use a wrapper to wrap the potentially vulnerable items (See the ModuleWrapper in version 1.0.5)
Affected packages
| Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|
| pip | simpleeval | < 1.0.5 | 1.0.5 |
Affected products
| Vendor | Product | Affected versions |
|---|---|---|
| Danthedeckie | Simpleeval | before 1.0.5 |
Weakness classification
References
- NVD record
- CVE.org record
- GitHub advisory
- https://github.com/danthedeckie/simpleeval/security/advisories/GHSA-44vg-5wv2-h2hg
- https://lists.debian.org/debian-lts-announce/2026/04/msg00023.html
- https://access.redhat.com/errata/RHSA-2026:10184
- https://access.redhat.com/errata/RHSA-2026:37275
- https://access.redhat.com/security/cve/CVE-2026-32640
- https://bugzilla.redhat.com/show_bug.cgi?id=2447529
- https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-32640.json
- https://github.com/advisories/GHSA-44vg-5wv2-h2hg
- https://github.com/danthedeckie/simpleeval/releases/tag/1.0.5
- https://nvd.nist.gov/vuln/detail/CVE-2026-32640
- https://github.com/pypa/advisory-database/tree/main/vulns/simpleeval/PYSEC-2026-132.yaml