
WRecon, is a tool for the recognition of vulnerabilities and blackbox information for wordpress.
A powerful, template-driven WordPress reconnaissance and vulnerability scanning tool
Features β’ Installation β’ Usage β’ Architecture β’ Templates
WPRecon is a modern WordPress security reconnaissance tool built with Go that helps security engineers identify vulnerabilities, misconfigurations, and information disclosure issues in WordPress installations.
Unlike traditional vulnerability scanners with hardcoded checks, WPRecon uses a YAML-driven template architecture, enabling:
| Feature | Description |
|---|---|
| Parallel Scanning | Configurable worker pool (default: 10 workers) for concurrent requests |
| Rate Limiting | Built-in request throttling (default: 50 req/s) to be network-friendly |
| Auto Retry | Automatic retry logic for failed HTTP requests |
| Hot Reload Templates | No recompilation needed - add templates and scan |
| Variable Resolution | Dynamic variables: {{BaseURL}}, {{Timestamp}}, {{RandomInt}} |
| Multi-Format Output | Human-readable tables and structured JSON |
| CLI & API Modes | Both command-line and REST API interfaces |
| Severity Levels | Findings classified as info, low, medium, high, critical |
Identify positive hits in responses:
Extract actionable data from matched responses:
150+ production-ready templates covering:
# Clone the repository
git clone https://github.com/ffx64/wprecon.git
cd wprecon
# Build the binary
go build -o wprecon ./cmd/wprecon/main.go
# Move to your PATH (optional)
sudo mv wprecon /usr/local/bin/
go install github.com/ffx64/wprecon/cmd/wprecon@latest
docker build -t wprecon .
docker run wprecon scan https://example.com
Scan a WordPress website with all available templates:
wprecon scan https://example.com
Run only selected templates:
wprecon scan https://example.com -t wordpress-detection,plugin-detection,user-enumeration
# JSON output for automation
wprecon scan https://example.com --output json
# Pretty-printed table (default)
wprecon scan https://example.com --output table
# Use 20 concurrent workers and 100 requests/sec
wprecon scan https://example.com --workers 20 --rate-limit 100
wprecon list-templates
wprecon --help
When running a scan, WPRecon produces detailed findings:
Table Format:
ID | Template | Name | Severity | Target | Evidence
---------------------|------------------------|--------------------------|----------|---------------------|----------
finding_001 | wordpress-version | WordPress Version Found | info | example.com | 6.2.1
finding_002 | plugin-detection | Plugin Detected | low | example.com | Yoast SEO 16.0
finding_003 | security-headers | Missing Security Headers | medium | example.com | X-Frame-Options
JSON Format:
{
"scan_id": "scan_uuid_001",
"timestamp": "2026-04-10T14:37:00Z",
"target": "https://example.com",
"total_findings": 15,
"findings": [
{
"id": "finding_uuid_001",
"template_id": "wordpress-detection",
"name": "WordPress Installation Detected",
"description": "WordPress CMS installation identified on target",
"severity": "info",
"cvss_score": 0.0,
"matched_url": "https://example.com/wp-admin/",
"http_method": "GET",
"status_code": 200,
"response_time_ms": 245,
"evidence": {
"version": "6.2.1",
"wp_version_header": "6.2.1"
},
"timestamp": "2026-04-10T14:37:00Z",
"remediation": "Keep WordPress updated to the latest version"
}
]
}
wprecon/
βββ cmd/wprecon/
β βββ main.go # CLI entrypoint
βββ internal/
β βββ app/
β β βββ cli.go # CLI command handlers
β β βββ api.go # REST API handlers
β βββ engine/
β β βββ scanner.go # Scan orchestration
β β βββ worker_pool.go # Parallelization engine
β β βββ context.go # Scan context management
β β βββ logger.go # Logging utilities
β β βββ rate_limit.go # Rate limiting
β βββ executor/
β β βββ http_executor.go # HTTP client
β β βββ request_builder.go # Request construction
β β βββ variables.go # Variable resolution
β βββ matchers/
β β βββ matchers.go # Response matching logic
β βββ extractors/
β β βββ extractors.go # Data extraction
β βββ templates/
β β βββ loader.go # Template discovery
β β βββ parser.go # YAML parsing
β βββ pipeline/
β β βββ pipeline.go # Scan workflow
β βββ domain/
β βββ template.go # Data models
β βββ finding.go
β βββ http.go
β βββ matcher.go
β βββ extractor.go
βββ templates/ # YAML template library
β βββ wordpress/ # WordPress-specific
β βββ cves/ # CVE detection
β βββ exposures/ # Info disclosure
β βββ common/ # Generic checks
β βββ waf/ # WAF detection
βββ go.mod # Dependencies