/cent

Community edition nuclei templates, a simple tool that allows you to organize all the Nuclei templates offered by the community in one place

Primary LanguageGoApache License 2.0Apache-2.0

Cent

Community edition nuclei templates, a simple tool that allows you to organize all the Nuclei templates offered by the community in one place.


Apache license badge



Install

go install -v github.com/xm1k3/cent@latest

Or download from releases

after installation run cent init to initialize cent with the configuration files you find here

Supported commands

Command Description
check Check if templates repo are still available
init Cent init configuration file
summary Print summary table
update Update your repository
validate Validate templates, if the template is invalid it is deleted from the folder
version Print cent version

Root flags

Flags:
      --config string   config file (default is $HOME/.cent.yaml)
  -C, --console         Print console output
  -p, --path string     Root path to save the templates (default "cent-nuclei-templates")
  -t, --threads int     Number of threads to use when cloning repositories (default 10)

Usage

cent -h
cent check -h
cent init -h
cent update -h
cent summary -h
cent validate -h
cent version

Example:

Clone and insert all the community templates into the cent-nuclei-templates folder

cent -p cent-nuclei-templates

cent

If you have updated the cent.yaml file by adding new folders

exclude-dirs:
  - ...
  - dns
  - ...

just do:

cent update -p cent-nuclei-templates -d

and cent will automatically delete all dns folder present in cent-nuclei-templates without cloning all the github repos.

cent update

Same thing with exclude-files

cent update -p cent-nuclei-templates -f

Once cent has been configured correctly you can perform a scan with Nuclei.

Example

nuclei -u https://example.com -t ./cent-nuclei-templates -tags cve
nuclei -l urls.txt -t ./cent-nuclei-templates -tags cve

See here for more documentation about Nuclei

Config

You need to configure cent parameters in $HOME/.cent.yaml

# Directories to exclude
exclude-dirs:
  - .git

# Files to exclude
exclude-files:
  - README.md
  - .gitignore
  - .pre-commit-config.yaml
  - LICENSE

# Add github urls
community-templates:
  - https://github.com/projectdiscovery/nuclei-templates
  ...
  ...

Credits

Disclaimer

Disclaimer: The developer of this tool is not responsible for how the community uses the open source templates collected within it. These templates have not been validated by Project Discovery and are provided as-is.

License

Cent is distributed under Apache-2.0 License