CVE-2026-25632
published 2026-02-06CVE-2026-25632: EPyT-Flow is a Python package designed for the easy generation of hydraulic and water quality scenario data of water distribution networks. Prior to 0.16.1…
PriorityP266critical10CVSS 3.1
AVNACLPRNUINSCCHIHAH
EPSS
0.66%
46.8th percentile
EPyT-Flow is a Python package designed for the easy generation of hydraulic and water quality scenario data of water distribution networks. Prior to 0.16.1, EPyT-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. This vulnerability is fixed in 0.16.1.
Affected
2 ranges
| Vendor | Product | Version range | Fixed in |
|---|---|---|---|
| waterfutures | epyt-flow | < 0.16.1 | 0.16.1 |
| waterfutures | epyt-flow | >= 0 < 0.16.1 | 0.16.1 |
Stop checking back — get the weekly exploitation signal.
Every Monday: what got weaponized or added to CISA KEV in the last seven days — each CVE cross-linked to its PoC, Nuclei template, and detection rule. Free, one email a week, unsubscribe in one click.
GHSA
EPyT-Flow vulnerable to unsafe JSON deserialization (__type__)
ghsa·2026-02-04
CVE-2026-25632 [CRITICAL] CWE-502 EPyT-Flow vulnerable to unsafe JSON deserialization (__type__)
EPyT-Flow vulnerable to unsafe JSON deserialization (__type__)
### Impact
EPyT-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.
### Patches
EPyT-Flow has been patched in 0.16.1 -- affects all versions <= 0.16.0
### Workarounds
Do not load any JSON from untrusted sources and do not expose the REST API.
### Credits
EPyT-Flow thanks Jarrett Chan (@syphonetic) for detecting and rep
OSV
EPyT-Flow vulnerable to unsafe JSON deserialization (__type__)
osv·2026-02-04
CVE-2026-25632 [CRITICAL] EPyT-Flow vulnerable to unsafe JSON deserialization (__type__)
EPyT-Flow vulnerable to unsafe JSON deserialization (__type__)
### Impact
EPyT-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.
### Patches
EPyT-Flow has been patched in 0.16.1 -- affects all versions <= 0.16.0
### Workarounds
Do not load any JSON from untrusted sources and do not expose the REST API.
### Credits
EPyT-Flow thanks Jarrett Chan (@syphonetic) for detecting and rep
No detection rules found.
No public exploits indexed.
2026-02-06
Published