Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

nuclei v3.2.0 #4882

Merged
merged 121 commits into from
Mar 13, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
121 commits
Select commit Hold shift + click to select a range
77e2430
switch dependency for kerberos in js module to upstream
5amu Jan 16, 2024
3b5ce39
make protocolstate.IsHostAllowed check the domaincontroller, not the …
5amu Jan 16, 2024
a167e6c
make protocolstate.IsHostAllowed check the domaincontroller, not the …
5amu Jan 19, 2024
73a73ee
implement method to connect to and verify the ldap server (IsLdap -> …
5amu Jan 20, 2024
fe59057
implement a generic search that returns a list of objects given a fil…
5amu Jan 20, 2024
bd1238d
implement authentication methods and change underlying connection bec…
5amu Jan 20, 2024
9821700
simplify CollectMetadata and remove session creation at runtime
5amu Jan 20, 2024
cb0d98e
do not append an empty map when generating output in Search()
5amu Jan 20, 2024
6bf8f87
define frequently used filters and AD UAC filters
5amu Jan 21, 2024
893129e
reflect changes for gojs
5amu Jan 21, 2024
89d30d9
implement generic method to find AD objects
5amu Jan 21, 2024
9d23f5f
implement enumeration methods + rewrite kerberoastable
5amu Jan 21, 2024
95d028c
move ad filters to adenum.go
5amu Jan 21, 2024
c703fff
implement method to grab domain SID
5amu Jan 21, 2024
642c99b
move DecodeSID to utils.go making it a generic function exposed by th…
5amu Jan 21, 2024
2019dab
implement utilities for timestamps
5amu Jan 21, 2024
2f926c4
implement method to close the ldap connection
5amu Jan 21, 2024
2c2cc27
feat: introduce nucleijs utils
tarunKoyalwar Jan 22, 2024
b137f32
chore(deps): bump github.com/projectdiscovery/utils
dependabot[bot] Feb 5, 2024
42962c8
chore(deps): bump github.com/projectdiscovery/httpx from 1.3.8 to 1.3.9
dependabot[bot] Feb 5, 2024
86d3f3b
Merge pull request #4728 from projectdiscovery/dependabot/go_modules/…
dependabot[bot] Feb 5, 2024
481fcd1
Merge pull request #4726 from projectdiscovery/dependabot/go_modules/…
dependabot[bot] Feb 5, 2024
ec6ef26
chore(deps): bump github.com/projectdiscovery/ratelimit
dependabot[bot] Feb 5, 2024
1d30cbf
chore(deps): bump github.com/projectdiscovery/retryablehttp-go
dependabot[bot] Feb 5, 2024
390cb43
Merge pull request #4725 from projectdiscovery/dependabot/go_modules/…
dependabot[bot] Feb 5, 2024
226dc65
Merge pull request #4729 from projectdiscovery/dependabot/go_modules/…
dependabot[bot] Feb 5, 2024
f5d2890
chore(deps): bump github.com/projectdiscovery/retryabledns
dependabot[bot] Feb 5, 2024
7322b0d
Merge pull request #4727 from projectdiscovery/dependabot/go_modules/…
dependabot[bot] Feb 5, 2024
06d9de3
refactor kerberos with nucleijs helper
tarunKoyalwar Feb 5, 2024
01487ba
network policy check + ASREP method
tarunKoyalwar Feb 5, 2024
d6ee445
go mod tidy
tarunKoyalwar Feb 5, 2024
7115491
fix network policy error
tarunKoyalwar Feb 5, 2024
3b75db4
Merge pull request #4647 from 5amu/remove-kerberos-dependency
tarunKoyalwar Feb 5, 2024
0e11bd7
Merge remote-tracking branch 'upstream/dev' into ldap-protocol-enhanc…
tarunKoyalwar Feb 5, 2024
fd2ab3c
refactor to use nucleijs utils
tarunKoyalwar Feb 5, 2024
66bc616
update js proto bindings
tarunKoyalwar Feb 5, 2024
7647af1
Merge pull request #4667 from 5amu/ldap-protocol-enhancements
tarunKoyalwar Feb 5, 2024
a0216e4
network layer should not have forceful read
Mzack9999 Feb 6, 2024
099c2bb
use system resolver first with system-resolvers
Mzack9999 Feb 6, 2024
14a2775
Merge pull request #4740 from projectdiscovery/bugfix-dns-resolvers
Mzack9999 Feb 7, 2024
3698534
javascript bindings + docs generation enhancements ( generate typescr…
tarunKoyalwar Feb 7, 2024
e252797
Update engine field of code request to accept any engine value (#4731)
RamanaReddy0M Feb 7, 2024
7e108cd
Merge pull request #4737 from projectdiscovery/bugfix-4518-optional-read
Mzack9999 Feb 7, 2024
d60c846
Fix workflow to publish docs (#4743)
RamanaReddy0M Feb 8, 2024
7323774
chore(deps): bump github.com/projectdiscovery/retryabledns
dependabot[bot] Feb 12, 2024
5f8236a
chore(deps): bump github.com/projectdiscovery/fastdialer
dependabot[bot] Feb 12, 2024
54e9e42
chore(deps): bump github.com/projectdiscovery/goflags
dependabot[bot] Feb 12, 2024
0dfbb69
Merge pull request #4746 from projectdiscovery/dependabot/go_modules/…
dependabot[bot] Feb 12, 2024
8436951
Merge pull request #4749 from projectdiscovery/dependabot/go_modules/…
dependabot[bot] Feb 12, 2024
79aef74
Merge pull request #4748 from projectdiscovery/dependabot/go_modules/…
dependabot[bot] Feb 12, 2024
996c673
chore(deps): bump github.com/projectdiscovery/retryablehttp-go
dependabot[bot] Feb 12, 2024
0c652ad
Merge pull request #4747 from projectdiscovery/dependabot/go_modules/…
dependabot[bot] Feb 12, 2024
2cbc21e
fix stop-at-first-match issue in http protocol (#4752)
tarunKoyalwar Feb 12, 2024
79c98e8
use pdtm params from utils
tarunKoyalwar Feb 17, 2024
bb15c5b
Merge pull request #4768 from projectdiscovery/use-params-from-utils
tarunKoyalwar Feb 17, 2024
d7c5b0f
chore(deps): bump github.com/projectdiscovery/useragent
dependabot[bot] Feb 17, 2024
236f3fc
Merge pull request #4745 from projectdiscovery/dependabot/go_modules/…
dependabot[bot] Feb 17, 2024
4b55c26
add header nil check (#4766)
tarunKoyalwar Feb 18, 2024
0bd4478
(feat) add Gitea reporting platform support (#4522)
leonjza Feb 18, 2024
95f8bd7
Allow auth option to parse string input as api key (#4750)
RamanaReddy0M Feb 18, 2024
b392a15
chore(deps): bump github.com/projectdiscovery/dsl from 0.0.41 to 0.0.44
dependabot[bot] Feb 19, 2024
542d2bb
chore(deps): bump github.com/projectdiscovery/useragent
dependabot[bot] Feb 19, 2024
29db0d8
chore(deps): bump github.com/projectdiscovery/retryablehttp-go
dependabot[bot] Feb 19, 2024
325a6ac
Merge pull request #4771 from projectdiscovery/dependabot/go_modules/…
dependabot[bot] Feb 19, 2024
14e40f1
Merge pull request #4773 from projectdiscovery/dependabot/go_modules/…
dependabot[bot] Feb 19, 2024
189ee5a
chore(deps): bump github.com/projectdiscovery/retryabledns
dependabot[bot] Feb 19, 2024
8014e15
Merge pull request #4772 from projectdiscovery/dependabot/go_modules/…
dependabot[bot] Feb 19, 2024
20f940f
chore(deps): bump github.com/projectdiscovery/goflags
dependabot[bot] Feb 19, 2024
8cb7cc9
Merge pull request #4769 from projectdiscovery/dependabot/go_modules/…
dependabot[bot] Feb 19, 2024
5539ad7
Merge pull request #4770 from projectdiscovery/dependabot/go_modules/…
dependabot[bot] Feb 19, 2024
13831e6
feat: typo fix (#4785)
AlexS778 Feb 21, 2024
dd570bd
Testing on owners (#4801)
cn-kali-team Feb 25, 2024
ed4796a
chore(deps): bump github.com/projectdiscovery/retryablehttp-go
dependabot[bot] Feb 26, 2024
ce3626b
Merge pull request #4803 from projectdiscovery/dependabot/go_modules/…
dependabot[bot] Feb 26, 2024
72a7357
chore(deps): bump github.com/projectdiscovery/fastdialer
dependabot[bot] Feb 26, 2024
42b336b
chore(deps): bump github.com/projectdiscovery/useragent
dependabot[bot] Feb 26, 2024
059b0ea
Merge pull request #4804 from projectdiscovery/dependabot/go_modules/…
dependabot[bot] Feb 26, 2024
2922e05
Merge pull request #4805 from projectdiscovery/dependabot/go_modules/…
dependabot[bot] Feb 26, 2024
395b9d2
chore(deps): bump github.com/projectdiscovery/wappalyzergo
dependabot[bot] Feb 26, 2024
730addd
Merge pull request #4806 from projectdiscovery/dependabot/go_modules/…
dependabot[bot] Feb 26, 2024
f027b3a
chore(deps): bump github.com/projectdiscovery/utils
dependabot[bot] Feb 26, 2024
924a052
Merge pull request #4807 from projectdiscovery/dependabot/go_modules/…
dependabot[bot] Feb 26, 2024
30bbdd0
Update README.md (#4819)
fail-open Feb 28, 2024
6abff96
use maxsize (#4814)
dogancanbakir Feb 28, 2024
8a2ff17
allow specifying self-contained at http request level (#4812)
tarunKoyalwar Mar 1, 2024
e7252a4
Auto Generate Syntax Docs + JSONSchema [Fri Mar 1 11:10:06 UTC 2024]…
actions-user Mar 1, 2024
4c7a0f4
Transparent Memoization via func Annotation (#4742)
Mzack9999 Mar 1, 2024
e86f382
validate code template in workflows (#4822)
tarunKoyalwar Mar 1, 2024
3ab0ae6
Implement more granular, issue tracker level filtering (#4780)
leonjza Mar 2, 2024
8c2212f
chore(deps): bump github.com/projectdiscovery/useragent
dependabot[bot] Mar 4, 2024
7379f1f
chore(deps): bump github.com/projectdiscovery/retryabledns
dependabot[bot] Mar 4, 2024
505fe4c
Merge pull request #4827 from projectdiscovery/dependabot/go_modules/…
dependabot[bot] Mar 4, 2024
b3498c1
chore(deps): bump github.com/projectdiscovery/goflags
dependabot[bot] Mar 4, 2024
b13a9b9
chore(deps): bump github.com/projectdiscovery/wappalyzergo
dependabot[bot] Mar 4, 2024
6cfb312
Merge pull request #4830 from projectdiscovery/dependabot/go_modules/…
dependabot[bot] Mar 4, 2024
efa4fbc
chore(deps): bump github.com/projectdiscovery/httpx from 1.3.9 to 1.5.0
dependabot[bot] Mar 4, 2024
0642531
Merge pull request #4829 from projectdiscovery/dependabot/go_modules/…
dependabot[bot] Mar 4, 2024
e470231
Merge pull request #4828 from projectdiscovery/dependabot/go_modules/…
dependabot[bot] Mar 4, 2024
02d4151
Merge pull request #4826 from projectdiscovery/dependabot/go_modules/…
dependabot[bot] Mar 4, 2024
0a8beb2
Make self-contained optional in http request (#4838)
RamanaReddy0M Mar 5, 2024
cfe28f0
Auto Generate Syntax Docs + JSONSchema [Tue Mar 5 17:11:08 UTC 2024]…
actions-user Mar 5, 2024
bbac102
remove tmp code files (#4835)
dogancanbakir Mar 7, 2024
b1b4f0f
fix nuclei loading ignored templates (#4849)
tarunKoyalwar Mar 9, 2024
fd024a3
feat: issue tracker URLs in JSON + misc fixes (#4855)
Ice3man543 Mar 10, 2024
9bd4db3
introduce `disable-unsigned-templates` flag (#4820)
dogancanbakir Mar 10, 2024
ec4fb40
Purge cache on global callback set (#4840)
Mzack9999 Mar 10, 2024
3a2b5c8
chore(deps): bump github.com/projectdiscovery/rawhttp
dependabot[bot] Mar 11, 2024
3d30278
Merge pull request #4858 from projectdiscovery/dependabot/go_modules/…
dependabot[bot] Mar 11, 2024
69b39d8
chore(deps): bump github.com/projectdiscovery/httpx from 1.5.0 to 1.6.0
dependabot[bot] Mar 11, 2024
5347106
Merge pull request #4859 from projectdiscovery/dependabot/go_modules/…
dependabot[bot] Mar 11, 2024
4d67a36
chore(deps): bump github.com/projectdiscovery/interactsh
dependabot[bot] Mar 11, 2024
fe4d5f0
Merge pull request #4862 from projectdiscovery/dependabot/go_modules/…
dependabot[bot] Mar 11, 2024
e9625d6
add callback support to StandardWriter (#4839)
dogancanbakir Mar 11, 2024
a66b56f
change position of sdk text
Ice3man543 Mar 11, 2024
49ef5cb
handle 1 more edgecase (#4868)
tarunKoyalwar Mar 13, 2024
66b722f
bump gozero (#4877)
dogancanbakir Mar 13, 2024
fa56800
Fuzzing layer enhancements + input-types support (#4477)
Ice3man543 Mar 13, 2024
d27f56f
chore(deps): bump google.golang.org/protobuf from 1.32.0 to 1.33.0
dependabot[bot] Mar 13, 2024
5d0b82c
Fixed xpath doc escaping example
ehsandeep Mar 13, 2024
f6d0b1c
Auto Generate Syntax Docs + JSONSchema [Wed Mar 13 22:02:48 UTC 2024]…
actions-user Mar 13, 2024
d292ac8
Merge pull request #4881 from projectdiscovery/dependabot/go_modules/…
dependabot[bot] Mar 13, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
1 change: 1 addition & 0 deletions .github/workflows/performance-test.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ jobs:
os: [ubuntu-latest, macOS-latest]

runs-on: ${{ matrix.os }}
if: github.repository == 'projectdiscovery/nuclei'
steps:
- name: Set up Go
uses: actions/setup-go@v4
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/publish-docs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ jobs:
fi
go generate pkg/templates/templates.go
go build -o "cmd/docgen/docgen" cmd/docgen/docgen.go
./cmd/docgen/docgen ../SYNTAX-REFERENCE.md ../nuclei-jsonschema.json
./cmd/docgen/docgen SYNTAX-REFERENCE.md nuclei-jsonschema.json
git status -s | wc -l | xargs -I {} echo CHANGES={} >> $GITHUB_OUTPUT

- name: Commit files
Expand Down
11 changes: 9 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -20,12 +20,19 @@ pkg/protocols/common/helpers/deserialization/testdata/ValueObject2.ser
.gitignore
pkg/js/devtools/bindgen/cmd/bindgen/bindgen
pkg/js/devtools/jsdocgen/jsdocgen
pkg/js/devtools/tsgen/tsgen
pkg/js/devtools/tsgen/cmd/tsgen/tsgen
*.DS_Store
pkg/protocols/headless/engine/.cache
/nuclei
/bindgen
/jsdocgen
/tsgen
/scrapefuncs
/integration_tests/.cache/
/integration_tests/.nuclei-config/
/*.yaml
/*.yaml
**/*-config
**/*-cache
/fuzzplayground
integration_tests/fuzzplayground

15 changes: 14 additions & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,19 @@ tidy:
$(GOMOD) tidy
devtools:
$(GOBUILD) $(GOFLAGS) -ldflags '$(LDFLAGS)' -o "bindgen" pkg/js/devtools/bindgen/cmd/bindgen/main.go
$(GOBUILD) $(GOFLAGS) -ldflags '$(LDFLAGS)' -o "jsdocgen" pkg/js/devtools/jsdocgen/main.go
$(GOBUILD) $(GOFLAGS) -ldflags '$(LDFLAGS)' -o "tsgen" pkg/js/devtools/tsgen/cmd/tsgen/main.go
$(GOBUILD) $(GOFLAGS) -ldflags '$(LDFLAGS)' -o "scrapefuncs" pkg/js/devtools/scrapefuncs/main.go
jsupdate:
$(GOBUILD) $(GOFLAGS) -ldflags '$(LDFLAGS)' -o "bindgen" pkg/js/devtools/bindgen/cmd/bindgen/main.go
$(GOBUILD) $(GOFLAGS) -ldflags '$(LDFLAGS)' -o "tsgen" pkg/js/devtools/tsgen/cmd/tsgen/main.go
./bindgen -dir pkg/js/libs -out pkg/js/generated
./tsgen -dir pkg/js/libs -out pkg/js/generated/ts
ts:
$(GOBUILD) $(GOFLAGS) -ldflags '$(LDFLAGS)' -o "tsgen" pkg/js/devtools/tsgen/cmd/tsgen/main.go
./tsgen -dir pkg/js/libs -out pkg/js/generated/ts
fuzzplayground:
$(GOBUILD) $(GOFLAGS) -ldflags '$(LDFLAGS)' -o "fuzzplayground" cmd/tools/fuzzplayground/main.go
memogen:
$(GOBUILD) $(GOFLAGS) -ldflags '$(LDFLAGS)' -o "memogen" cmd/memogen/memogen.go
./memogen -src pkg/js/libs -tpl cmd/memogen/function.tpl

41 changes: 26 additions & 15 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,6 @@
<p align="center">
<a href="#how-it-works">How</a> •
<a href="#install-nuclei">Install</a> •
<a href="#for-security-engineers">For Security Engineers</a> •
<a href="#for-developers-and-organizations">For Developers</a> •
<a href="https://docs.projectdiscovery.io/tools/nuclei/">Documentation</a> •
<a href="#credits">Credits</a> •
<a href="https://nuclei.projectdiscovery.io/faq/nuclei/">FAQs</a> •
Expand Down Expand Up @@ -115,12 +113,17 @@ Usage:

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)
-eh, -exclude-hosts string[] hosts to exclude to scan from the input list (ip, cidr, hostname)
-resume string resume scan using resume.cfg (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)
-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)
-eh, -exclude-hosts string[] hosts to exclude to scan from the input list (ip, cidr, hostname)
-resume string resume scan using resume.cfg (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) (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

TEMPLATES:
-nt, -new-templates run only new templates added in latest nuclei-templates release
Expand All @@ -136,6 +139,7 @@ TEMPLATES:
-tl list all available templates
-sign signs the templates with the private key defined in NUCLEI_SIGNATURE_PRIVATE_KEY env variable
-code enable loading code protocol-based templates
-dut, -disable-unsigned-templates disable running unsigned templates or templates with mismatched signature

FILTERING:
-a, -author string[] templates to run based on authors (comma-separated, file)
Expand All @@ -144,8 +148,8 @@ FILTERING:
-itags, -include-tags string[] tags to be executed even if they are excluded either by default or configuration
-id, -template-id string[] templates to run based on template ids (comma-separated, file, allow-wildcard)
-eid, -exclude-id string[] templates to exclude based on template ids (comma-separated, file)
-it, -include-templates string[] templates to be executed even if they are excluded either by default or configuration
-et, -exclude-templates string[] template or template directory to exclude (comma-separated, file)
-it, -include-templates string[] path to template file or directory to be executed even if they are excluded either by default or configuration
-et, -exclude-templates string[] path to template file or directory to exclude (comma-separated, file)
-em, -exclude-matchers string[] template matchers to exclude in result
-s, -severity value[] templates to run based on severity. Possible values: info, low, medium, high, critical, unknown
-es, -exclude-severity value[] templates to exclude based on severity. Possible values: info, low, medium, high, critical, unknown
Expand Down Expand Up @@ -217,6 +221,7 @@ INTERACTSH:
FUZZING:
-ft, -fuzzing-type string overrides fuzzing type set in template (replace, prefix, postfix, infix)
-fm, -fuzzing-mode string overrides fuzzing mode set in template (multiple, single)
-fuzz enable loading fuzzing templates

UNCOVER:
-uc, -uncover enable uncover engine
Expand All @@ -233,6 +238,8 @@ RATE-LIMIT:
-c, -concurrency int maximum number of templates to be executed in parallel (default 25)
-hbs, -headless-bulk-size int maximum number of headless hosts to be analyzed in parallel per template (default 10)
-headc, -headless-concurrency int maximum number of headless templates to be executed in parallel (default 10)
-jsc, -js-concurrency int maximum number of javascript runtimes to be executed in parallel (default 120)
-pc, -payload-concurrency int max payload concurrency for each template (default 25)

OPTIMIZATIONS:
-timeout int time to wait in seconds before timeout (default 10)
Expand Down Expand Up @@ -294,22 +301,26 @@ CLOUD:
-cup, -cloud-upload upload scan results to pdcp dashboard
-sid, -scan-id string upload scan results to given scan id

AUTHENTICATION:
-sf, -secret-file string[] path to config file containing secrets for nuclei authenticated scan
-ps, -prefetch-secrets prefetch secrets from the secrets file


EXAMPLES:
Run nuclei on single host:
$ nuclei -target example.com
$ nuclei -target example.com

Run nuclei with specific template directories:
$ nuclei -target example.com -t http/cves/ -t ssl
$ nuclei -target example.com -t http/cves/ -t ssl

Run nuclei against a list of hosts:
$ nuclei -list hosts.txt
$ nuclei -list hosts.txt

Run nuclei with a JSON output:
$ nuclei -target example.com -json-export output.json
$ nuclei -target example.com -json-export output.json

Run nuclei with sorted Markdown outputs (with environment variables):
$ MARKDOWN_EXPORT_SORT_MODE=template nuclei -target example.com -markdown-export nuclei_report/
$ MARKDOWN_EXPORT_SORT_MODE=template nuclei -target example.com -markdown-export nuclei_report/

Additional documentation is available at: https://docs.nuclei.sh/getting-started/running
```
Expand Down
Loading
Loading