Microsoft.Security.AntiSSRF
1.0.1
Prefix Reserved
dotnet add package Microsoft.Security.AntiSSRF --version 1.0.1
NuGet\Install-Package Microsoft.Security.AntiSSRF -Version 1.0.1
<PackageReference Include="Microsoft.Security.AntiSSRF" Version="1.0.1" />
<PackageVersion Include="Microsoft.Security.AntiSSRF" Version="1.0.1" />
<PackageReference Include="Microsoft.Security.AntiSSRF" />
paket add Microsoft.Security.AntiSSRF --version 1.0.1
#r "nuget: Microsoft.Security.AntiSSRF, 1.0.1"
#:package Microsoft.Security.AntiSSRF@1.0.1
#addin nuget:?package=Microsoft.Security.AntiSSRF&version=1.0.1
#tool nuget:?package=Microsoft.Security.AntiSSRF&version=1.0.1
Microsoft AntiSSRF Library for .NET
The Microsoft AntiSSRF Library for .NET is a security-developed, exhaustively-tested library that provides robust URL validation to protect .NET applications from Server-Side Request Forgery (SSRF) vulnerabilities. Designed specifically for .NET Framework and .NET Core applications, it integrates seamlessly with HttpClient through the AntiSSRFHandler class, allowing developers to secure outbound HTTP requests with minimal code changes.
How to Use
The AntiSSRF Library provides validation for different scenarios based on your trust requirements:
| Use Case | Description | Documentation Link |
|---|---|---|
| General Case | The untrusted URL can belong to any domain or an untrusted domain. | AntiSSRFPolicy |
| Azure Key Vault Domain | The untrusted URL must be an Azure Key Vault endpoint. | URIValidator.InAzureKeyVaultDomain |
| Azure Storage Domain | The untrusted URL must be an Azure Storage endpoint. | URIValidator.InAzureStorageDomain |
| Allowlist of Trusted Domains | The untrusted URL must belong to a specific, trusted domain. | URIValidator.InDomain |
Key Features
SSRF Attack Prevention - Blocks malicious server-side request forgery attempts
Private Network Protection - Separate built-in configuration options for internal vs. external address HTTP clients
DNS Rebinding Protection - Guards against DNS-based attacks
Redirect Protection - Re-validates on all redirects to prevent bypass attempts
Protocol Validation - Ensures only safe protocols are used
Fully Customizable - Configure domain allowlists, IP ranges, headers, and validation policies
Additional Documentation
Explore our comprehensive documentation to get the most out of Microsoft AntiSSRF:
Getting Started
- Microsoft AntiSSRF Documentation
- Quick Start Guide
- Security Best Practices
- Frequently Asked Questions
- Changelog
API Documentation
Feedback & Contributing
We welcome feedback and contributions from the community! Here's how you can get involved:
- Report Issues: GitHub Issues - Report bugs or request new features
- Contribute: Contributing Guide - Learn how to contribute to the project
- Contact: antissrf-oss@microsoft.com - Direct email for questions and feedback
Support Policy
For support inquiries, contact antissrf-oss@microsoft.com.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- System.Memory (>= 4.5.5)
- System.Threading.Tasks.Extensions (>= 4.5.4)
-
net8.0
- No dependencies.
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Microsoft.Security.AntiSSRF:
| Package | Downloads |
|---|---|
|
Microsoft.Diagnostics.Runtime
ClrMD is a set of advanced APIs for programmatically inspecting a crash dump of a .NET program much in the same way that the SOS Debugging Extensions (SOS) do. This allows you to write automated crash analysis for your applications as well as automate many common debugger tasks. In addition to reading crash dumps ClrMD also allows supports attaching to live processes. |
GitHub repositories
This package is not used by any popular GitHub repositories.