
English •
中文 •
Korean •
Indonesia •
Spanish •
日本語 •
Portuguese •
Türkçe
Nuclei is a modern, high-performance vulnerability scanner that leverages simple YAML-based templates. It empowers you to design custom vulnerability detection scenarios that mimic real-world conditions, leading to zero false positives.
- Simple YAML format for creating and customizing vulnerability templates.
- Contributed by thousands of security professionals to tackle trending vulnerabilities.
- Reduce false positives by simulating real-world steps to verify a vulnerability.
- Ultra-fast parallel scan processing and request clustering.
- Integrate into CI/CD pipelines for vulnerability detection and regression testing.
- Supports multiple protocols like TCP, DNS, HTTP, SSL, WHOIS, JavaScript, Code and more.
- Integrate with Jira, Splunk, GitHub, Elastic, GitLab.
Table of Contents
Get StartedDocumentationNuclei Templates, Community and Rewards💎Our MissionContributors❤License
Get Started
1. Nuclei CLI
Install Nuclei on your machine. Get started by following the installation guide here. Additionally, we provide a free cloud tier that comes with generous monthly free limits:
- Store and visualize your vulnerability findings
- Write and manage your Nuclei templates
- Access the latest Nuclei templates
- Discover and store your targets
[!Important]
This project is in active development. Expect breaking changes with releases. Review the release changelog before updating. This project is primarily built to be used as a standalone CLI tool. Running nuclei as a service may pose security risks. It's recommended to use with caution and additional security measures.
2. Pro and Enterprise Editions
For security teams and enterprises, we provide a cloud-hosted service built on top of Nuclei OSS, fine-tuned to help you continuously run vulnerability scans at scale with your team and existing workflows:
- 50x faster scans
- Large scale scanning with high accuracy
- Integrations with cloud services (AWS, GCP, Azure, Cloudflare, Fastly, Terraform, Kubernetes)
- Jira, Slack, Linear, APIs and Webhooks
- Executive and compliance reporting
- Plus: Real-time scanning, SAML SSO, SOC 2 compliant platform (with EU and US hosting options), shared team workspaces, and more
- We're constantly
adding new features! - Ideal for: Pentesters, security teams, and enterprises
Sign up to Pro or Talk to our team if you have a large organization and complex requirements.
Documentation
Browse the full Nuclei documentation here. If you’re new to Nuclei, check out our foundational YouTube series.
Installation
nuclei requires go >= 1.24.2 to install successfully. Run the following command to get the repo:
go install -v github.com/projectdiscovery/nuclei/v3/cmd/nuclei@latest
To learn more about installing nuclei, see https://docs.projectdiscovery.io/tools/nuclei/install.
Command Line Flags
To display all the flags for the tool:
nuclei -h
Expand full help flags
Nuclei is a fast, template based vulnerability scanner focusing
on extensive configurability, massive extensibility and ease of use.
Usage:
./nuclei [flags]
Flags:
TARGET:
-u, -target string[] target URLs/hosts to scan
-l, -list string path to file containing a list of target URLs/hosts to scan (one per line)
-targets-inline string inline multiline target list (for use in template profiles)
-eh, -exclude-hosts string[] hosts to exclude to scan from the input list (ip, cidr, hostname)
-resume string resume scan from and save to specified file (clustering will be disabled)
-sa, -scan-all-ips scan all the IP's associated with dns record
-iv, -ip-version string[] IP version to scan of hostname (4,6) - (default 4)
TARGET-FORMAT:
-im, -input-mode string mode of input file (list, burp, jsonl, yaml, openapi, swagger, http) (default "list")
-ro, -required-only use only required fields in input format when generating requests
-sfv, -skip-format-validation skip format validation (like missing vars) when parsing input file
-vtt, -vars-text-templating enable text templating for vars in input file (only for yaml input mode)
-vfp, -var-file-paths string[] list of yaml file contained vars to inject into yaml input
TEMPLATES:
-nt, -new-templates run only new templates added in latest nuclei-templates release
-ntv, -new-templates-version string[] run new templates added in specific version
-as, -automatic

