{"id":"PYSEC-2026-330","summary":"EPyT-Flow vulnerable to unsafe JSON deserialization (__type__)","details":"### Impact\nEPyT-Flow’s REST API parses attacker-controlled JSON request bodies using a custom deserializer (my_load_from_json) that supports a __type__ field. When __type__ is present, the deserializer dynamically imports an attacker-specified module/class and instantiates it with attacker-supplied arguments. This allows invoking dangerous classes such as subprocess.Popen, which can lead to OS command execution during JSON parsing. This also affects the loading of JSON files.\n\n### Patches\nEPyT-Flow  has been patched in 0.16.1 -- affects all versions \u003c= 0.16.0\n\n### Workarounds\n Do not load any JSON from untrusted sources and do not expose the REST API.\n\n ### Credits\nEPyT-Flow  thanks Jarrett Chan (@syphonetic) for detecting and reporting the bug.","aliases":["CVE-2026-25632","GHSA-74vm-8frp-7w68"],"modified":"2026-07-01T20:22:52.406443Z","published":"2026-06-29T11:50:50.959788Z","references":[{"type":"WEB","url":"https://github.com/WaterFutures/EPyT-Flow/security/advisories/GHSA-74vm-8frp-7w68"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-25632"},{"type":"WEB","url":"https://github.com/WaterFutures/EPyT-Flow/commit/3fff9151494c7dbc72073830b734f0a7e550e385"},{"type":"PACKAGE","url":"https://github.com/WaterFutures/EPyT-Flow"},{"type":"WEB","url":"https://github.com/WaterFutures/EPyT-Flow/releases/tag/v0.16.1"},{"type":"PACKAGE","url":"https://pypi.org/project/epyt-flow"},{"type":"ADVISORY","url":"https://github.com/advisories/GHSA-74vm-8frp-7w68"}],"affected":[{"package":{"name":"epyt-flow","ecosystem":"PyPI","purl":"pkg:pypi/epyt-flow"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.16.1"}]}],"versions":["0.1.0","0.1.1","0.10.0","0.11.0","0.12.0","0.13.0","0.13.1","0.14.0","0.14.1","0.14.2","0.15.0","0.15.0b1","0.16.0","0.2.0","0.3.0","0.4.0","0.5.0","0.6.0","0.7.0","0.7.1","0.7.2","0.7.3","0.8.0","0.8.1","0.9.0"],"database_specific":{"source":"https://github.com/pypa/advisory-database/blob/main/vulns/epyt-flow/PYSEC-2026-330.yaml"}}],"schema_version":"1.7.5","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H"}]}