Skip to content
OpenAdvisories
High · 8.4 CVE-2025-24359 EUVD-2025-0127GHSA-3wwr-3g9f-9gc7PYSEC-2026-1195

ASTEVAL Vulnerable to Maliciously Crafted Format Strings Leading to Sandbox Escape

Published Jan 24, 2025 · Updated Feb 12, 2025 · Assigned by GitHub_M

Description

ASTEVAL is an evaluator of Python expressions and statements. Prior to version 1.0.6, if an attacker can control the input to the `asteval` library, they can bypass asteval's restrictions and execute arbitrary Python code in the context of the application using the library. The vulnerability is rooted in how `asteval` performs handling of `FormattedValue` AST nodes. In particular, the `on_formattedvalue` value uses the dangerous format method of the str class. The code allows an attacker to manipulate the value of the string used in the dangerous call `fmt.format(__fstring__=val)`. This vulnerability can be exploited to access protected attributes by intentionally triggering an `AttributeError` exception. The attacker can then catch the exception and use its `obj` attribute to gain arbitrary access to sensitive or protected object properties. Version 1.0.6 fixes this issue.

Affected products

VendorProductAffectedFixed
lmfit asteval < 1.0.6 —

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

ReleasePackageFixed inAdvisory
Debian 14 python-asteval 1.0.6-2 —
Debian 13 python-asteval 1.0.6-2 —
Debian 12 python-asteval No fix yet —
ReleasePackageFixed inAdvisory
Ubuntu 24.04 LTS python-asteval No fix yet —
Ubuntu 22.04 LTS python-asteval No fix yet —
Ubuntu 20.04 LTS python-asteval No fix yet —
ReleasePackageFixed inAdvisory
SUSE Package Hub 15 SP6 python-asteval 1.0.6-bp156.4.3.1 openSUSE-SU-2025:0052-1
ReleasePackageFixed inAdvisory
openSUSE Tumbleweed python-asteval 1.0.6-1.1 openSUSE-SU-2025:14701-1
openSUSE Leap 15.6 python-asteval 1.0.6-bp156.4.3.1 openSUSE-SU-2025:0052-1

Affected packages

EcosystemPackageAffectedFixedRecord
PyPI asteval < 1.0.6 1.0.6 GHSA-3wwr-3g9f-9gc7

Advisories 2

References