Status update: Fixed in commit 8c40891 and released as FilePrepper 0.6.1 (EPPlus bump 8.5.0 → 8.5.3). NuGet publish triggers automatically on Directory.Build.props change. This issue is opened for traceability and to coordinate downstream consumers removing temporary mitigations.
Problem
FilePrepper 0.6.0 transitively depends on System.Security.Cryptography.Xml 10.0.0, which has two known High-severity vulnerabilities:
Both advisories confirm vulnerable range >= 10.0.0, <= 10.0.5; first patched version is 10.0.6. Both surface as NU1903 warnings in any consumer project.
Affected dependency chain
```
FilePrepper 0.6.0
└── EPPlus 8.5.0
└── System.Security.Cryptography.Xml 10.0.0 ← vulnerable (net10.0 TFM)
```
Reproduction (on FilePrepper 0.6.0)
```bash
dotnet new classlib -n Repro -f net10.0
cd Repro
dotnet add package FilePrepper --version 0.6.0
dotnet build # NU1903 warnings appear
dotnet list package --vulnerable --include-transitive
```
Fix
EPPlus 8.5.3 (released 2026-04-16) requires System.Security.Cryptography.Xml >= 10.0.6 for net10.0 consumers, fully closing the chain.
| EPPlus |
System.Security.Cryptography.Xml (net10.0) |
Status |
| 8.5.0 |
10.0.0 |
Vulnerable |
| 8.5.3 |
10.0.6 |
Patched |
Single-line change in Directory.Packages.props:
```xml
- <PackageVersion Include="EPPlus" Version="8.5.0" />
- <PackageVersion Include="EPPlus" Version="8.5.3" />
```
Verification (on commit 8c40891 / FilePrepper 0.6.1)
- `dotnet list package --vulnerable --include-transitive` → "no vulnerable packages"
- All tests pass: 302 SDK + 63 CLI
- nupkg dependency manifest contains: `<dependency id="EPPlus" version="8.5.3" />`
For downstream consumers
If you applied a temporary TransitivePinningEnabled + explicit System.Security.Cryptography.Xml pin as a consumer-side mitigation, you can remove it once you upgrade to FilePrepper 0.6.1 or later.
Reporter
Found via dogfooding from the DataLens project (consumer of FilePrepper). Thanks to that team for the precise diagnosis including direct nupkg inspection.
Problem
FilePrepper 0.6.0 transitively depends on
System.Security.Cryptography.Xml 10.0.0, which has two known High-severity vulnerabilities:EncryptedXml(CVSS 7.5)Both advisories confirm vulnerable range
>= 10.0.0, <= 10.0.5; first patched version is 10.0.6. Both surface asNU1903warnings in any consumer project.Affected dependency chain
```
FilePrepper 0.6.0
└── EPPlus 8.5.0
└── System.Security.Cryptography.Xml 10.0.0 ← vulnerable (net10.0 TFM)
```
Reproduction (on FilePrepper 0.6.0)
```bash
dotnet new classlib -n Repro -f net10.0
cd Repro
dotnet add package FilePrepper --version 0.6.0
dotnet build # NU1903 warnings appear
dotnet list package --vulnerable --include-transitive
```
Fix
EPPlus 8.5.3 (released 2026-04-16) requires
System.Security.Cryptography.Xml >= 10.0.6fornet10.0consumers, fully closing the chain.System.Security.Cryptography.Xml(net10.0)Single-line change in
Directory.Packages.props:```xml
```
Verification (on commit 8c40891 / FilePrepper 0.6.1)
For downstream consumers
If you applied a temporary
TransitivePinningEnabled+ explicitSystem.Security.Cryptography.Xmlpin as a consumer-side mitigation, you can remove it once you upgrade to FilePrepper 0.6.1 or later.Reporter
Found via dogfooding from the DataLens project (consumer of FilePrepper). Thanks to that team for the precise diagnosis including direct nupkg inspection.