dotnet build reports two high-severity NuGet advisories. Neither is tracked by Dependabot — every one of the 54 alerts on main is npm, so these are invisible on the security tab and only show up as build warnings.
Found while establishing a verification baseline before #138.
The advisories
1. Microsoft.OpenApi 2.4.1 — affects the shipped RCL
- GHSA-v5pm-xwqc-g5wc: circular schema references may terminate OpenAPI parsing
- Vulnerable
>= 2.0.0-preview.11, <= 2.7.4, patched in 2.7.5
- Reaches both
UpDoc.csproj and TailoredTravel.Web.csproj
Umbraco.Cms.Api.Common (17.5.3)
└── Swashbuckle.AspNetCore (10.1.7)
└── Swashbuckle.AspNetCore.Swagger (10.1.7)
└── Microsoft.OpenApi (2.4.1)
This is the only vulnerable package in the RCL, and it is the one that matters: UpDoc.csproj is what gets packed and published as Umbraco.Community.UpDoc, so consumers inherit the transitive.
2. SQLitePCLRaw.lib.e_sqlite3 2.1.11 — mirror only
- GHSA-2m69-gcr7-jv3q
- Only reaches
TailoredTravel.Web, via Umbraco.Cms. Not in the RCL, so it does not ship.
Why this one is worth attention
The vulnerability is in OpenAPI parsing, reached through Swashbuckle — the exact machinery that generates UpDoc's Swagger document, registered in #134 and about to be extended in #138.
#138 adds [ProducesResponseType] across 35 endpoints, which grows the generated schema considerably. Circular schema references are the trigger condition in the advisory, and richer response models are where circular references become possible. That is not a reason to delay #138, but it is a reason to fix this rather than leave it.
Options
- Wait for Umbraco. The clean fix.
Umbraco.Cms.Api.Common bumps Swashbuckle, which bumps Microsoft.OpenApi. No action here beyond tracking.
- Pin
Microsoft.OpenApi to >= 2.7.5 in UpDoc.csproj. Direct PackageReference overriding the transitive. Fixes it now, but adds a pin that has to be removed later — and the last such pin (MimeKit) had to be removed when it turned into a downgrade, per the comment already in the csproj.
- Accept and document. Lowest effort, but it ships to consumers as a package-level advisory.
Leaning towards 1, with 2 if a release is due before Umbraco moves.
Done when
Refs #51 (the npm-side equivalent), #134, #138.
dotnet buildreports two high-severity NuGet advisories. Neither is tracked by Dependabot — every one of the 54 alerts onmainis npm, so these are invisible on the security tab and only show up as build warnings.Found while establishing a verification baseline before #138.
The advisories
1.
Microsoft.OpenApi2.4.1 — affects the shipped RCL>= 2.0.0-preview.11, <= 2.7.4, patched in 2.7.5UpDoc.csprojandTailoredTravel.Web.csprojThis is the only vulnerable package in the RCL, and it is the one that matters:
UpDoc.csprojis what gets packed and published asUmbraco.Community.UpDoc, so consumers inherit the transitive.2.
SQLitePCLRaw.lib.e_sqlite32.1.11 — mirror onlyTailoredTravel.Web, viaUmbraco.Cms. Not in the RCL, so it does not ship.Why this one is worth attention
The vulnerability is in OpenAPI parsing, reached through Swashbuckle — the exact machinery that generates UpDoc's Swagger document, registered in #134 and about to be extended in #138.
#138 adds
[ProducesResponseType]across 35 endpoints, which grows the generated schema considerably. Circular schema references are the trigger condition in the advisory, and richer response models are where circular references become possible. That is not a reason to delay #138, but it is a reason to fix this rather than leave it.Options
Umbraco.Cms.Api.Commonbumps Swashbuckle, which bumpsMicrosoft.OpenApi. No action here beyond tracking.Microsoft.OpenApito>= 2.7.5inUpDoc.csproj. DirectPackageReferenceoverriding the transitive. Fixes it now, but adds a pin that has to be removed later — and the last such pin (MimeKit) had to be removed when it turned into a downgrade, per the comment already in the csproj.Leaning towards 1, with 2 if a release is due before Umbraco moves.
Done when
dotnet list package --vulnerableclean forUpDoc.csproj, or the residue consciously accepted and written downRefs #51 (the npm-side equivalent), #134, #138.