CVE-2026-105796 json
Kiota: Code injection through doc-comment delimiter reformation in Kiota Java and PHP generators
published last mo. modified last mo. also EUVD-2026-93425 , GHSA-rm89-rhwj-9j92
- cvss
- 8.8
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.9%
- EPSS 0.9% chance of exploitation in 30 days, percentile 59%
- public exploits
- 0
- none known
Summary
Kiota is an OpenAPI based HTTP Client code generator. From 0.5.0 until 1.35.0, Kiota's Java and PHP documentation-comment sanitizers delete block-comment terminators rather than neutralizing them, allowing overlapping characters to reform a terminator and place attacker-controlled OpenAPI text outside a generated documentation comment. The Java sanitizer also removes non-ASCII characters after deleting terminators, which can create a new terminator during normalization. Exploitation requires a developer or build pipeline to generate source from the malicious description and then compile and load the Java output or load the PHP output, after which injected code executes in the consuming application or build environment context. The version range is based on the Java defect and does not assert that PHP generation existed in every affected release. This issue is fixed in version 1.35.0.
Patch / fix
- nuget Microsoft.OpenApi.Kiota 1.35.0
- nuget Microsoft.OpenApi.Kiota.Builder 1.35.0
- microsoft kiota 1.35.0
- microsoft microsoft.openapi.kiota 1.35.0
- microsoft microsoft.openapi.kiota.builder 1.35.0
- github.com/microsoft/kiota@68f33b8 commit
- github.com/microsoft/kiota#8017 pull request
- github.com/microsoft/kiota/releases/tag/v1.35.0 release
Is CVE-2026-105796 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
- none
- Automatable
- no
- Technical impact
- total
- Assessed
- last mo.
Exploit prediction
0.90% chance of exploitation in the next 30 days, higher than 59% of all scored CVEs (FIRST EPSS, 2026-11-09).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 8.8 | CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H |
| GitHub | 3.1 | 8.8 | CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| nuget | Microsoft.OpenApi.Kiota | >=0.5.0, <1.35.0 |
1.35.0 |
| nuget | Microsoft.OpenApi.Kiota.Builder | >=0.5.0, <1.35.0 |
1.35.0 |
Affected products
- microsoft kiota
- microsoft Microsoft.OpenApi.Kiota
- microsoft Microsoft.OpenApi.Kiota.Builder
Classification
- Weakness
-
- CWE-94 Improper Control of Generation of Code
References
-
github.com
/microsoft/kiota/pull/8017
web
-
github.com
/microsoft/kiota/commit/68f33b865be9273464a6efbbe17379760e51f1a4
web
-
github.com
/microsoft/kiota/security/advisories/GHSA-rm89-rhwj-9j92
web
-
github.com
/microsoft/kiota/releases/tag/v1.35.0
web
-
nvd.nist.gov
/vuln/detail/CVE-2026-105796
advisory
-
github.com
/microsoft/kiota
package
Sources
- CVE List CVE-2026-105796
- GitHub Advisory GHSA-rm89-rhwj-9j92
- NVD CVE-2026-105796
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.