Public mode

No access to your tenant or devices. Every item links to its source. What this means

Some sources, documents or advisories need attention: 275/275 feeds/APIs · 469/469 docs · 8/9 advisories · checked 01:07 UTC Customize Public modeDiscuss ChangeIntel on Discord

Microsoft.OpenAPI: Circular schema references may terminate OpenAPI parsing

Exact source revision recorded 23 Oct 2026 16:01:25 UTC. It does not establish the source's current position. Latest evidence.

osv · GHSA-v5pm-xwqc-g5wc

Published

### Impact A small OpenAPI document containing a circular schema reference can cause process termination through stack overflow in Microsoft.OpenApi. The issue affects OpenAPI document parsing through public OpenAPI.NET reader APIs and has been confirmed across both JSON and YAML reader paths. ## Affected versions - `>= 2.0.0-preview.11, <= 2.7.4` - `>= 3.0.0, <= 3.5.3` ### Patches - For the 2.X major version, versions 2.7.5 and above are patched. - For the 3.X major version, versions 3.5.4 and above are patched. - For the 1.X major version, the issue does not apply since that version of the library *could not* resolve references that pointed to another reference. ## Impact Applications, CLIs, developer tools, or services that parse untrusted OpenAPI documents in-process may be terminated by a crafted OpenAPI document containing circular schema references. The impact is availability/process termination only. This report does not claim remote code execution, authentication bypass, credential exposure, privilege escalation, data exposure, or Microsoft hosted service impact. ## Details A standalone isolated-process harness confirmed repeatable process termination through public OpenAPI.NET reader APIs. The issue reproduces in the affected released NuGet packages and affects both JSON and YAML reader paths. A separate Microsoft-owned local consumer, `microsoft/kiota`, also reproduces the termination through the `kiota show --openapi <file>` workflow. That workflow parses OpenAPI files in-process using Microsoft.OpenApi and Microsoft.OpenApi.YamlReader. ### Example payload ```json { "openapi": "3.0.0", "info": { "title": "Test", "version": "0.0.1" }, "paths": {}, "components": { "schemas": { "A": { "$ref": "#/components/schemas/B" }, "B": { "$ref": "#/components/schemas/A" } } } } ``` ## Remediation Users should upgrade to Microsoft.OpenApi `2.7.5` or `3.5.4`, depending on the major version line they consume. Applications that parse OpenAPI documents from untrusted sources should avoid parsing those documents in the primary application process when possible. Running parsing in an isolated process can reduce the blast radius of parser failures.

Source published
30 Jun 2026 15:56:24 UTC
Source modified
6 Jul 2026 13:15:09 UTC
Observed here
23 Oct 2026 16:01:25 UTC
Source terms
GitHub Advisory Database · CC-BY-4.0

Original source record · Cite this exact observation · Complete original publisher JSON

This view projects the publisher's source fields for reading; the original JSON retains additional fields and CVE enrichment containers. Attribution: osv · GitHub Advisory Database · CC-BY-4.0. Source text is retained; field grouping and change labels are provided by ChangeIntel.

CVSS_V3 · CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

Publisher rating · HIGH

ChangeIntel

An IT change radar: releases, security, known issues, retirements, documentation changes, and service status from public sources. Every item links to supporting evidence; dates and statuses can change after they are read.

Sources read 8 Nov 01:07 UTC · 275 of 275 readable · 273 fully read · documentation 469/469 current