Critical, CVSS 9.3PyPIAmendedPublished
python-statemachine SCXML Eval Injection
CVE-2026-47103 · GHSA-v4jc-pm6r-3vj8
- Affected
- PyPI python-statemachine >= 3.0.0, < 3.2.0
- Fixed in
- 3.2.0· Vendor fix available
- Issue
- python-statemachine 3.1.2 evaluates <data expr="..." attributes in SCXML documents using Python's eval(). Any application that passes attacker-controlled SCXML content to SCXMLProcessor is vulnerable to arbitrary code execution in the context of the hosting process. Details SCXMLProcessor.parsescxmlfile() processes SCXML documents and evaluates <data element expr attributes via the following call chain: eval() calls Python's built-in eval() directly on the expression string without sandboxing or restriction. PoC Impact This is an eval injection vulnerability (CWE-95). Remote or local code execution depending on whether the consuming application accepts SCXML content from remote users, uploaded files, configuration, plugins, or other untrusted sources.
Recommended action: Upgrade to 3.2.0 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.