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

enhance fuzzing functionality of nuclei #4163

Closed
wants to merge 94 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
94 commits
Select commit Hold shift + click to select a range
d199c36
rebase js-layer PR from @ice3man543
tarunKoyalwar Sep 1, 2023
3dfd296
package restructuring
tarunKoyalwar Sep 1, 2023
d27a72e
working
tarunKoyalwar Sep 1, 2023
f858678
fix duplicated event & matcher status
tarunKoyalwar Sep 1, 2023
4b9aa07
fix lint error
tarunKoyalwar Sep 1, 2023
35faf56
fix response field
tarunKoyalwar Sep 1, 2023
105c2c8
add new functions
tarunKoyalwar Sep 3, 2023
ee770e1
multiple minor improvements
tarunKoyalwar Sep 4, 2023
c5a84f0
fix incorrect stats in js protocol
tarunKoyalwar Sep 5, 2023
27012c9
sort output metadata in cli
tarunKoyalwar Sep 5, 2023
9865cdf
remove temp files
tarunKoyalwar Sep 5, 2023
2815639
remove dead code
tarunKoyalwar Sep 5, 2023
c1d6654
add unit and integration test
tarunKoyalwar Sep 5, 2023
eb5a475
fix lint error
tarunKoyalwar Sep 5, 2023
3302bd6
add jsdoclint using llm
tarunKoyalwar Sep 5, 2023
e7fd60b
Merge branch 'v3-beta' into feat-js-protocol
tarunKoyalwar Sep 5, 2023
7d2fc22
fix error in test
tarunKoyalwar Sep 5, 2023
3bc8bbd
add js lint using llm
tarunKoyalwar Sep 5, 2023
a72a3d6
generate docs of libs
tarunKoyalwar Sep 5, 2023
f8944f2
llm lint
tarunKoyalwar Sep 5, 2023
2165c2c
remove duplicated docs
tarunKoyalwar Sep 5, 2023
0965f2e
update generated docs
tarunKoyalwar Sep 5, 2023
b11cb1c
update prompt in doclint
tarunKoyalwar Sep 5, 2023
66c9e4c
update docs
tarunKoyalwar Sep 5, 2023
0635eb8
temp disable version check test
tarunKoyalwar Sep 5, 2023
ebc3092
fix unit test and add retry
tarunKoyalwar Sep 5, 2023
1dfb106
fix panic in it
tarunKoyalwar Sep 6, 2023
e0b5d3f
update and move jsdocs
tarunKoyalwar Sep 6, 2023
caa3dcd
updated jsdocs
tarunKoyalwar Sep 6, 2023
7fb029d
feat: genesis of more input support
Ice3man543 Sep 7, 2023
11f4f2c
feat: made input-file working
Ice3man543 Sep 8, 2023
91fb12c
feat: added support for encoding and dataformat layer for fuzzer
Ice3man543 Sep 8, 2023
27e80e9
feat: more enhancement to fuzz data formats + misc
Ice3man543 Sep 8, 2023
fa64639
feat: misc additions to fuzzing
Ice3man543 Sep 8, 2023
780d177
misc fixes
Ice3man543 Sep 9, 2023
86ee262
feat: added value container component + generic interface for components
Ice3man543 Sep 9, 2023
e89e524
feat: added more components + misc
Ice3man543 Sep 9, 2023
509b0c6
feat: added header + tests
Ice3man543 Sep 9, 2023
d74321b
feat: fixed misc stuff
Ice3man543 Sep 9, 2023
e625c40
feat: more improvement + got more stuff working
Ice3man543 Sep 10, 2023
dac49a4
more enhancements to fuzz layer
Ice3man543 Sep 10, 2023
40c7e4e
feat: added cookie component + misc
Ice3man543 Sep 10, 2023
30a44eb
feat: added time based analyzers
Ice3man543 Sep 10, 2023
9365de3
misc changes to time analyzer
Ice3man543 Sep 10, 2023
e06312b
update docs
tarunKoyalwar Sep 11, 2023
d6831d7
update container platform in test
tarunKoyalwar Sep 11, 2023
5f7ddb6
dir restructure and adding docs
tarunKoyalwar Sep 11, 2023
e41fb81
add api_reference and remove markdown docs
tarunKoyalwar Sep 11, 2023
cd3f481
fix imports
tarunKoyalwar Sep 11, 2023
7085b47
add javascript design and contribution docs
tarunKoyalwar Sep 11, 2023
e1e7d21
add js protocol documentation
tarunKoyalwar Sep 11, 2023
39cbfb2
update integration test and docs
tarunKoyalwar Sep 11, 2023
7d896fa
update doc ext mdx->md
tarunKoyalwar Sep 11, 2023
8b8cee0
minor update to docs
tarunKoyalwar Sep 11, 2023
90f6819
new integration test and more
tarunKoyalwar Sep 12, 2023
ce5435c
move go libs and add docs
tarunKoyalwar Sep 12, 2023
538a744
gen new net docs and more
tarunKoyalwar Sep 12, 2023
d58343c
final docs update
tarunKoyalwar Sep 12, 2023
b1f00ac
add new devtool
tarunKoyalwar Sep 12, 2023
1ee7a30
use fastdialer
tarunKoyalwar Sep 13, 2023
b9d0b4b
resolve merge conflicts
tarunKoyalwar Sep 13, 2023
b428c6f
fix build fail
tarunKoyalwar Sep 13, 2023
aff7da2
use fastdialer + network sandbox support
tarunKoyalwar Sep 13, 2023
07607ee
add reserved keyword 'Port'
tarunKoyalwar Sep 13, 2023
f4155e3
update Port to new syntax
tarunKoyalwar Sep 13, 2023
e3125e5
misc update
ehsandeep Sep 14, 2023
9f00f6e
always enable templatectx in js protocol
tarunKoyalwar Sep 15, 2023
3619ad5
move docs to 'js-proto-docs' repo
tarunKoyalwar Sep 15, 2023
c9d753d
remove scrapefuncs binary
tarunKoyalwar Sep 15, 2023
9213cf0
feat: added initial openapi support
Ice3man543 Sep 29, 2023
029b81c
feat: misc changes to stuff
Ice3man543 Sep 29, 2023
850feee
feat: added tests for openapi parser
Ice3man543 Sep 30, 2023
65f7047
feat: added postman and swagger parsers
Ice3man543 Sep 30, 2023
cf6741e
feat: added burp xml input support
Ice3man543 Sep 30, 2023
38e22d7
misc changes to fuzzing
Ice3man543 Oct 2, 2023
2800503
misc
Ice3man543 Oct 2, 2023
d98e99f
Merge branch 'feat-js-protocol' into fuzz-enhancements
ehsandeep Oct 2, 2023
c549d43
added vars + evaluate support to values
Ice3man543 Oct 2, 2023
46ca080
Merge branch 'fuzz-enhancements' of https://github.com/projectdiscove…
Ice3man543 Oct 2, 2023
06a7d08
misc
Ice3man543 Oct 2, 2023
8cb0daa
misc
Ice3man543 Oct 2, 2023
baf504d
feat: added aggression level to payloads
Ice3man543 Oct 3, 2023
4bed465
Update README.md
Ice3man543 Oct 8, 2023
e5ae630
feat: added request normalization methods + started on heuristics ana…
Ice3man543 Oct 12, 2023
04549a7
Merge branch 'fuzz-enhancements' of https://github.com/projectdiscove…
Ice3man543 Oct 12, 2023
712db1a
merge dev branch
tarunKoyalwar Oct 21, 2023
4b170be
remove residuals + move logic
tarunKoyalwar Oct 21, 2023
02eb72e
fix missing implementations/errors
tarunKoyalwar Oct 21, 2023
3d93dff
fix lint errors
tarunKoyalwar Oct 21, 2023
0862444
skip openapi test
tarunKoyalwar Oct 21, 2023
df26fa0
fix lint error
tarunKoyalwar Oct 21, 2023
2525746
move fuzz package to pkg root
tarunKoyalwar Oct 21, 2023
c16f6c3
feat: added tests for json values
Ice3man543 Oct 29, 2023
d3e628b
feat: added more tests for dataformats
Ice3man543 Oct 29, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions cmd/nuclei/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ import (
"github.com/projectdiscovery/nuclei/v3/internal/installer"
"github.com/projectdiscovery/nuclei/v3/internal/runner"
"github.com/projectdiscovery/nuclei/v3/pkg/catalog/config"
"github.com/projectdiscovery/nuclei/v3/pkg/core/inputs/formats/input"
"github.com/projectdiscovery/nuclei/v3/pkg/model/types/severity"
"github.com/projectdiscovery/nuclei/v3/pkg/operators/common/dsl"
"github.com/projectdiscovery/nuclei/v3/pkg/protocols/common/uncover"
Expand Down Expand Up @@ -173,6 +174,8 @@ on extensive configurability, massive extensibility and ease of use.`)
flagSet.StringVar(&options.Resume, "resume", "", "resume scan using resume.cfg (clustering will be disabled)"),
flagSet.BoolVarP(&options.ScanAllIPs, "scan-all-ips", "sa", false, "scan all the IP's associated with dns record"),
flagSet.StringSliceVarP(&options.IPVersion, "ip-version", "iv", nil, "IP version to scan of hostname (4,6) - (default 4)", goflags.CommaSeparatedStringSliceOptions),
flagSet.StringVarP(&options.InputFile, "input-file", "if", "", "path to file containing raw requests"),
flagSet.StringVarP(&options.InputFileMode, "input-mode", "im", "", fmt.Sprintf("mode of input file (%v)", input.Formats())),
)

flagSet.CreateGroup("templates", "Templates",
Expand Down
15 changes: 14 additions & 1 deletion go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -60,11 +60,13 @@ require (
github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.11.72
github.com/aws/aws-sdk-go-v2/service/s3 v1.37.0
github.com/charmbracelet/glamour v0.6.0
github.com/clbanning/mxj/v2 v2.7.0
github.com/denisenkom/go-mssqldb v0.12.3
github.com/ditashi/jsbeautifier-go v0.0.0-20141206144643-2520a8026a9c
github.com/docker/go-units v0.5.0
github.com/dop251/goja v0.0.0-20230828202809-3dbe69dd2b8e
github.com/fatih/structs v1.1.0
github.com/getkin/kin-openapi v0.120.0
github.com/go-git/go-git/v5 v5.7.0
github.com/go-ldap/ldap/v3 v3.4.5
github.com/go-pg/pg v8.0.7+incompatible
Expand All @@ -73,7 +75,9 @@ require (
github.com/hirochachacha/go-smb2 v1.1.0
github.com/klauspost/compress v1.16.7
github.com/labstack/echo/v4 v4.10.2
github.com/leslie-qiwa/flat v0.0.0-20230424180412-f9d1cf014baa
github.com/lib/pq v1.10.1
github.com/martinohmann/go-difflib v1.1.0
github.com/mholt/archiver v3.1.1+incompatible
github.com/ory/dockertest/v3 v3.10.0
github.com/praetorian-inc/fingerprintx v1.1.9
Expand All @@ -93,9 +97,11 @@ require (
github.com/projectdiscovery/uncover v1.0.7
github.com/projectdiscovery/utils v0.0.58
github.com/projectdiscovery/wappalyzergo v0.0.109
github.com/rbretecher/go-postman-collection v0.9.0
github.com/redis/go-redis/v9 v9.1.0
github.com/ropnop/gokrb5/v8 v8.0.0-20201111231119-729746023c02
github.com/sashabaranov/go-openai v1.15.3
github.com/seh-msft/burpxml v1.0.1
github.com/stretchr/testify v1.8.4
github.com/zmap/zgrab2 v0.1.8-0.20230806160807-97ba87c0e706
golang.org/x/term v0.13.0
Expand Down Expand Up @@ -143,6 +149,8 @@ require (
github.com/gin-contrib/sse v0.1.0 // indirect
github.com/gin-gonic/gin v1.9.0 // indirect
github.com/go-asn1-ber/asn1-ber v1.5.4 // indirect
github.com/go-openapi/jsonpointer v0.19.6 // indirect
github.com/go-openapi/swag v0.22.4 // indirect
github.com/go-sourcemap/sourcemap v2.1.3+incompatible // indirect
github.com/goccy/go-json v0.10.0 // indirect
github.com/gogo/protobuf v1.3.2 // indirect
Expand All @@ -156,26 +164,31 @@ require (
github.com/hashicorp/go-version v1.6.0 // indirect
github.com/hashicorp/golang-lru/v2 v2.0.6 // indirect
github.com/hbakhtiyor/strsim v0.0.0-20190107154042-4d2bbb273edf // indirect
github.com/invopop/yaml v0.2.0 // indirect
github.com/jcmturner/aescts/v2 v2.0.0 // indirect
github.com/jcmturner/dnsutils/v2 v2.0.0 // indirect
github.com/jcmturner/gofork v1.0.0 // indirect
github.com/jcmturner/rpc/v2 v2.0.2 // indirect
github.com/jinzhu/inflection v1.0.0 // indirect
github.com/jmespath/go-jmespath v0.4.0 // indirect
github.com/josharian/intern v1.0.0 // indirect
github.com/kataras/jwt v0.1.10 // indirect
github.com/kylelemons/godebug v1.1.0 // indirect
github.com/lucasb-eyer/go-colorful v1.2.0 // indirect
github.com/mackerelio/go-osstat v0.2.4 // indirect
github.com/mailru/easyjson v0.7.7 // indirect
github.com/minio/selfupdate v0.6.0 // indirect
github.com/mitchellh/go-homedir v1.1.0 // indirect
github.com/mitchellh/mapstructure v1.5.0 // indirect
github.com/moby/term v0.5.0 // indirect
github.com/mohae/deepcopy v0.0.0-20170929034955-c48cc78d4826 // indirect
github.com/muesli/reflow v0.3.0 // indirect
github.com/muesli/termenv v0.15.1 // indirect
github.com/opencontainers/go-digest v1.0.0 // indirect
github.com/opencontainers/image-spec v1.0.2 // indirect
github.com/opencontainers/runc v1.1.9 // indirect
github.com/pelletier/go-toml/v2 v2.0.6 // indirect
github.com/perimeterx/marshmallow v1.1.5 // indirect
github.com/pjbgf/sha1cd v0.3.0 // indirect
github.com/pkg/browser v0.0.0-20210911075715-681adbf594b8 // indirect
github.com/projectdiscovery/asnmap v1.0.5 // indirect
Expand Down Expand Up @@ -215,7 +228,7 @@ require (
git.mills.io/prologic/smtpd v0.0.0-20210710122116-a525b76c287a // indirect
github.com/Mzack9999/go-http-digest-auth-client v0.6.1-0.20220414142836-eb8883508809 // indirect
github.com/Mzack9999/ldapserver v1.0.2-0.20211229000134-b44a0d6ad0dd // indirect
github.com/PuerkitoBio/goquery v1.8.1 // indirect
github.com/PuerkitoBio/goquery v1.8.1
github.com/akrylysov/pogreb v0.10.1 // indirect
github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751 // indirect
github.com/alecthomas/units v0.0.0-20211218093645-b94a6e3cc137 // indirect
Expand Down
Loading