Skip to content

Fix net8.0 crypto floor: use patched System.Security.Cryptography.Xml 8.0.4 (not 9.0.18) - #3989

Merged
gladjohn merged 1 commit into
masterfrom
gljohns/fix-net8-crypto-xml-8.0.4
Jul 29, 2026
Merged

Fix net8.0 crypto floor: use patched System.Security.Cryptography.Xml 8.0.4 (not 9.0.18)#3989
gladjohn merged 1 commit into
masterfrom
gljohns/fix-net8-crypto-xml-8.0.4

Conversation

@gladjohn

Copy link
Copy Markdown
Contributor

Addresses @pmaytak's review: the net8.0 crypto floor should use the patched 8.0.x version, not a jump to 9.0.18.

Problem

The net8.0 block set System.Security.Cryptography.Xml/Pkcs to 9.0.18, with a comment assuming no patched 8.0.x existed ("8.0.29 is unreleased"). That conflated the .NET runtime patch (8.0.29, for Microsoft.NetCore.App.Runtime.*) with the OOB package. Per Microsoft Security Advisory CVE-2026-47302, System.Security.Cryptography.Xml is affected >= 8.0.0, <= 8.0.3 and patched in 8.0.4.

Fix (net8.0 block only)

package before after
System.Security.Cryptography.Xml 9.0.18 8.0.4 (patched)
System.Security.Cryptography.Pkcs 9.0.18 8.0.1

Xml 8.0.4 declares a dependency on Pkcs 8.0.1 (the highest published 8.0.x Pkcs), so pinning Pkcs 8.0.1 satisfies it with no NU1605. net9.0 (9.0.18) and net10.0 (10.0.10) are unchanged — those are the correct patched versions for their lines.

Validation

dotnet restore Microsoft.Identity.Web.sln → exit 0; net8.0 consumers resolve Xml 8.0.4 / Pkcs 8.0.1. Also running the cross-repo compat gate (builds the ID4S family + MISE) against this branch.

The net8.0 block over-bumped System.Security.Cryptography.Xml/Pkcs to 9.0.18 on
the assumption that no patched 8.0.x existed. Per the advisory (CVE-2026-47302,
-47304, -50525, -50648), the patched System.Security.Cryptography.Xml for net8.0
is 8.0.4 (affected <=8.0.3); 8.0.29 is the .NET *runtime* patch, not this OOB
package. Xml 8.0.4 depends on Pkcs 8.0.1, so pin Pkcs 8.0.1 (no NU1605). net9.0
(9.0.18) and net10.0 (10.0.10) are unchanged - those are correct for their lines.

Validated: dotnet restore Microsoft.Identity.Web.sln => exit 0, net8.0 resolves
Xml 8.0.4 / Pkcs 8.0.1.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: ba7e127a-a204-4fdc-8512-73fba660adcd
@gladjohn
gladjohn requested a review from a team as a code owner July 29, 2026 19:42
Comment thread Directory.Build.props
@gladjohn
gladjohn merged commit 7f5a0b5 into master Jul 29, 2026
9 checks passed
@gladjohn
gladjohn deleted the gljohns/fix-net8-crypto-xml-8.0.4 branch July 29, 2026 20:11
This was referenced Jul 30, 2026
This was referenced Aug 2, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants