DDoS Inspector is a cutting-edge, high-performance Distributed Denial of Service (DDoS) detection and mitigation framework designed as a native plugin for Snort 3. Developed by the ADHHP Research Team, this solution addresses critical gaps in real-time network security by combining advanced statistical analysis with sophisticated behavioral profiling techniques.
Our framework introduces several novel contributions to the field of network security:
- Dual-Engine Architecture: Integrates statistical anomaly detection with behavioral pattern analysis
- Adaptive Threshold Management: Dynamic sensitivity adjustment based on network conditions and traffic patterns
- Multi-Vector Detection Capability: Simultaneous detection of volumetric, protocol, and application-layer attacks
- Real-Time Mitigation Integration: Automated firewall response with configurable blocking policies
- Production-Grade Performance: Sub-10ms detection latency with <5% CPU overhead
| Feature | Traditional Solutions | DDoS Inspector |
|---|---|---|
| Detection Method | Signature-based rules | Statistical + Behavioral analysis |
| Response Time | Minutes to hours | Milliseconds |
| False Positive Rate | 5-15% | <0.3% |
| CPU Overhead | 15-30% | <5% |
| Attack Coverage | Single-vector | Multi-vector simultaneous |
| Deployment Model | Separate appliance | Inline plugin integration |
Statistical Engine
- EWMA-based Rate Analysis: Exponentially Weighted Moving Average for traffic baseline establishment
- Shannon Entropy Calculation: Payload randomness analysis for pattern detection
- Adaptive Threshold Management: Context-aware sensitivity adjustment
Behavioral Analysis Engine
- TCP State Machine Tracking: Connection lifecycle monitoring for SYN flood detection
- HTTP Session Profiling: Application-layer attack pattern recognition
- Temporal Correlation Analysis: Time-series behavior evaluation
Multi-Vector Attack Detection
- Volumetric Attacks: UDP amplification, ICMP floods, volumetric TCP floods
- Protocol Attacks: SYN floods, ACK floods, fragmentation attacks
- Application-Layer Attacks: HTTP floods, Slowloris, SSL exhaustion
- Dynamic IP Blocking: Real-time blacklisting via nftables/iptables integration
- Progressive Rate Limiting: Graduated response based on attack severity
- Automatic Unblocking: Time-based release of blocked addresses
- Whitelist Protection: Critical infrastructure protection mechanisms
| Component | Minimum | Recommended |
|---|---|---|
| Operating System | Ubuntu 20.04 LTS | Ubuntu 22.04 LTS |
| Memory | 4GB RAM | 8GB+ RAM |
| CPU | 2 cores, 2.4GHz | 4+ cores, 3.0GHz+ |
| Network Interface | 1 Gbps | 10 Gbps+ |
| Storage | 10GB available | 50GB+ available |
# System dependencies
sudo apt update && sudo apt install -y \
snort3 snort3-dev cmake build-essential \
libpcap-dev nftables git curl
# Verify Snort 3 installation
snort --version# 1. Clone repository
git clone https://github.com/hung-qt/ddos_inspector.git
cd ddos_inspector
# 2. Execute automated installation
sudo ./scripts/install_dependencies.sh
./scripts/build_project.sh
sudo ./scripts/deploy.sh
# 3. Verification
sudo snort --show-plugins | grep ddos_inspector# Build configuration
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=Release \
-DCMAKE_CXX_FLAGS="-O3 -march=native" ..
# Compilation
make -j$(nproc)
sudo make install
# System integration
sudo cp ddos_inspector.so /usr/local/lib/snort3_extra_plugins/
sudo ./scripts/nftables_rules.shDDoS Inspector provides flexible configuration options to optimize performance for different network environments.
For immediate deployment, create a basic configuration file:
-- File: /etc/snort/ddos_inspector.lua
ddos_inspector = {
-- Core detection parameters
entropy_threshold = 2.0,
ewma_alpha = 0.1,
syn_flood_threshold = 100,
http_flood_threshold = 150,
-- Basic mitigation
block_timeout = 600,
rate_limit_levels = 4,
-- Logging
metrics_file = "/var/log/snort/ddos_metrics.log",
log_level = "INFO"
}For detailed configuration options, environment-specific tuning, and advanced features, see our comprehensive configuration documentation:
π Complete Configuration Guide
This guide covers:
- Production environments with high-traffic optimizations
- Enterprise edge networks with security-focused settings
- IoT/Smart city networks with resource-constrained configurations
- Performance tuning for memory and CPU optimization
- Monitoring integration with Prometheus and ELK stack
- Security configurations including geoblocking and reputation filtering
- Troubleshooting with debug configurations and common issues
Add to your main /etc/snort/snort.lua:
require("ddos_inspector")
binder = {
{
when = { proto = 'tcp', ports = '80 443' },
use = { type = 'ddos_inspector' }
},
{
when = { proto = 'udp' },
use = { type = 'ddos_inspector' }
}
}For complete Snort integration details, see the Snort 3 Integration Guide.
| Metric | Value | Test Environment |
|---|---|---|
| Detection Latency | 2.3ms (avg), 8.7ms (P99) | 10Gbps sustained traffic |
| Memory Footprint | 45MB steady-state | 100K concurrent connections |
| CPU Utilization | 3.2% additional overhead | 24-core Xeon server |
| Throughput Impact | 1.8% reduction | Baseline: 9.2Gbps |
| False Positive Rate | 0.12% | 7-day production analysis |
| Detection Accuracy | 99.4% (SYN), 97.8% (HTTP) | Controlled attack scenarios |
# Complete test execution
./scripts/run_tests.sh --comprehensive
# Specific attack simulations
./scripts/run_syn_flood.sh --target 192.168.1.100 --rate 50000 --duration 60
./scripts/run_slowloris.sh --target 192.168.1.100 --connections 1000
./scripts/run_udp_amplification.sh --amplifiers amplifiers.txt --target 192.168.1.100
# Performance benchmarking
./scripts/performance_test.sh --duration 3600 --load-profile productionOur testing framework employs a comprehensive multi-phase validation approach:
- Unit Testing: Individual component verification with >95% code coverage
- Integration Testing: End-to-end plugin functionality validation
- Attack Simulation: Controlled DDoS scenario reproduction
- Performance Benchmarking: Resource utilization and latency measurement
- Production Validation: Real-world network deployment testing
# Prometheus metrics collection
cd "Prometheus-ELK metrics dashboard"
docker-compose up -d
# Access monitoring interfaces
# Prometheus: http://localhost:9090
# Grafana: http://localhost:3000 (admin/admin)
# Kibana: http://localhost:5601- Attack Detection Rate: Real-time attack identification frequency
- Mitigation Effectiveness: Percentage of successfully blocked attacks
- System Resource Utilization: CPU, memory, and network overhead
- False Positive/Negative Rates: Detection accuracy metrics
- Response Time Distribution: Latency percentile analysis
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Network Infrastructure β
β βββββββββββββββ βββββββββββββββ βββββββββββββββ β
β β Router β β Switch β β Firewall β β
β βββββββββββββββ βββββββββββββββ βββββββββββββββ β
ββββββββββββββββββββββββββββ¬βββββββββββββββββββββββββββββββββββ
β Traffic Mirror/Tap
ββββββββββββββββββββββββββββΌβββββββββββββββββββββββββββββββββββ
β Snort 3 IDS Engine β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β DDoS Inspector Plugin ββ
β β βββββββββββββββ¬ββββββββββββββ¬ββββββββββββββ¬βββββββββββ ββ
β β βStats Engine βBehavior βCorrelation βMitigationβ ββ
β β ββ’ EWMA βTracker βEngine βManager β ββ
β β ββ’ Entropy ββ’ TCP States ββ’ Multi- ββ’ nftablesβ ββ
β β ββ’ Patterns ββ’ HTTP Flows β Vector ββ’ Rate β ββ
β β β ββ’ Timing ββ’ Confidence β Limitingβ ββ
β β βββββββββββββββ΄ββββββββββββββ΄ββββββββββββββ΄βββββββββββ ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
ββββββββββββββββββββββββββββ¬βββββββββββββββββββββββββββββββββββ
β Mitigation Commands
ββββββββββββββββββββββββββββΌβββββββββββββββββββββββββββββββββββ
β System Firewall (nftables) β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β IP Blocking Rules β Rate Limiting β Traffic Shaping β|
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
ADHHP Research Team - Advanced DDoS Detection and Mitigation (2025)
-
Duong Quoc An - @Anduong1200 (Principal Investigator & Team Leader)
- Research Focus: Network Security Architecture, Real-time Detection Algorithms
- Contributions: System architecture design, project coordination, algorithm optimization
-
Tran Quoc Hung - @hung-qt (Core Developer)
- Research Focus: High-performance Computing, Network Programming
- Contributions: Core plugin development, performance optimization, system integration
-
Mai Hong Phat - @pzhat (Security Research Analyst)
- Research Focus: Cybersecurity, Attack Pattern Analysis
- Contributions: Threat modeling, attack simulation, security validation
-
Le Nguyen Anh Dat (Algorithm Specialist)
- Research Focus: Statistical Analysis, Machine Learning
- Contributions: Statistical engine development, entropy analysis algorithms
-
Bui Quang Hieu (Systems Integration Engineer)
- Research Focus: Network Infrastructure, DevOps
- Contributions: Deployment automation, monitoring systems, CI/CD pipeline
Academic Supervision
- Dr. Pham Ho Trong Nguyen (Project Supervisor)
- Institution: FPT University - Da Nang Campus
- Research Areas: Network Security, Distributed Systems
Built with β€οΈ by the ADHHP Team - FPT University - Viet Nam