Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessCraft NNP file with malicious function.type
-
ExploitDeliver model to target developer or pipeline
-
ExecutionVictim runs NNP Converter on file
-
Impacteval() executes attacker-supplied Python code
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Input neutralization, injection prevention
|
| Exploitation Conditions | Exploitation requires that a victim run the NNP Converter component on an attacker-crafted NNP model file in which the 'function.type' argument contains Python code; func_set_nnabla_version_decorate in python/src/nnabla/utils/converter/utils.py passes that value to eval(). Limiting factors (per CVSS UI:P and the description): the attack is not automatic - a user or automated pipeline must actively load/convert the malicious model, so there is no path without someone processing attacker-supplied input. Exposure is further bounded to end-of-life versions up to and including 1.39.0, and because the product is no longer supported and the vendor did not respond, no official fixed version is available; the only mitigations are operational (avoid converting untrusted model files, migrate off the unsupported library). |
| Impact | This is a low-urgency issue despite being a code-injection flaw (CWE-74). The vendor-supplied CVSS 4.0 vector is AV:N/AC:L/PR:N/UI:P with only Low impact (VC:L/VI:L/VA:L), yielding a base score of 2.1, and the vuln.today decision label is 'monitor' - the lowest actionable tier. No CISA KEV entry is present (not confirmed actively exploited) and no EPSS probability was supplied, so widespread or automated exploitation is not evidenced. Working against the low score: the root cause is an eval() on the attacker-controlled function.type field, which in principle yields arbitrary Python execution in the converter's process - this suggests the real technical impact is higher than the Low C/I/A that vuldb assigned, so the 2.1 score likely understates consequence. Working in favor of low priority: exploitation is not unauthenticated-and-fire-and-forget - the CVSS vector carries UI:P (user interaction), meaning a victim must actually run the NNP Converter on an attacker-supplied model file. The affected product is also explicitly end-of-life ('only affects products no longer supported by the maintainer'), limiting the exposed population. Net: a genuine code-injection bug with public PoC, but gated by user interaction, confined to an unsupported niche ML tool, and not tied to any confirmed active exploitation - closer to a high-severity-mechanism / low-real-world-risk profile than an emergency. |
| Exploit ScenarioDerived | An attacker publishes or sends a malicious NNP model file whose 'function.type' field embeds Python code. A developer or pipeline that uses Sony Neural Network Libraries' NNP Converter runs the conversion on that file, and func_set_nnabla_version_decorate in utils.py passes the attacker-controlled value to eval(), executing the injected code in the converter's context. A public PoC reference exists (GitHub) and the disclosure states the exploit has been released, so the technical barrier to reproduction is low, though a victim must still choose to process the crafted model. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 26, 2026
Code injection in the NNP Converter utility shipped with Sony Neural Network Libraries (NNabla) through version 1.39.0 allows an attacker who supplies a crafted model file to have Python code executed through eval() when a victim converts that file. The unsafe sink is func_set_nnabla_version_decorate in python/src/nnabla/utils/converter/utils.py, which passes the model's attacker-controlled 'function.type' value into eval(); the CVSS 4.0 vector requires user interaction (UI:P), so nothing happens until a person or an automated pipeline actively loads and converts the malicious model. The CNA reports that exploit code has been released publicly and that the vendor did not respond to disclosure; the library is end-of-life with no fixed version, and the overall priority is 'monitor' because exploitation depends on someone processing untrusted input rather than on a remotely reachable service.
RemediationAI
No vendor-released patch was identified at time of analysis and none is expected: the affected versions are end-of-life and the maintainer did not respond to the report, so there is no fixed version to upgrade to (the CNA description states that only unsupported products are affected). The practical fix is to migrate off the unmaintained NNabla converter to a supported model-conversion toolchain; until that migration is complete, treat every .nnp model as untrusted code and do not run NNP Converter on files of unknown provenance, which means accepting that cross-format conversion workflows must be re-routed or performed manually. As an operational compensating control, run any conversion of externally sourced models inside a disposable, least-privilege sandbox with no network egress and no access to credentials or shared storage, accepting the overhead and the risk that a sandbox escape would still expose the host. Where conversion is unavoidable, inspect model archives for the 'function.type' field and reject files carrying Python expressions before conversion, though this filtering is heuristic and was not provided by the vendor. The 'monitor' decision label reflects the interaction requirement and the end-of-life status rather than a low-impact outcome - successful exploitation yields arbitrary code execution in the converter process.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
NNabla is Sony's deep learning framework, and its NNP Converter (python/src/nnabla/utils/converter/) translates NNabla model files to and from formats such as ONNX and TensorFlow, reconstructing function metadata as it does so. The flaw is CWE-74 (injection), specifically an eval() of untrusted data: func_set_nnabla_version_decorate builds a function definition from fields in the input model, and the 'function.type' field is handed to Python's eval() without restriction, so a model file containing Python expressions in that field executes in the converter's process. Because the value travels inside a model archive that the user chooses to open, the CVSS 4.0 vector scores UI:P and E:P, yielding only 2.1, whereas the 3.1 assessment (AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H, 8.8) reflects the full impact of arbitrary code execution once conversion occurs - the divergence is about the interaction prerequisite, not about the strength of the primitive. Only versions up to and including 1.39.0 are in scope, all of which the maintainer no longer supports, and no CPE entries or vendor advisory were published for this issue; the trigger specifics beyond 'the function.type argument reaches eval()' are not described in the available sources.
Know when Python gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:L/VI:L/VA:L/SC:N/SI:N/SA:N/E:P
A crafted model file reaches eval(), giving arbitrary code execution (C/I/A:H); the file is typically delivered remotely (AV:N) but a user must run the converter on it (UI:R), with no privileges needed (PR:N).
Primary rating from Vendor (vuldb).
CVSS VectorVendor: vuldb
DescriptionCVE.org
A security flaw has been discovered in Sony Neural Network Libraries up to 1.39.0. This impacts the function func_set_nnabla_version_decorate of the file python/src/nnabla/utils/converter/utils.py of the component NNP Converter. Performing a manipulation of the argument function.type results in code injection. The attack can be initiated remotely. The exploit has been released to the public and may be used for attacks. The vendor was contacted early about this disclosure but did not respond in any way. This vulnerability only affects products that are no longer supported by the maintainer.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Code injection occurs when an application accepts user input and passes it directly into a language interpreter or evaluator without proper sanitization.
Related Vulnerabilities in Sony Neural Network Libraries Injection Flaws
View all 2Wazuh SIEM platform versions 4.4.0 through 4.9.0 contain an unsafe deserialization vulnerability in the DistributedAPI t
BentoML version 1.4.2 and earlier contains an unauthenticated remote code execution vulnerability through insecure deser
pgAdmin 4 contains critical remote code execution vulnerabilities in the Query Tool download and Cloud Deployment endpoi
The renderLocalView function in render/views.py in graphite-web in Graphite 0.9.5 through 0.9.10 uses the pickle Python
BentoML is a Python library for building online serving systems optimized for AI apps and model inference. Rated critica
OpenSSL before 0.9.8za, 1.0.0 before 1.0.0m, and 1.0.1 before 1.0.1h does not properly restrict processing of ChangeCiph
pyLoad download manager version prior to 0.5.0b3.dev77 exposes the Flask SECRET_KEY through an unauthenticated endpoint.
Langflow (a visual LLM pipeline builder) contains a critical unauthenticated code execution vulnerability (CVE-2026-3301
In Mercurial before 4.1.3, "hg serve --stdio" allows remote authenticated users to launch the Python debugger, and conse
Unauthenticated remote code execution affects Kestra OSS (the open-source event-driven orchestration platform) prior to
Unauthenticated remote code execution in Marimo ≤0.20.4 allows attackers to execute arbitrary system commands via the `/
pyLoad is the free and open-source Download Manager written in pure Python. Rated medium severity (CVSS 5.3), this vulne
EUVD-2026-109592
GHSA-4vrm-q3gq-97hp
NVD
CVE.org
EPSS
VulDB
Exploit-DB