2.8 KiB
2.8 KiB
name, description
| name | description |
|---|---|
| nuclei | Exact Nuclei command structure, template selection, and bounded high-throughput execution controls. |
Nuclei CLI Playbook
Official docs:
- https://docs.projectdiscovery.io/opensource/nuclei/running
- https://docs.projectdiscovery.io/opensource/nuclei/mass-scanning-cli
- https://github.com/projectdiscovery/nuclei
Canonical syntax:
nuclei [flags]
High-signal flags:
-u, -target <url>single target-l, -list <file>targets file-im, -input-mode <mode>list/burp/jsonl/yaml/openapi/swagger-t, -templates <path|tag>explicit template path(s)-tags <tag1,tag2>run by tag-s, -severity <critical,high,...>severity filter-as, -automatic-scantech-mapped automatic scan-ni, -no-interactshdisable OAST/interactsh requests-rl, -rate-limit <n>global request rate cap-c, -concurrency <n>template concurrency-bs, -bulk-size <n>hosts in parallel per template-timeout <seconds>request timeout-retries <n>retries-statsperiodic scan stats output-silentfindings-only output-j, -jsonlJSONL output-o <file>output file
Agent-safe baseline for automation:
nuclei -l targets.txt -as -s critical,high -rl 50 -c 20 -bs 20 -timeout 10 -retries 1 -silent -j -o nuclei.jsonl
Common patterns:
- Focused severity scan:
nuclei -u https://target.tld -s critical,high -silent -o nuclei_high.txt - List-driven controlled scan:
nuclei -l targets.txt -as -rl 50 -c 20 -bs 20 -timeout 10 -retries 1 -j -o nuclei.jsonl - Tag-driven run:
nuclei -l targets.txt -tags cve,misconfig -s critical,high,medium -silent - Explicit templates:
nuclei -l targets.txt -t http/cves/ -t dns/ -rl 30 -c 10 -bs 10 -j -o nuclei_templates.jsonl - Deterministic non-OAST run:
nuclei -l targets.txt -as -s critical,high -ni -stats -rl 30 -c 10 -bs 10 -timeout 10 -retries 1 -j -o nuclei_no_oast.jsonl
Critical correctness rules:
- Provide a template selection method (
-as,-t, or-tags); avoid unscoped broad runs. - Keep
-rl,-c, and-bsexplicit for predictable resource use. - Use
-niwhen outbound interactsh/OAST traffic is not expected or not allowed. - Use structured output (
-j -o <file>) for automation.
Usage rules:
- Start with severity/tags/templates filters to keep runs explainable.
- Keep retries conservative (
-retries 1) unless transport instability is proven. - Do not use
-h/--helpfor routine operation unless absolutely necessary.
Failure recovery:
- If performance degrades, lower
-c/-bsbefore lowering-rl. - If findings are unexpectedly empty, verify template selection (
-asvs explicit-t/-tags). - If scan duration grows, reduce target set and enforce stricter template/severity filters.
If uncertain, query web_search with:
site:docs.projectdiscovery.io nuclei <flag> running