Overview
Nuclei v3 introduces significant improvements in performance, template execution, and protocol support. While most templates are backward compatible, some changes require attention.
Breaking changes
Template execution
Flow-based execution
Flow-based execution
v2 behavior:
- Templates executed requests sequentially
- Limited control over execution flow
- Introduces
flowfield for explicit execution control - More flexible multi-step template execution
- Backward compatible (sequential execution if no flow specified)
Protocol changes
Protocol changes
Renamed protocols:
network→tcp(network still works but is deprecated)requests→http(requests still works but is deprecated)
JavaScript protocol
JavaScript protocol
v3 introduces native JavaScript support:This enables protocol scanning beyond HTTP/DNS/TCP.
Code protocol
Code protocol
v3 adds code protocol for advanced use cases:
Command-line flags
Deprecated flags
Deprecated flags
| v2 Flag | v3 Flag | Notes |
|---|---|---|
-fuzz | -dast | Fuzzing renamed to DAST |
-rlm (rate-limit-minute) | -rl (rate-limit) | Simplified rate limiting |
-irr (include-rr) | -omit-raw | Inverted logic for clarity |
-cup (cloud-upload) | -dashboard | Renamed for clarity |
Configuration
Configuration file changes
Configuration file changes
v3 uses versioned configuration:New configuration options:
dastinstead offuzzdashboardinstead ofcloud-upload- Updated rate limiting configuration
New features
Multi-protocol templates
Single template, multiple protocols
Single template, multiple protocols
v3 allows multiple protocols in one template:
Enhanced flow control
Advanced execution flows
Advanced execution flows
Performance improvements
Template clustering enhancements
Template clustering enhancements
v3 improvements:
- Smarter request deduplication
- Better connection pooling
- Optimized template compilation
- Reduced memory footprint
- 30-50% faster scanning on average
- Lower resource consumption
- Better concurrency handling
DAST capabilities
Dynamic application security testing
Dynamic application security testing
Migration steps
Template migration
Update deprecated syntax
Add flow control (optional)
Troubleshooting
Templates fail validation
Templates fail validation
Issue: Custom templates fail validation in v3.Solution:
Performance regression
Performance regression
Issue: Scans slower in v3.Solution:
Config compatibility
Config compatibility
Issue: v2 config file not working.Solution:
Integration issues
Integration issues
Issue: Integrations (Jira, Slack) not working.Solution:
- Update reporting config file syntax
- Verify API tokens/credentials still valid
- Check output format compatibility
- Review integration logs with
-v
Version-specific notes
v3.0.x
Initial v3 release notes
Initial v3 release notes
Major changes:
- Flow-based template execution
- JavaScript protocol support
- Code protocol (requires
-codeflag) - Enhanced DAST capabilities
- Renamed protocols and flags
- Performance optimizations
- Some v2 templates may need minor adjustments
- Custom workflows may require flow definitions
Getting help
Migration issues
Ask on GitHub Discussions
Discord community
Get real-time help
Report bugs
File issues on GitHub
Documentation
Browse full documentation
Additional resources
- Changelog - Full release notes
- Template syntax - v3 template reference
- Flow control - Flow-based execution guide
- Troubleshooting - Common issues and solutions