-
Notifications
You must be signed in to change notification settings - Fork 2.6k
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
fix: data race at protocolstate
, contextargs
& some outdated test cases
#5820
Conversation
Signed-off-by: Dwi Siswanto <[email protected]>
Signed-off-by: Dwi Siswanto <[email protected]>
Test: $ go test -v -run "^Test(MultiProto|Flow)With" ./pkg/tmplexec/...
? github.com/projectdiscovery/nuclei/v3/pkg/tmplexec [no test files]
? github.com/projectdiscovery/nuclei/v3/pkg/tmplexec/flow/builtin [no test files]
? github.com/projectdiscovery/nuclei/v3/pkg/tmplexec/generic [no test files]
=== RUN TestFlowWithProtoPrefix
--- PASS: TestFlowWithProtoPrefix (0.08s)
=== RUN TestFlowWithConditionNegative
--- PASS: TestFlowWithConditionNegative (0.02s)
=== RUN TestFlowWithConditionPositive
flow_executor_test.go:144:
Error Trace: /home/dw1/Development/PD/nuclei/pkg/tmplexec/flow/flow_executor_test.go:144
Error: Expected nil, but got: &errorutil.enrichedError{errString:"got following errors while executing flow <- [:RUNTIME] failed to execute dns:1 protocol <- could not resolve, max retries exceeded", StackTrace:"", Tags:[]string(nil), Level:0x2, OnError:(errorutil.ErrCallback)(nil)}
Test: TestFlowWithConditionPositive
Messages: could not execute template
--- FAIL: TestFlowWithConditionPositive (0.05s)
=== RUN TestFlowWithNoMatchers
flow_executor_test.go:165:
Error Trace: /home/dw1/Development/PD/nuclei/pkg/tmplexec/flow/flow_executor_test.go:165
Error: Expected nil, but got: &errorutil.enrichedError{errString:"got following errors while executing flow <- [:RUNTIME] failed to execute dns:1 protocol <- could not resolve, max retries exceeded", StackTrace:"", Tags:[]string(nil), Level:0x2, OnError:(errorutil.ErrCallback)(nil)}
Test: TestFlowWithNoMatchers
Messages: could not execute template
--- FAIL: TestFlowWithNoMatchers (0.05s)
FAIL
FAIL github.com/projectdiscovery/nuclei/v3/pkg/tmplexec/flow 0.262s
=== RUN TestMultiProtoWithDynamicExtractor
--- PASS: TestMultiProtoWithDynamicExtractor (0.11s)
=== RUN TestMultiProtoWithProtoPrefix
--- PASS: TestMultiProtoWithProtoPrefix (5.75s)
PASS
ok github.com/projectdiscovery/nuclei/v3/pkg/tmplexec/multiproto (cached)
FAIL Tried adjusting git --no-pager diff pkg/testutils/testutils.go
diff --git a/pkg/testutils/testutils.go b/pkg/testutils/testutils.go
index a1ed685c..681bdef1 100644
--- a/pkg/testutils/testutils.go
+++ b/pkg/testutils/testutils.go
@@ -54,8 +54,8 @@ var DefaultOptions = &types.Options{
MetricsPort: 0,
BulkSize: 25,
TemplateThreads: 10,
- Timeout: 5,
- Retries: 1,
+ Timeout: 30,
+ Retries: 5,
RateLimit: 150,
RateLimitDuration: time.Second,
ProbeConcurrency: 50,
@@ -76,6 +76,7 @@ var DefaultOptions = &types.Options{
InteractionsPollDuration: 5,
GitHubTemplateRepo: []string{},
GitHubToken: "",
+ InternalResolversList: []string{"tcp:1.1.1.1:53"},
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
data race in memgardian
$ go test -race -v ./...
? github.com/projectdiscovery/nuclei/v3/lib [no test files]
# github.com/projectdiscovery/nuclei/v3/lib/tests.test
ld: warning: '/private/var/folders/fs/50l_djns0db4w30ttbd6czgr0000gn/T/go-link-2964062660/000024.o' has malformed LC_DYSYMTAB, expected 98 undefined symbols to start at index 1626, found 95 undefined symbols starting at index 1626
=== RUN TestSimpleNuclei
[INF] Your current nuclei-templates v10.0.3 are outdated. Latest is v10.0.4
[INF] Successfully updated nuclei-templates (v10.0.4) to /Users/tarun/nuclei-templates. GoodLuck!
[INF] Templates clustered: 14 (Reduced 10 Requests)
[caa-fingerprint] scanme.sh
[nameserver-fingerprint] scanme.sh
{"duration":"0:00:01","errors":"1","hosts":"1","matched":"2","percent":"94","requests":"16","rps":"15","startedAt":"2024-11-18T15:35:45.18144+05:30","templates":"24","total":"17"}
--- PASS: TestSimpleNuclei (27.54s)
=== RUN TestSimpleNucleiRemote
[nameserver-fingerprint] scanme.sh
--- PASS: TestSimpleNucleiRemote (3.21s)
=== RUN TestThreadSafeNuclei
==================
WARNING: DATA RACE
Write at 0x000106f1b918 by goroutine 9731:
github.com/projectdiscovery/nuclei/v3/pkg/protocols/common/protocolstate.StartActiveMemGuardian()
/Users/tarun/Codebase2/nuclei/pkg/protocols/common/protocolstate/memguardian.go:26 +0x64
github.com/projectdiscovery/nuclei/v3/pkg/protocols/common/protocolstate.Init()
/Users/tarun/Codebase2/nuclei/pkg/protocols/common/protocolstate/state.go:162 +0x1114
github.com/syndtr/goleveldb/leveldb/storage.(*fileStorage).List()
/Users/tarun/go/pkg/mod/github.com/syndtr/[email protected]/leveldb/storage/file_storage.go:458 +0x364
fmt.Fscanf()
/opt/homebrew/Cellar/go/1.22.6/libexec/src/fmt/scan.go:143 +0x94
fmt.Sscanf()
/opt/homebrew/Cellar/go/1.22.6/libexec/src/fmt/scan.go:114 +0x1ec
github.com/syndtr/goleveldb/leveldb/storage.fsParseName()
/Users/tarun/go/pkg/mod/github.com/syndtr/[email protected]/leveldb/storage/file_storage.go:657 +0x138
fmt.(*ss).doScanf()
/opt/homebrew/Cellar/go/1.22.6/libexec/src/fmt/scan.go:1230 +0x328
fmt.Fscanf()
/opt/homebrew/Cellar/go/1.22.6/libexec/src/fmt/scan.go:143 +0x94
fmt.Sscanf()
/opt/homebrew/Cellar/go/1.22.6/libexec/src/fmt/scan.go:114 +0x130
github.com/syndtr/goleveldb/leveldb/storage.fsParseName()
/Users/tarun/go/pkg/mod/github.com/syndtr/[email protected]/leveldb/storage/file_storage.go:643 +0x74
github.com/syndtr/goleveldb/leveldb/storage.(*fileStorage).List()
/Users/tarun/go/pkg/mod/github.com/syndtr/[email protected]/leveldb/storage/file_storage.go:458 +0x364
github.com/syndtr/goleveldb/leveldb.(*DB).checkAndCleanFiles()
/Users/tarun/go/pkg/mod/github.com/syndtr/[email protected]/leveldb/db_util.go:52 +0x1d0
github.com/syndtr/goleveldb/leveldb.openDB()
/Users/tarun/go/pkg/mod/github.com/syndtr/[email protected]/leveldb/db.go:130 +0x674
github.com/syndtr/goleveldb/leveldb/storage.(*fileStorage).List()
/Users/tarun/go/pkg/mod/github.com/syndtr/[email protected]/leveldb/storage/file_storage.go:458 +0x364
fmt.Fscanf()
/opt/homebrew/Cellar/go/1.22.6/libexec/src/fmt/scan.go:143 +0x94
fmt.Sscanf()
/opt/homebrew/Cellar/go/1.22.6/libexec/src/fmt/scan.go:114 +0x130
github.com/syndtr/goleveldb/leveldb/storage.fsParseName()
/Users/tarun/go/pkg/mod/github.com/syndtr/[email protected]/leveldb/storage/file_storage.go:643 +0x74
github.com/syndtr/goleveldb/leveldb/storage.(*fileStorage).List()
/Users/tarun/go/pkg/mod/github.com/syndtr/[email protected]/leveldb/storage/file_storage.go:458 +0x364
fmt.Fscanf()
/opt/homebrew/Cellar/go/1.22.6/libexec/src/fmt/scan.go:143 +0x94
fmt.Sscanf()
/opt/homebrew/Cellar/go/1.22.6/libexec/src/fmt/scan.go:114 +0x130
github.com/syndtr/goleveldb/leveldb/storage.fsParseName()
/Users/tarun/go/pkg/mod/github.com/syndtr/[email protected]/leveldb/storage/file_storage.go:643 +0x74
github.com/syndtr/goleveldb/leveldb/storage.(*fileStorage).List()
/Users/tarun/go/pkg/mod/github.com/syndtr/[email protected]/leveldb/storage/file_storage.go:458 +0x364
fmt.Fscanf()
/opt/homebrew/Cellar/go/1.22.6/libexec/src/fmt/scan.go:143 +0x94
fmt.Sscanf()
/opt/homebrew/Cellar/go/1.22.6/libexec/src/fmt/scan.go:114 +0x1ec
github.com/syndtr/goleveldb/leveldb/storage.fsParseName()
/Users/tarun/go/pkg/mod/github.com/syndtr/[email protected]/leveldb/storage/file_storage.go:657 +0x138
fmt.(*ss).doScanf()
/opt/homebrew/Cellar/go/1.22.6/libexec/src/fmt/scan.go:1230 +0x328
fmt.Fscanf()
/opt/homebrew/Cellar/go/1.22.6/libexec/src/fmt/scan.go:143 +0x94
fmt.Sscanf()
/opt/homebrew/Cellar/go/1.22.6/libexec/src/fmt/scan.go:114 +0x130
github.com/syndtr/goleveldb/leveldb/storage.fsParseName()
/Users/tarun/go/pkg/mod/github.com/syndtr/[email protected]/leveldb/storage/file_storage.go:643 +0x74
github.com/syndtr/goleveldb/leveldb/storage.(*fileStorage).List()
/Users/tarun/go/pkg/mod/github.com/syndtr/[email protected]/leveldb/storage/file_storage.go:458 +0x364
github.com/syndtr/goleveldb/leveldb.(*DB).recoverJournal()
/Users/tarun/go/pkg/mod/github.com/syndtr/[email protected]/leveldb/db.go:476 +0x84
github.com/syndtr/goleveldb/leveldb.openDB()
/Users/tarun/go/pkg/mod/github.com/syndtr/[email protected]/leveldb/db.go:125 +0x668
github.com/syndtr/goleveldb/leveldb.Open()
/Users/tarun/go/pkg/mod/github.com/syndtr/[email protected]/leveldb/db.go:197 +0x274
fmt.Fscanf()
/opt/homebrew/Cellar/go/1.22.6/libexec/src/fmt/scan.go:143 +0x94
fmt.Sscanf()
/opt/homebrew/Cellar/go/1.22.6/libexec/src/fmt/scan.go:114 +0x130
github.com/syndtr/goleveldb/leveldb/storage.fsParseName()
/Users/tarun/go/pkg/mod/github.com/syndtr/[email protected]/leveldb/storage/file_storage.go:643 +0x74
github.com/syndtr/goleveldb/leveldb/storage.(*fileStorage).List()
/Users/tarun/go/pkg/mod/github.com/syndtr/[email protected]/leveldb/storage/file_storage.go:458 +0x364
github.com/syndtr/goleveldb/leveldb.(*session).recover.func1()
/Users/tarun/go/pkg/mod/github.com/syndtr/[email protected]/leveldb/session.go:113 +0xb4
runtime.deferreturn()
/opt/homebrew/Cellar/go/1.22.6/libexec/src/runtime/panic.go:602 +0x5c
github.com/syndtr/goleveldb/leveldb.Open()
/Users/tarun/go/pkg/mod/github.com/syndtr/[email protected]/leveldb/db.go:183 +0xb0
github.com/syndtr/goleveldb/leveldb.OpenFile()
/Users/tarun/go/pkg/mod/github.com/syndtr/[email protected]/leveldb/db.go:219 +0x6c
github.com/projectdiscovery/hmap/store/disk.OpenLevelDB()
/Users/tarun/go/pkg/mod/github.com/projectdiscovery/[email protected]/store/disk/leveldb.go:25 +0x90
github.com/projectdiscovery/hmap/store/hybrid.New()
/Users/tarun/go/pkg/mod/github.com/projectdiscovery/[email protected]/store/hybrid/hybrid.go:157 +0x65c
github.com/projectdiscovery/fastdialer/fastdialer.NewDialer()
/Users/tarun/go/pkg/mod/github.com/projectdiscovery/[email protected]/fastdialer/dialer.go:87 +0x260
github.com/projectdiscovery/nuclei/v3/pkg/protocols/common/protocolstate.Init()
/Users/tarun/Codebase2/nuclei/pkg/protocols/common/protocolstate/state.go:151 +0x10a0
github.com/projectdiscovery/nuclei/v3/pkg/protocols/common/protocolinit.Init()
/Users/tarun/Codebase2/nuclei/pkg/protocols/common/protocolinit/init.go:16 +0x2c
github.com/projectdiscovery/nuclei/v3/lib.(*NucleiEngine).init.func1()
/Users/tarun/Codebase2/nuclei/lib/sdk_private.go:119 +0x40
sync.(*Once).doSlow()
/opt/homebrew/Cellar/go/1.22.6/libexec/src/sync/once.go:74 +0xb4
sync.(*Once).Do()
/opt/homebrew/Cellar/go/1.22.6/libexec/src/sync/once.go:65 +0x40
github.com/projectdiscovery/nuclei/v3/lib.(*NucleiEngine).init()
/Users/tarun/Codebase2/nuclei/lib/sdk_private.go:118 +0x2a8
github.com/projectdiscovery/nuclei/v3/lib.NewThreadSafeNucleiEngineCtx()
/Users/tarun/Codebase2/nuclei/lib/multi.go:97 +0x2a0
github.com/projectdiscovery/nuclei/v3/lib/tests_test.TestThreadSafeNuclei.func1()
/Users/tarun/Codebase2/nuclei/lib/tests/sdk_test.go:106 +0x9c
github.com/projectdiscovery/nuclei/v3/lib/tests_test.TestThreadSafeNuclei()
/Users/tarun/Codebase2/nuclei/lib/tests/sdk_test.go:133 +0x270
testing.tRunner()
/opt/homebrew/Cellar/go/1.22.6/libexec/src/testing/testing.go:1689 +0x180
testing.(*T).Run.gowrap1()
/opt/homebrew/Cellar/go/1.22.6/libexec/src/testing/testing.go:1742 +0x40
Previous read at 0x000106f1b918 by goroutine 9706:
github.com/projectdiscovery/nuclei/v3/pkg/protocols/common/protocolstate.StartActiveMemGuardian.func1()
/Users/tarun/Codebase2/nuclei/pkg/protocols/common/protocolstate/memguardian.go:33 +0x50
Signed-off-by: Dwi Siswanto <[email protected]>
Signed-off-by: Dwi Siswanto <[email protected]>
Signed-off-by: Dwi Siswanto <[email protected]>
protocolstate
, contextargs
, and some oudated test cases
protocolstate
, contextargs
, and some oudated test casesprotocolstate
& contextargs
& some outdated test cases
protocolstate
& contextargs
& some outdated test casesprotocolstate
, contextargs
& some outdated test cases
This pull request sets up GitHub code scanning for this repository. Once the scans have completed and the checks have passed, the analysis results for this pull request branch will appear on this overview. Once you merge this pull request, the 'Security' tab will show more code scanning analysis results (for example, for the default branch). Depending on your configuration and choice of analysis tool, future pull requests will be annotated with code scanning analysis results. For more information about GitHub code scanning, check out the documentation. |
q & todos:
|
* projectdiscovery-main: (283 commits) upgrade ci(generate-docs): push w/o pull (projectdiscovery#5843) auto gen docs update handle env variables in dynamic secret file (projectdiscovery#5835) disable self-contained and file protocol templates as default (projectdiscovery#5825) chore(deps): bump github.com/projectdiscovery/hmap from 0.0.65 to 0.0.67 (projectdiscovery#5832) feat: Added time based delay analyzer to fuzzing implementation (projectdiscovery#5781) fix: data race at `protocolstate`, `contextargs` & some outdated test cases (projectdiscovery#5820) chore(deps): bump github.com/projectdiscovery/retryabledns chore(deps): bump github.com/projectdiscovery/goflags chore(deps): bump github.com/projectdiscovery/dsl from 0.3.0 to 0.3.3 chore(deps): bump github.com/projectdiscovery/rawhttp Batch JSONL output and add trailing commas (projectdiscovery#5705) ci: refactor workflows (projectdiscovery#5818) chore(deps): bump github.com/golang-jwt/jwt/v4 from 4.5.0 to 4.5.1 (projectdiscovery#5795) chore(deps): bump github.com/projectdiscovery/rawhttp (projectdiscovery#5809) chore(deps): bump github.com/projectdiscovery/wappalyzergo (projectdiscovery#5808) update version chore(deps): bump github.com/projectdiscovery/gologger chore(deps): bump github.com/projectdiscovery/useragent ... # Conflicts: # .github/ISSUE_TEMPLATE/feature_request.md # .github/ISSUE_TEMPLATE/issue-report.md # .run/DSLFunctionsIT.run.xml # DESIGN.md # README.md # README_CN.md # README_ID.md # README_KR.md # cmd/docgen/docgen.go # cmd/functional-test/main.go # cmd/functional-test/run.sh # cmd/integration-test/custom-dir.go # cmd/integration-test/dns.go # cmd/integration-test/file.go # cmd/integration-test/fuzz.go # cmd/integration-test/headless.go # cmd/integration-test/http.go # cmd/integration-test/integration-test.go # cmd/integration-test/library.go # cmd/integration-test/loader.go # cmd/integration-test/offline-http.go # cmd/integration-test/ssl.go # cmd/integration-test/template-dir.go # cmd/integration-test/template-path.go # cmd/integration-test/websocket.go # cmd/integration-test/whois.go # cmd/integration-test/workflow.go # cmd/nuclei/main.go # examples/advanced/advanced.go # examples/simple/simple.go # go.mod # go.sum # internal/colorizer/colorizer.go # internal/runner/banner.go # internal/runner/healthcheck.go # internal/runner/lazy.go # internal/runner/options.go # internal/runner/proxy.go # internal/runner/runner.go # internal/runner/runner_test.go # internal/runner/templates.go # lib/example_test.go # lib/sdk.go # lib/sdk_private.go # pkg/catalog/disk/find.go # pkg/catalog/loader/filter/path_filter.go # pkg/catalog/loader/loader.go # pkg/catalog/loader/loader_test.go # pkg/catalog/loader/remote_loader.go # pkg/core/engine.go # pkg/core/executors.go # pkg/core/workflow_execute.go # pkg/core/workflow_execute_test.go # pkg/external/customtemplates/azure_blob.go # pkg/external/customtemplates/github.go # pkg/external/customtemplates/github_test.go # pkg/external/customtemplates/gitlab.go # pkg/external/customtemplates/s3.go # pkg/external/customtemplates/templates_provider.go # pkg/fuzz/component/path.go # pkg/fuzz/fuzz.go # pkg/input/formats/swagger/swagger.go # pkg/input/provider/list/hmap.go # pkg/input/provider/list/hmap_test.go # pkg/input/transform.go # pkg/installer/template.go # pkg/installer/template_test.go # pkg/installer/util.go # pkg/installer/versioncheck.go # pkg/installer/versioncheck_test.go # pkg/js/compiler/compiler.go # pkg/js/compiler/init.go # pkg/js/global/scripts.go # pkg/js/libs/mssql/mssql.go # pkg/js/libs/postgres/postgres.go # pkg/loader/workflow/workflow_loader.go # pkg/model/model.go # pkg/model/model_test.go # pkg/model/types/severity/severities.go # pkg/model/types/stringslice/stringslice.go # pkg/operators/common/dsl/dsl.go # pkg/operators/extractors/compile.go # pkg/operators/extractors/extract.go # pkg/operators/matchers/compile.go # pkg/operators/matchers/match.go # pkg/operators/operators.go # pkg/output/format_screen.go # pkg/output/output.go # pkg/output/output_test.go # pkg/protocols/common/expressions/expressions.go # pkg/protocols/common/expressions/variables.go # pkg/protocols/common/generators/generators.go # pkg/protocols/common/generators/generators_test.go # pkg/protocols/common/generators/options.go # pkg/protocols/common/generators/validate.go # pkg/protocols/common/helpers/eventcreator/eventcreator.go # pkg/protocols/common/helpers/responsehighlighter/response_highlighter.go # pkg/protocols/common/helpers/responsehighlighter/response_highlighter_test.go # pkg/protocols/common/helpers/writer/writer.go # pkg/protocols/common/interactsh/interactsh.go # pkg/protocols/common/interactsh/options.go # pkg/protocols/common/protocolstate/state.go # pkg/protocols/common/replacer/replacer.go # pkg/protocols/common/uncover/uncover.go # pkg/protocols/common/utils/vardump/dump.go # pkg/protocols/common/variables/variables.go # pkg/protocols/dns/dns.go # pkg/protocols/dns/dns_test.go # pkg/protocols/dns/dnsclientpool/clientpool.go # pkg/protocols/dns/operators.go # pkg/protocols/dns/operators_test.go # pkg/protocols/dns/request.go # pkg/protocols/dns/request_test.go # pkg/protocols/file/file.go # pkg/protocols/file/find_test.go # pkg/protocols/file/operators.go # pkg/protocols/file/operators_test.go # pkg/protocols/file/request.go # pkg/protocols/file/request_test.go # pkg/protocols/headless/engine/engine.go # pkg/protocols/headless/engine/http_client.go # pkg/protocols/headless/engine/instance.go # pkg/protocols/headless/engine/page_actions.go # pkg/protocols/headless/engine/page_actions_test.go # pkg/protocols/headless/engine/util.go # pkg/protocols/headless/headless.go # pkg/protocols/headless/operators.go # pkg/protocols/headless/request.go # pkg/protocols/http/build_request.go # pkg/protocols/http/build_request_test.go # pkg/protocols/http/cluster.go # pkg/protocols/http/http.go # pkg/protocols/http/http_test.go # pkg/protocols/http/httpclientpool/clientpool.go # pkg/protocols/http/operators.go # pkg/protocols/http/operators_test.go # pkg/protocols/http/request.go # pkg/protocols/http/request_annotations.go # pkg/protocols/http/request_annotations_test.go # pkg/protocols/http/request_fuzz.go # pkg/protocols/http/request_generator.go # pkg/protocols/http/request_generator_test.go # pkg/protocols/http/signature.go # pkg/protocols/http/signer/signer.go # pkg/protocols/http/signerpool/signerpool.go # pkg/protocols/javascript/js.go # pkg/protocols/network/network.go # pkg/protocols/network/network_test.go # pkg/protocols/network/networkclientpool/clientpool.go # pkg/protocols/network/operators.go # pkg/protocols/network/operators_test.go # pkg/protocols/network/request.go # pkg/protocols/network/request_test.go # pkg/protocols/offlinehttp/find_test.go # pkg/protocols/offlinehttp/offlinehttp.go # pkg/protocols/offlinehttp/operators.go # pkg/protocols/offlinehttp/operators_test.go # pkg/protocols/offlinehttp/request.go # pkg/protocols/protocols.go # pkg/protocols/ssl/ssl.go # pkg/protocols/ssl/ssl_test.go # pkg/protocols/utils/http/variables.go # pkg/protocols/utils/http/variables_test.go # pkg/protocols/utils/utils.go # pkg/protocols/websocket/websocket.go # pkg/protocols/whois/rdapclientpool/clientpool.go # pkg/protocols/whois/whois.go # pkg/reporting/client.go # pkg/reporting/dedupe/dedupe.go # pkg/reporting/dedupe/dedupe_test.go # pkg/reporting/exporters/es/elasticsearch.go # pkg/reporting/exporters/jsonexporter/jsonexporter.go # pkg/reporting/exporters/markdown/markdown.go # pkg/reporting/exporters/sarif/sarif.go # pkg/reporting/exporters/splunk/splunkhec.go # pkg/reporting/format/format_utils.go # pkg/reporting/format/format_utils_test.go # pkg/reporting/options.go # pkg/reporting/reporting.go # pkg/reporting/trackers/jira/jira.go # pkg/scan/scan_context.go # pkg/templates/cluster.go # pkg/templates/compile.go # pkg/templates/compile_test.go # pkg/templates/parser_test.go # pkg/templates/tag_filter.go # pkg/templates/tag_filter_test.go # pkg/templates/templates.go # pkg/templates/templates_doc_examples.go # pkg/templates/types/types.go # pkg/templates/workflows.go # pkg/testutils/testutils.go # pkg/tmplexec/exec.go # pkg/tmplexec/flow/flow_executor.go # pkg/tmplexec/interface.go # pkg/tmplexec/multiproto/multi.go # pkg/tmplexec/multiproto/multi_test.go # pkg/types/interfaces.go # pkg/types/resume.go # pkg/types/types.go # pkg/utils/template_path.go # pkg/utils/utils.go # pkg/utils/yaml/preprocess.go # pkg/workflows/workflows.go # pkg/workflows/workflows_test.go
* projectdiscovery-main: (283 commits) upgrade ci(generate-docs): push w/o pull (projectdiscovery#5843) auto gen docs update handle env variables in dynamic secret file (projectdiscovery#5835) disable self-contained and file protocol templates as default (projectdiscovery#5825) chore(deps): bump github.com/projectdiscovery/hmap from 0.0.65 to 0.0.67 (projectdiscovery#5832) feat: Added time based delay analyzer to fuzzing implementation (projectdiscovery#5781) fix: data race at `protocolstate`, `contextargs` & some outdated test cases (projectdiscovery#5820) chore(deps): bump github.com/projectdiscovery/retryabledns chore(deps): bump github.com/projectdiscovery/goflags chore(deps): bump github.com/projectdiscovery/dsl from 0.3.0 to 0.3.3 chore(deps): bump github.com/projectdiscovery/rawhttp Batch JSONL output and add trailing commas (projectdiscovery#5705) ci: refactor workflows (projectdiscovery#5818) chore(deps): bump github.com/golang-jwt/jwt/v4 from 4.5.0 to 4.5.1 (projectdiscovery#5795) chore(deps): bump github.com/projectdiscovery/rawhttp (projectdiscovery#5809) chore(deps): bump github.com/projectdiscovery/wappalyzergo (projectdiscovery#5808) update version chore(deps): bump github.com/projectdiscovery/gologger chore(deps): bump github.com/projectdiscovery/useragent ... # Conflicts: # .github/ISSUE_TEMPLATE/feature_request.md # .github/ISSUE_TEMPLATE/issue-report.md # .run/DSLFunctionsIT.run.xml # DESIGN.md # README.md # README_CN.md # README_ID.md # README_KR.md # cmd/docgen/docgen.go # cmd/functional-test/main.go # cmd/functional-test/run.sh # cmd/integration-test/custom-dir.go # cmd/integration-test/dns.go # cmd/integration-test/file.go # cmd/integration-test/fuzz.go # cmd/integration-test/headless.go # cmd/integration-test/http.go # cmd/integration-test/integration-test.go # cmd/integration-test/library.go # cmd/integration-test/loader.go # cmd/integration-test/offline-http.go # cmd/integration-test/ssl.go # cmd/integration-test/template-dir.go # cmd/integration-test/template-path.go # cmd/integration-test/websocket.go # cmd/integration-test/whois.go # cmd/integration-test/workflow.go # cmd/nuclei/main.go # examples/advanced/advanced.go # examples/simple/simple.go # go.mod # go.sum # internal/colorizer/colorizer.go # internal/runner/banner.go # internal/runner/healthcheck.go # internal/runner/lazy.go # internal/runner/options.go # internal/runner/proxy.go # internal/runner/runner.go # internal/runner/runner_test.go # internal/runner/templates.go # lib/example_test.go # lib/sdk.go # lib/sdk_private.go # pkg/catalog/disk/find.go # pkg/catalog/loader/filter/path_filter.go # pkg/catalog/loader/loader.go # pkg/catalog/loader/loader_test.go # pkg/catalog/loader/remote_loader.go # pkg/core/engine.go # pkg/core/executors.go # pkg/core/workflow_execute.go # pkg/core/workflow_execute_test.go # pkg/external/customtemplates/azure_blob.go # pkg/external/customtemplates/github.go # pkg/external/customtemplates/github_test.go # pkg/external/customtemplates/gitlab.go # pkg/external/customtemplates/s3.go # pkg/external/customtemplates/templates_provider.go # pkg/fuzz/component/path.go # pkg/fuzz/fuzz.go # pkg/input/formats/swagger/swagger.go # pkg/input/provider/list/hmap.go # pkg/input/provider/list/hmap_test.go # pkg/input/transform.go # pkg/installer/template.go # pkg/installer/template_test.go # pkg/installer/util.go # pkg/installer/versioncheck.go # pkg/installer/versioncheck_test.go # pkg/js/compiler/compiler.go # pkg/js/compiler/init.go # pkg/js/global/scripts.go # pkg/js/libs/mssql/mssql.go # pkg/js/libs/postgres/postgres.go # pkg/loader/workflow/workflow_loader.go # pkg/model/model.go # pkg/model/model_test.go # pkg/model/types/severity/severities.go # pkg/model/types/stringslice/stringslice.go # pkg/operators/common/dsl/dsl.go # pkg/operators/extractors/compile.go # pkg/operators/extractors/extract.go # pkg/operators/matchers/compile.go # pkg/operators/matchers/match.go # pkg/operators/operators.go # pkg/output/format_screen.go # pkg/output/output.go # pkg/output/output_test.go # pkg/protocols/common/expressions/expressions.go # pkg/protocols/common/expressions/variables.go # pkg/protocols/common/generators/generators.go # pkg/protocols/common/generators/generators_test.go # pkg/protocols/common/generators/options.go # pkg/protocols/common/generators/validate.go # pkg/protocols/common/helpers/eventcreator/eventcreator.go # pkg/protocols/common/helpers/responsehighlighter/response_highlighter.go # pkg/protocols/common/helpers/responsehighlighter/response_highlighter_test.go # pkg/protocols/common/helpers/writer/writer.go # pkg/protocols/common/interactsh/interactsh.go # pkg/protocols/common/interactsh/options.go # pkg/protocols/common/protocolstate/state.go # pkg/protocols/common/replacer/replacer.go # pkg/protocols/common/uncover/uncover.go # pkg/protocols/common/utils/vardump/dump.go # pkg/protocols/common/variables/variables.go # pkg/protocols/dns/dns.go # pkg/protocols/dns/dns_test.go # pkg/protocols/dns/dnsclientpool/clientpool.go # pkg/protocols/dns/operators.go # pkg/protocols/dns/operators_test.go # pkg/protocols/dns/request.go # pkg/protocols/dns/request_test.go # pkg/protocols/file/file.go # pkg/protocols/file/find_test.go # pkg/protocols/file/operators.go # pkg/protocols/file/operators_test.go # pkg/protocols/file/request.go # pkg/protocols/file/request_test.go # pkg/protocols/headless/engine/engine.go # pkg/protocols/headless/engine/http_client.go # pkg/protocols/headless/engine/instance.go # pkg/protocols/headless/engine/page_actions.go # pkg/protocols/headless/engine/page_actions_test.go # pkg/protocols/headless/engine/util.go # pkg/protocols/headless/headless.go # pkg/protocols/headless/operators.go # pkg/protocols/headless/request.go # pkg/protocols/http/build_request.go # pkg/protocols/http/build_request_test.go # pkg/protocols/http/cluster.go # pkg/protocols/http/http.go # pkg/protocols/http/http_test.go # pkg/protocols/http/httpclientpool/clientpool.go # pkg/protocols/http/operators.go # pkg/protocols/http/operators_test.go # pkg/protocols/http/request.go # pkg/protocols/http/request_annotations.go # pkg/protocols/http/request_annotations_test.go # pkg/protocols/http/request_fuzz.go # pkg/protocols/http/request_generator.go # pkg/protocols/http/request_generator_test.go # pkg/protocols/http/signature.go # pkg/protocols/http/signer/signer.go # pkg/protocols/http/signerpool/signerpool.go # pkg/protocols/javascript/js.go # pkg/protocols/network/network.go # pkg/protocols/network/network_test.go # pkg/protocols/network/networkclientpool/clientpool.go # pkg/protocols/network/operators.go # pkg/protocols/network/operators_test.go # pkg/protocols/network/request.go # pkg/protocols/network/request_test.go # pkg/protocols/offlinehttp/find_test.go # pkg/protocols/offlinehttp/offlinehttp.go # pkg/protocols/offlinehttp/operators.go # pkg/protocols/offlinehttp/operators_test.go # pkg/protocols/offlinehttp/request.go # pkg/protocols/protocols.go # pkg/protocols/ssl/ssl.go # pkg/protocols/ssl/ssl_test.go # pkg/protocols/utils/http/variables.go # pkg/protocols/utils/http/variables_test.go # pkg/protocols/utils/utils.go # pkg/protocols/websocket/websocket.go # pkg/protocols/whois/rdapclientpool/clientpool.go # pkg/protocols/whois/whois.go # pkg/reporting/client.go # pkg/reporting/dedupe/dedupe.go # pkg/reporting/dedupe/dedupe_test.go # pkg/reporting/exporters/es/elasticsearch.go # pkg/reporting/exporters/jsonexporter/jsonexporter.go # pkg/reporting/exporters/markdown/markdown.go # pkg/reporting/exporters/sarif/sarif.go # pkg/reporting/exporters/splunk/splunkhec.go # pkg/reporting/format/format_utils.go # pkg/reporting/format/format_utils_test.go # pkg/reporting/options.go # pkg/reporting/reporting.go # pkg/reporting/trackers/jira/jira.go # pkg/scan/scan_context.go # pkg/templates/cluster.go # pkg/templates/compile.go # pkg/templates/compile_test.go # pkg/templates/parser_test.go # pkg/templates/tag_filter.go # pkg/templates/tag_filter_test.go # pkg/templates/templates.go # pkg/templates/templates_doc_examples.go # pkg/templates/types/types.go # pkg/templates/workflows.go # pkg/testutils/testutils.go # pkg/tmplexec/exec.go # pkg/tmplexec/flow/flow_executor.go # pkg/tmplexec/interface.go # pkg/tmplexec/multiproto/multi.go # pkg/tmplexec/multiproto/multi_test.go # pkg/types/interfaces.go # pkg/types/resume.go # pkg/types/types.go # pkg/utils/template_path.go # pkg/utils/utils.go # pkg/utils/yaml/preprocess.go # pkg/workflows/workflows.go # pkg/workflows/workflows_test.go
Proposed changes
Fixes #5815 #5819 #5833
Checklist