nuclei/README.md

5.0 KiB

nuclei

License Go Report Card contributions welcome

nuclei

Nuceli is a fast tool to scan for things using configurable templates

Resources

Features

nuclei

  • Simple and modular code base making it easy to contribute.
  • Fast And Simple active subdomain scanning.
  • Handles wildcard subdomains in a smart manner.
  • Optimized for ease of use
  • Stdin and stdout support for integrating in workflows

Usage

nuclei -h

This will display help for the tool. Here are all the switches it supports.

Flag Description Example
-c Number of concurrent requests (default 10) nuclei -c 100
-l List of urls to run templates nuclei -l urls.txt
-t Templates input file/files to check across hosts nuclei -t git-core.yaml
-t Templates input file/files to check across hosts nuclei -t templates/*.yaml
-nC Don't Use colors in output nuclei -nC
-o File to save output result (optional) nuclei -o output.txt
-silent Show only found results in output nuclei -silent
-retries Number of times to retry a failed request (default 1) nuclei -retries 1
-t Seconds to wait before timeout (default 5) nuclei -t 5
-v Show Verbose output nuclei -v
-version Show version of nuclei nuclei -version

Installation Instructions

Direct Installation

From Binary

The installation is easy. You can download the pre-built binaries for your platform from the Releases page. Extract them using tar, move it to your $PATHand you're ready to go.

> tar -xzvf nuclei-linux-amd64.tar
> mv nuclei-linux-amd64 /usr/bin/nuclei
> nuclei -h

From Source

nuclei requires go1.13+ to install successfully. Run the following command to get the repo -

> GO111MODULE=on go get -u -v github.com/projectdiscovery/nuclei/cmd/nuclei

In order to update the tool, you can use -u flag with go get command.

Running nuclei

1. Running nuclei with a single template.

This will run the tool against all the hosts in urls.txt and returns the matched results.

> nuclei -l urls.txt -t git-core.yaml -o results.txt

You can also pass the list of hosts at standard input (STDIN). This allows for easy integration in automation pipelines.

This will run the tool against all the hosts in urls.txt and returns the matched results.

> cat urls.txt | nuclei -t git-core.yaml -o results.txt

2. Running nuclei with a multiple template.

This will run the tool against all the hosts in urls.txt and returns the matched results.

> nuclei -l urls.txt -t "path-to-templates/*.yaml" -o results.txt 

You can also pass the list of hosts at standard input (STDIN). This allows for easy integration in automation pipelines.

This will run the tool against all the hosts in urls.txt and returns the matched results.

> cat urls.txt | nuclei -t "path-to-templates/*.yaml" -o results.txt 

A note on nuclei

License

nuclei is made with 🖤 by the projectdiscovery team. Community contributions have made the project what it is. See the Thanks.md file for more details.