CVE-2026-41206 json
PySpector has a Plugin Code Execution Bypass via Incomplete Static Analysis in PluginSecurity.validate_plugin_code
published 6mo ago modified 14d ago also EUVD-2026-25160 , GHSA-vp22-38m5-r39r , PYSEC-2026-3031
- cvss
- 7.8
- version 3.1, NVD
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.2%
- EPSS 0.2% chance of exploitation in 30 days, percentile 8%
- public exploits
- 0
- none known
Summary
PySpector is a static analysis security testing (SAST) Framework engineered for modern Python development workflows. The plugin security validator in PySpector uses AST-based static analysis to prevent dangerous code from being loaded as plugins. Prior to version 0.1.8, the blocklist implemented in `PluginSecurity.validate_plugin_code` is incomplete and can be bypassed using several Python constructs that are not checked. An attacker who can supply a plugin file can achieve arbitrary code execution within the PySpector process when that plugin is installed and executed. Version 0.1.8 fixes the issue.
Patch / fix
- pypi pyspector 0.1.8
- parzivalhack pyspector 0.1.8
Is CVE-2026-41206 in your dependencies? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.
Check with FencerCISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- no
- Technical impact
- total
- Assessed
- 6mo ago
Exploit prediction
0.19% chance of exploitation in the next 30 days, higher than 8% of all scored CVEs (FIRST EPSS, 2026-11-09).
Exploits and checks
- github.com https://github.com/ParzivalHack/PySpector/security/advisories/GHSA-vp22-38m5-r39r referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 4.0 | 6.9 | CVSS:4.0/AV:L/AC:L/AT:N/PR:L/UI:A/VC:H/VI:H/VA:L/SC:N/SI:N/SA:N |
| CNA | 4.0 | 6.9 | CVSS:4.0/AV:L/AC:L/AT:N/PR:L/UI:A/VC:H/VI:H/VA:L/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X |
| NVD | 3.1 | 7.8 | CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| pypi | pyspector | <0.1.8 |
0.1.8 |
Affected products
- ParzivalHack PySpector
Classification
- Weakness
-
- CWE-184 Incomplete List of Disallowed Inputs
References
-
github.com
/ParzivalHack/PySpector/commit/3c9547157fc07396f22b26b3484a9a91eba98555
web, patch
-
github.com
/ParzivalHack/PySpector/commit/4e279e078c53d760fd321ff9b698d683c65ccb8e
web, patch
-
github.com
/ParzivalHack/PySpector/security/advisories/GHSA-vp22-38m5-r39r
exploit, web, vendor-advisory
-
nvd.nist.gov
/vuln/detail/CVE-2026-41206
advisory
-
github.com
/ParzivalHack/PySpector
package
-
pypi.org
/project/pyspector
package
-
github.com
/advisories/GHSA-vp22-38m5-r39r
advisory
Sources
- CVE List CVE-2026-41206
- GitHub Advisory GHSA-vp22-38m5-r39r
- NVD CVE-2026-41206
- OSV PYSEC-2026-3031
Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.
CPEs and fixed versions use Anchore's correction of NVD's data: Added CPE configurations because not yet analyzed by NVD.