Severity by source
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Attacker controls a remotely-fetched OpenAPI spec (AV:N, PR:N) but a developer must generate and import the client (UI:R); module-scope code execution yields full C:H/I:H/A:H.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
4DescriptionCVE.org
Kiota is an OpenAPI based HTTP Client code generator. Prior to 1.32.0, Kiota's Python generator let attacker-controlled enum value descriptions from x-ms-enum.values[].description flow through KiotaBuilder.SetEnumOptions into Documentation.DescriptionTemplate and PythonConventionService.RemoveInvalidDescriptionCharacters without newline sanitization, allowing generated inline comments to split and execute attacker-controlled Python code at module scope when generated modules were imported. This issue is fixed in version 1.32.0.
AnalysisAI
Code injection in Microsoft Kiota's Python client generator (versions prior to 1.32.0) allows an attacker who controls an OpenAPI description to embed arbitrary Python that executes when a developer generates and imports the resulting client. The flaw stems from unsanitized x-ms-enum.values[].description strings being emitted as inline comments; embedded newlines break out of the comment and run at module scope. No public exploit identified at time of analysis, and the issue is not in CISA KEV. The assigned CVSS 3.1 base score is 7.5, though its impact metrics (C:N/I:N/A:H) understate what is functionally full code execution.
Technical ContextAI
Kiota is Microsoft's OpenAPI-based HTTP client code generator that turns an OpenAPI/Swagger description into typed client libraries across languages including Python. The vulnerability is a CWE-94 (Improper Control of Generation of Code / code injection) issue in the Python emitter. Kiota reads Microsoft's x-ms-enum vendor extension, whose values[].description fields carry human-readable enum documentation. These strings flow through KiotaBuilder.SetEnumOptions into Documentation.DescriptionTemplate and then PythonConventionService.RemoveInvalidDescriptionCharacters, which failed to strip or escape newline characters. Because Python line comments (#) terminate at a newline, a description containing an embedded newline splits the generated comment line, and any following text is emitted as live Python source at module top level, executing on import. The fix (PR #7735) sanitizes x-ms-enum descriptions before emitting comments/docstrings; a parallel Ruby injection via string interpolation markers was fixed in the same release (PR #7746).
RemediationAI
Vendor-released patch: 1.32.0 - upgrade Kiota to 1.32.0 or later before generating any further Python (or Ruby) clients, per advisory GHSA-7f3j-j7jj-r3vr (https://github.com/microsoft/kiota/security/advisories/GHSA-7f3j-j7jj-r3vr) and the v1.32.0 release notes (https://github.com/microsoft/kiota/releases/tag/v1.32.0). Where immediate upgrade is not possible, only generate clients from trusted, first-party OpenAPI descriptions and treat any externally-sourced spec as untrusted input; specifically, inspect or strip x-ms-enum values[].description fields for embedded newline/control characters before running the generator (trade-off: manual review does not scale and can miss obfuscated payloads). As a further control, review generated Python modules in code review before importing or running them, and generate in an isolated, non-privileged build sandbox so any injected code executes without access to production credentials (trade-off: adds build-pipeline friction). Regenerate any Python clients that were produced from untrusted specs with a patched version.
Wazuh 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
Same weakness CWE-94 – Code Injection
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-44927
GHSA-7f3j-j7jj-r3vr