-
Notifications
You must be signed in to change notification settings - Fork 4.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Address high-severity vulnerability CVE-2023-29331 in System.Security.Cryptography.Xml 6.0.1 and 7.0.1 #98827
Comments
You can patch the vulnerability by updating |
Tagging subscribers to this area: @dotnet/area-system-security, @bartonjs, @vcsjones Issue DetailsPlease address high-severity vulnerability CVE-2023-29331 in
|
@teo-tsirpanis, does it mean that you are fine distributing vulnerable components by default? Interesting... |
cc @ViktorHofer and @ericstj for input on package dependencies here. |
No, if we would be redistributing that vulnerable Pkcs assembly in Xml we would need to patch the Xml package as well but that's not the case here. We are merely referencing the Pkcs package with a greater or equal ( |
I've just created a new console NET6 app and added System.Security.Cryptography.Xml 6.0.1 My understanding is that System.Security.Cryptography.Xml should reference |
That's why @teo-tsirpanis mentioned above that you want to patch the vulnerable package yourself:
My colleague @carlossanlop works on a public facing document that describes the nuget package support policy. @carlossanlop @ericstj do you want to include a notice about how to patch vulnerable packages in that document as well? |
You should use the latest version of System.Security.Cryptography.Xml which 8.0. The 8.0 version of the package works fine with .NET 6. |
While the 8.0 package support net6.0, it's perfectly fine to use the 6.0.1 package though. |
Got it, we should trust nobody! I just tried to make Microsoft software a little better and failed... You may close the ticket. |
Any update on this issue? Our tools started to pick this exact vulnerability. |
As the EFCore packages release with every servicing release, just upgrade to the newer 7.0.17 version: https://www.nuget.org/packages/Microsoft.AspNetCore.DataProtection.EntityFrameworkCore/7.0.17 |
Same in |
I misread, sorry. EFCore references Xml which references the vulnerable version of Pkcs. Same response as before: Runtime packages (i.e. Cryptography.Xml) are only serviced when they themselves are vulnerable. In this case, Cryptography.Xml wasn't vulnerable therefore a new package version didn't get released. To upgrade a vulnerable transitive package to a patched version, reference it directly. In your case for 7.0 packages, you want to add the following to the projects that transitively reference the vulnerable version of Pkcs:
Note that when using NuGet Central Package Management you can enable the transitive pinning feature and don't need the above. Instead you just add a
This auto-upgrades the transitive Pkcs dependency in all projects to the 7.0.3 patched version. |
Thanks for explanation, that's how we're currently circumventing the vulnerability. |
Please address high-severity vulnerability CVE-2023-29331 in
The text was updated successfully, but these errors were encountered: