WafSight 2026.7.17.1

dotnet add package WafSight --version 2026.7.17.1
                    
NuGet\Install-Package WafSight -Version 2026.7.17.1
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="WafSight" Version="2026.7.17.1" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="WafSight" Version="2026.7.17.1" />
                    
Directory.Packages.props
<PackageReference Include="WafSight" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add WafSight --version 2026.7.17.1
                    
#r "nuget: WafSight, 2026.7.17.1"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package WafSight@2026.7.17.1
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=WafSight&version=2026.7.17.1
                    
Install as a Cake Addin
#tool nuget:?package=WafSight&version=2026.7.17.1
                    
Install as a Cake Tool

WafSight

WafSight

Detect WAFs & CDNs with confidence — built for speed, designed for .NET

NuGet Version NuGet Downloads Build License: MIT .NET 10 AOT


WafSight is a high-performance WAF/CDN detection engine for .NET. Analyze HTTP responses, DNS records, TLS certificates, and payload probes — then get a scored, ranked verdict with confidence levels.

Available as a library (NuGet), a cross-platform CLI (native AOT), and a DI-ready service for ASP.NET Core.

Full documentation at rodrigoramosrs.github.io/WafSight

Features

8 Providers CloudFlare · AWS · Akamai · Fastly · Azure · Imperva · Sucuri · F5
Generic Detection Payload probing — XSS, SQLi, LFI, XXE, RCE
Evidence Scoring Weighted, tiered confidence with caveats
DNS Analysis CNAME, A, NS, TXT record inspection
Batch Mode Concurrent URL detection with concurrency control
Resilient Built-in retry policies, timeouts, circuit breakers
DI Ready First-class IServiceCollection integration
Native AOT Zero-framework standalone binaries for all platforms
CLI 4 verbosity levels, batch files, provider listing

Quick Start

NuGet

dotnet add package WafSight

Library

using WafSight;

var client = new WafDetectorClient();
var result = await client.DetectAsync("https://example.com");

if (result.HasWaf)
{
    Console.WriteLine($"WAF: {result.Waf.Name} (confidence: {result.Waf.Confidence:P0})");
}

if (result.HasCdn)
{
    Console.WriteLine($"CDN: {result.Cdn.Name} (confidence: {result.Cdn.Confidence:P0})");
}

CLI

# Quick detection
wafsight detect https://example.com

# Verbose output
wafsight -V 3 detect https://example.com

# Batch from file
wafsight batch urls.txt

# List providers
wafsight providers

Dependency Injection

services.AddWafDetector(options =>
{
    options.Timeout = TimeSpan.FromSeconds(15);
    options.EnableGenericDetection = true;
    options.EnableDnsAnalysis = true;
});

Detection Architecture

+-------------------------------------------------+
|              WafDetectorClient                   |
|                                                  |
|  +--------------+    +-----------------------+   |
|  |  HTTP Client |----+  Response Collector   |   |
|  |  (resilient) |    +-----------+-----------+   |
|  +--------------+                |               |
|                                  | Headers /     |
|                    +-------------v-------------+  |
|                    |   Provider Registry        |  |
|                    |                            |  |
|  +-----------------+---------------------------+  |
|  |  CloudFlare ----|                            |  |
|  |  AWS ----------|    IDetectionProvider      |  |
|  |  Akamai -------|    (8 providers)           |  |
|  |  Fastly -------|                           |  |
|  |  Azure --------|                            |  |
|  |  Imperva ------|  Evidence Collector        |  |
|  |  Sucuri -------|  -> Evidence Scorer       |  |
|  |  F5 ----------|   -> Confidence Ranking    |  |
|  |  Generic ------|  -> Detection Result      |  |
|  +-----------------+---------------------------+  |
|                                                  |
|  +-------------------------------------------+   |
|  |  Evidence Scorer  |  DNS Analyzer         |   |
|  |  (weights + tiers) |  (CNAME, A, NS, TXT) |   |
|  +-------------------------------------------+   |
|                                                  |
|                    +------------------+          |
|                    | DetectionResult  |          |
|                    |  WAF + CDN       |          |
|                    |  Confidence      |          |
|                    |  Caveats         |          |
|                    +------------------+          |
+-------------------------------------------------+

Supported Providers

Provider WAF CDN Key Signals
CloudFlare Yes Yes cf-ray header, cookies, challenge pages
AWS Yes Yes x-amz-cf-id, x-amz-cf-pop, CloudFront
Akamai Yes Yes x-akamai-transformed, server header
Fastly Yes Yes x-fastly-request-id, surrogate keys
Azure Yes Yes azure-ref, X-ARR-LogId, server header
Imperva Yes Yes X-CDN, cookies, server fingerprint
Sucuri Yes Yes X-Sucuri-ID, block page detection
F5 Yes Yes BIG-IP server, Last-Mile, cookies

Evidence Scoring

WafSight doesn't just detect — it scores confidence:

Evidence Tier Sources Weight
Tier 1 (Highest) HTTP Headers, TLS Certificates, DNS 0.9 - 1.0
Tier 2 (Strong) Cookies, Response Status Codes 0.7 - 0.8
Tier 3 (Moderate) Response Body Signatures 0.4 - 0.6
Tier 4 (Weak) Timing Analysis, Generic Probes 0.1 - 0.3

Results include caveats when evidence is weak (e.g., body-only detection without header confirmation).

CLI

Usage: wafsight [options] <command> [arguments]

Options:
  --verbose, -v, -V [0-3]  Verbosity level (0=None, 1=Low, 2=Medium, 3=High)

Commands:
  detect, -d <url>          Detect WAF/CDN for a single URL
  batch,   -b <file>        Detect WAF/CDN for URLs in a file (one per line)
  providers, -p             List all registered providers
  version                   Show version
  help,     -h              Show this help

Verbosity Levels:
  0 (None)   - Only errors and critical information
  1 (Low)    - Errors + basic status
  2 (Medium) - Low + headers, DNS records, provider scores
  3 (High)   - Medium + payload probing, evidence details, timing

Binary Downloads

Platform AOT (Standalone) Framework Dependent
Windows x64 WafSight-win-x64.zip WafSight-win-x64-framework.zip
Linux x64 WafSight-linux-x64.tar.gz WafSight-linux-x64-framework.tar.gz
macOS x64 WafSight-osx-x64.tar.gz WafSight-osx-x64-framework.tar.gz
macOS ARM64 WafSight-osx-arm64.tar.gz WafSight-osx-arm64-framework.tar.gz

AOT binaries are native, self-contained executables (~9 MB). Framework Dependent requires .NET 10 Runtime.

Download from GitHub Releases.

Requirements

Component Minimum
.NET 10.0
AOT Binary None (standalone)
Framework Binary .NET 10 Runtime
Platforms Windows, Linux, macOS

Special Thanks

This project was inspired by outstanding open-source work:

Project Author Contribution
waf-detector Ammar Atef Architecture and provider model
wafw00f EnableSecurity Signature-based detection approach

Open source thrives on community. If WafSight is useful to you, consider supporting these projects too.


MIT License · Built for .NET

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
2026.7.17.1 101 7/17/2026
2026.7.0.1 104 7/16/2026