π DNS Sniffer Daemon (dnsscience_snifferd)
The most powerful tool in the DNS Science arsenal - Deploy on client networks to monitor real-time DNS traffic, detect threats, and analyze query patterns from any location.
Key Features
- Real-time DNS Monitoring - Capture and analyze ALL DNS queries from your network
- Threat Detection - Automatically identify malicious domains, phishing sites, botnets, and malware
- Blacklisted DNS Server Detection - Alert when queries go to suspicious DNS servers
- Traffic Pattern Analysis - Identify unusual traffic spikes and detect anomalies
- Attack Detection - Real-time detection of DNS-based attacks (cache poisoning, amplification, exfiltration)
- Performance Monitoring - Monitor DNS resolution times and track query success rates
- Multiple Locations - Monitor multiple sites from a single DNS Science account
- Web Dashboard - Beautiful GUI to visualize threats and query patterns
Quick Start
# 1. Clone the repository
git clone https://github.com/dnsscience/dnsscience_snifferd.git
cd dnsscience_snifferd
# 2. Install dependencies
sudo pip3 install -r requirements.txt
# 3. Create monitoring location in DNS Science dashboard
# Log in β DNS Monitoring β Add Location β Save API Key
# 4. Configure
sudo cp config.example.yaml /etc/dnsscience_snifferd/config.yaml
sudo nano /etc/dnsscience_snifferd/config.yaml
# 5. Run (requires root for packet capture)
sudo python3 dnsscience_snifferd.py -c /etc/dnsscience_snifferd/config.yaml
Install as Systemd Service
# Copy files
sudo mkdir -p /opt/dnsscience_snifferd
sudo cp dnsscience_snifferd.py /opt/dnsscience_snifferd/
sudo cp requirements.txt /opt/dnsscience_snifferd/
# Install service
sudo cp dnsscience_snifferd.service /etc/systemd/system/
sudo systemctl daemon-reload
sudo systemctl enable dnsscience_snifferd
sudo systemctl start dnsscience_snifferd
# Check status
sudo systemctl status dnsscience_snifferd
Use Cases
- Home Network Security - Monitor all DNS queries from IoT devices, smart TVs, and computers
- Office DNS Monitoring - Track employee browsing patterns and detect malware infections
- MSP Deployments - Monitor multiple client networks from a single dashboard
- Threat Hunting - Proactive detection of C2 communication and data exfiltration
- Compliance Monitoring - Log all DNS queries for audit and compliance requirements
π οΈ Web-Based Tools
Access these tools directly from your browser - no installation required:
π DNSSEC Validator
Web ToolValidate DNSSEC signatures and verify the chain of trust for any domain.
π Certificate Chain Resolver
Web ToolResolve and validate SSL certificate chains, identify intermediate CA issues.
π Certificate Converter
Web ToolConvert between PEM, DER, PKCS#7, PKCS#12, and JKS certificate formats.
β Certificate Validator
Web ToolComprehensive SSL certificate validation including expiration, revocation, and trust chain.
ποΈ JKS Manager
Web ToolManage Java KeyStore files - import, export, and convert certificates.
π§ OpenSSL Builder
Web ToolGenerate OpenSSL commands for common certificate and key operations.
π DNS Cache Inspector
Web ToolInspect DNS cache entries across multiple recursive resolvers worldwide.
βοΈ DNS Config Validator
Web ToolValidate DNS zone files, check for common misconfigurations, and verify records.
π¨ Hijacking Detector
Web ToolDetect DNS hijacking and BGP hijacking attempts for your domains.
π Zone Transfer Checker
Web ToolTest for DNS zone transfer (AXFR) vulnerabilities and misconfigurations.
πΈοΈ Dark Web Lookup
Web ToolSearch for domain mentions in dark web marketplaces and forums.
π» CLI Tools
Command-line tools for automation and integration with your workflows:
dnsscience-cli
Full-featured CLI for DNS Science API
# Install
pip install dnsscience-cli
# Usage
dnsscience-cli scan example.com
dnsscience-cli lookup 8.8.8.8
dnsscience-cli threat-check suspicious-domain.com
dnsscience-cli export --format json --output results.json
dnsscience-email
Email security and deliverability testing CLI
# Install
pip install dnsscience-email
# Usage
dnsscience-email check example.com
dnsscience-email spf-validate example.com
dnsscience-email dmarc-check example.com
dnsscience-email mta-sts-test example.com
dnsscience_analyze
PCAP Analysis Tool - Offline analysis of DNS traffic from packet captures
# Analyze a PCAP file for threats
python3 dnsscience_analyze.py -c config.yaml capture.pcap
# Features:
# β’ Parse PCAP files and extract DNS queries
# β’ Detect malicious domains using DNS Science threat intelligence
# β’ Identify blacklisted DNS servers
# β’ Generate comprehensive threat reports with statistics
# β’ Beautiful terminal output with threat categories and metrics
# β’ Export results to JSON for further processing
# Example output:
# βββββββββββββββββββββββββββββββββββββββββββ
# β DNS Traffic Analysis Summary β
# βββββββββββββββββββββββββββββββββββββββββββ€
# β Total Packets: 10,542 β
# β DNS Queries: 1,847 β
# β Unique Domains: 412 β
# β Malicious Domains: 7 β
# β Blacklisted Servers: 2 β
# βββββββββββββββββββββββββββββββββββββββββββ
# Perfect for:
# β’ Forensic analysis of network captures
# β’ Security incident investigation
# β’ Historical traffic pattern analysis
# β’ Batch processing of multiple captures
π API Integration
REST API for programmatic access to DNS Science data and features:
DNS Monitoring API
Real-time DNS monitoring endpoints - Manage monitoring locations and retrieve threat data
# Location Management
GET /api/v1/dns-monitoring/locations
POST /api/v1/dns-monitoring/locations
PUT /api/v1/dns-monitoring/locations/{id}
DELETE /api/v1/dns-monitoring/locations/{id}
# Query Data Ingestion (from dnsscience_snifferd)
POST /api/v1/dns-monitoring/queries
# Threat Retrieval
GET /api/v1/dns-monitoring/threats?location_id={id}
GET /api/v1/dns-monitoring/threats/{id}
PUT /api/v1/dns-monitoring/threats/{id}/resolve
# Statistics
GET /api/v1/dns-monitoring/stats?location_id={id}
# Example: Create a monitoring location
curl -X POST https://www.dnsscience.io/api/v1/dns-monitoring/locations \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"location_name": "Office HQ",
"description": "Main office network monitoring"
}'
# Response includes API key for dnsscience_snifferd deployment:
{
"id": 123,
"location_name": "Office HQ",
"api_key": "loc_abc123...",
"created_at": "2025-11-16T12:00:00Z"
}
# Features:
# β’ Create unlimited monitoring locations
# β’ Unique API key per location for security
# β’ Real-time query ingestion from remote sniffers
# β’ Threat detection with automatic categorization
# β’ Query pattern analysis and statistics
# β’ Historical threat data with resolution tracking
π Documentation
- API Documentation - RESTful API reference
- CLI Documentation - Command-line tool guides
- Data Ingestion - 20+ data feeds explained
- Platform Architecture - System design and infrastructure
π Get Started
Ready to start using DNS Science tools? Create a free account to access all web tools and get your API key for CLI and daemon deployment.