CVE-2026-55244 json
ASTEVAL: Sandbox Escape via BaseException Subclasses
published 5mo ago modified last mo. also EUVD-2026-78058 , GHSA-89v8-rhwq-hf77 , PYSEC-2026-3807
- cvss
- 5.0
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.2%
- EPSS 0.2% chance of exploitation in 30 days, percentile 7%
- public exploits
- 0
- none known
Summary
ASTEVAL is an evaluator of Python expressions and statements. Prior to 1.0.9, FROM_PY in asteval/astutils.py exposes BaseException, SystemExit, KeyboardInterrupt, and GeneratorExit to expressions evaluated by asteval.Interpreter.eval(), while run() and eval() in asteval/asteval.py catch Exception rather than these non-Exception BaseException subclasses. When an attacker-controlled expression raises one of these classes, on_raise() passes the class to raise_exception(), and the resulting exception bypasses the interpreter's safety handlers and propagates into the calling application. A consuming service that evaluates untrusted expressions can therefore be terminated or have signal and cleanup handling disrupted, causing denial of service. The separately documented read-only open() capability is not part of this vulnerability. This issue is fixed in version 1.0.9.
Patch / fix
- pypi asteval 1.0.9
- python-asteval openSUSE Tumbleweed 1.0.9-1.1
opensuse advisories openSUSE-SU-2026:11420-1
- github.com/lmfit/asteval@9c625b3 commit
- github.com/lmfit/asteval@c49c99a commit
- github.com/lmfit/asteval@a3e56e7 commit
- github.com/lmfit/asteval#153 pull request
- github.com/lmfit/asteval/releases/tag/1.0.9 release
Is CVE-2026-55244 in your dependencies? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.
Check with FencerCISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- no
- Technical impact
- partial
- Assessed
- last mo.
Exploit prediction
0.18% chance of exploitation in the next 30 days, higher than 7% of all scored CVEs (FIRST EPSS, 2026-11-11).
Exploits and checks
- github.com https://github.com/lmfit/asteval/security/advisories/GHSA-89v8-rhwq-hf77 referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 5.0 | CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:N/I:N/A:H |
| GitHub | 3.1 | 5.0 | CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:N/I:N/A:H |
| OSV | 3.1 | 5.0 | CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:N/I:N/A:H |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| pypi | asteval | <1.0.9 |
1.0.9 |
Affected products
- lmfit asteval
Classification
- Weakness
-
- CWE-248 Uncaught Exception
References
-
github.com
/lmfit/asteval/pull/153
web
- github.com /lmfit/asteval/commit/9c625b3674f8d05f206708bb85afca17a87694a4
- github.com /lmfit/asteval/commit/c49c99a67acb63eb7410231932250bd820380e45
-
github.com
/lmfit/asteval/commit/a3e56e7f8ed567a4817684d94213b290359077b4
web
-
github.com
/lmfit/asteval/security/advisories/GHSA-89v8-rhwq-hf77
exploit, web, advisory
-
github.com
/lmfit/asteval/releases/tag/1.0.9
web
-
github.com
/lmfit/asteval
package
-
pypi.org
/project/asteval
package
-
github.com
/advisories/GHSA-89v8-rhwq-hf77
advisory
-
nvd.nist.gov
/vuln/detail/CVE-2026-55244
advisory
Sources
- CVE List CVE-2026-55244
- GitHub Advisory GHSA-89v8-rhwq-hf77
- NVD CVE-2026-55244
- OSV PYSEC-2026-3807
- Maintainer advisory GHSA-89v8-rhwq-hf77
Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.
The maintainers of lmfit/asteval published their own advisory on GitHub. Reviewed sources take precedence over it.