PT-2026-67222 · Pypi · Asteval
CVE-2026-55244
·
Published
2026-08-01
·
Updated
2026-09-10
CVSS v3.1
5.0
Medium
| Vector | AV:L/AC:L/PR:L/UI:R/S:U/C:N/I:N/A:H |
Name of the Vulnerable Software and Affected Versions
asteval versions prior to 1.0.9
Description
An attacker can trigger a Denial of Service (DoS) by supplying specific expressions to the
asteval.Interpreter.eval() function. The issue occurs because the FROM PY list in asteval/astutils.py exposes classes that inherit from BaseException but not from Exception, specifically SystemExit, KeyboardInterrupt, GeneratorExit, and BaseException.Since the exception handlers in the
run() and eval() functions only catch Exception, these specific subclasses bypass the safety net and propagate directly to the calling application. This allows an attacker to terminate the process, disrupt signal handlers, or interfere with generator cleanup.Technical details include:
- API Endpoints:
asteval.Interpreter.eval() - Vulnerable Parameters or Variables: Expressions passed to the
eval()method. - Function Names:
run(),eval(), andraise exception().
Recommendations
Update to version 1.0.9 or later.
As a temporary mitigation, remove
BaseException, GeneratorExit, KeyboardInterrupt, and SystemExit from the FROM PY list in asteval/astutils.py to prevent these classes from being accessible within the sandbox.Fix
Found an issue in the description? Have something to add? Feel free to write us 👾
Weakness Enumeration
Related Identifiers
Affected Products
Asteval