Compare commits

..
Author SHA1 Message Date
Tarun Koyalwar 659b7cac81 bug fix + openapi vars input file changes 2024-08-24 20:49:46 +05:30
Tarun Koyalwar c9beb400ec get all security schema params 2024-08-24 19:23:17 +05:30
Tarun Koyalwar c9f52e4df9 fix panic in openapi generator 2024-08-24 19:03:17 +05:30
Dogan Can Bakir 56af26a502 Add auto assign (#5555)
* add auto assign

* commit to last commit
2024-08-22 18:19:07 +05:30
Mzack9999 8e1072e2b0 Merge pull request #5551 from AdallomRoy/dev
Upgrade gitlab
2024-08-21 17:06:55 +02:00
Mzack9999 b53b530b6a Merge pull request #5547 from projectdiscovery/fix_race_condition
fix race condition
2024-08-21 17:03:21 +02:00
mzack9999 bfdc507c6c lint 2024-08-21 16:34:53 +02:00
mzack9999 ddf9b2fbec fix 2024-08-21 16:29:00 +02:00
mzack9999 5e102b782b fixing race + nil crash 2024-08-21 16:09:47 +02:00
Doğan Can Bakır d1f4c98cd7 Revert "remove redundant code"
This reverts commit 35a0d673ad.
2024-08-21 15:03:41 +03:00
Roy Reznik 87c8cd8e01 Upgrade gitlab 2024-08-21 11:44:01 +01:00
Doğan Can Bakır 35a0d673ad remove redundant code 2024-08-21 11:36:33 +03:00
Doğan Can Bakır 46782ff90c use sync.Once 2024-08-21 11:26:17 +03:00
Dwi Siswanto b1152efd42 chore(make): make it DRY (#5549)
Signed-off-by: Dwi Siswanto <[email protected]>
2024-08-20 13:36:39 +05:30
Dwi Siswanto d84aea93cc chore: sorts gitignore (#5548)
Signed-off-by: Dwi Siswanto <[email protected]>
2024-08-20 13:34:01 +05:30
Doğan Can Bakır 50023428d0 fix lint 2024-08-19 23:09:07 +03:00
Doğan Can Bakır 7af08e2b04 Merge branch 'dev' into fix_race_condition 2024-08-19 23:06:53 +03:00
Doğan Can Bakır 3064788d35 fix race condition 2024-08-19 23:02:27 +03:00
0da993afe6 Merge commit from fork
* fix template signature verification

* fix signature pattern check

* add tests

* remove signature count constraint, check for lines len

* Add more tests

* Centralize signature extraction logic in signer package

* Move signature handling in Sign function to beginning

* Remove comment

* Revert `NewTemplateSigVerifier`

* update tests

* use ExtractSignatureAndContent func

* Allow signing code templates

* Remove unused const

---------

Co-authored-by: Doğan Can Bakır <[email protected]>
Co-authored-by: Guy Goldenberg <[email protected]>
2024-08-19 18:02:54 +05:30
dependabot[bot] 4d5eb9c484 Merge pull request #5543 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/retryabledns-1.0.72 2024-08-19 07:24:14 +00:00
dependabot[bot] 8a3818230d chore(deps): bump github.com/projectdiscovery/retryabledns
Bumps [github.com/projectdiscovery/retryabledns](https://github.com/projectdiscovery/retryabledns) from 1.0.69 to 1.0.72.
- [Release notes](https://github.com/projectdiscovery/retryabledns/releases)
- [Commits](https://github.com/projectdiscovery/retryabledns/compare/v1.0.69...v1.0.72)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/retryabledns
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-08-19 06:59:19 +00:00
dependabot[bot] 943a6f6643 Merge pull request #5541 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/retryablehttp-go-1.0.74 2024-08-19 06:57:53 +00:00
dependabot[bot] 091ca32b1c chore(deps): bump github.com/projectdiscovery/retryablehttp-go
Bumps [github.com/projectdiscovery/retryablehttp-go](https://github.com/projectdiscovery/retryablehttp-go) from 1.0.71 to 1.0.74.
- [Release notes](https://github.com/projectdiscovery/retryablehttp-go/releases)
- [Commits](https://github.com/projectdiscovery/retryablehttp-go/compare/v1.0.71...v1.0.74)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/retryablehttp-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-08-19 06:33:12 +00:00
dependabot[bot] 326f8774fd Merge pull request #5544 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/fastdialer-0.2.5 2024-08-19 06:32:03 +00:00
dependabot[bot] c94d226a49 chore(deps): bump github.com/projectdiscovery/fastdialer
Bumps [github.com/projectdiscovery/fastdialer](https://github.com/projectdiscovery/fastdialer) from 0.2.3 to 0.2.5.
- [Release notes](https://github.com/projectdiscovery/fastdialer/releases)
- [Commits](https://github.com/projectdiscovery/fastdialer/compare/v0.2.3...v0.2.5)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/fastdialer
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-08-19 06:07:14 +00:00
dependabot[bot] c9fe07557c Merge pull request #5542 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/hmap-0.0.55 2024-08-19 06:06:13 +00:00
dependabot[bot] e16350cde6 chore(deps): bump github.com/projectdiscovery/hmap from 0.0.54 to 0.0.55
Bumps [github.com/projectdiscovery/hmap](https://github.com/projectdiscovery/hmap) from 0.0.54 to 0.0.55.
- [Release notes](https://github.com/projectdiscovery/hmap/releases)
- [Commits](https://github.com/projectdiscovery/hmap/compare/v0.0.54...v0.0.55)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/hmap
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-08-19 05:39:12 +00:00
dependabot[bot] 0f79044dae Merge pull request #5540 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/clistats-0.1.0 2024-08-19 05:37:55 +00:00
dependabot[bot] c6bafd88eb chore(deps): bump github.com/projectdiscovery/clistats
Bumps [github.com/projectdiscovery/clistats](https://github.com/projectdiscovery/clistats) from 0.0.20 to 0.1.0.
- [Release notes](https://github.com/projectdiscovery/clistats/releases)
- [Commits](https://github.com/projectdiscovery/clistats/compare/v0.0.20...v0.1.0)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/clistats
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-08-19 05:12:33 +00:00
Ice3manandsandeep 80b3cc0627 feat: jira accept issue-type and project ids (#5537)
* feat: jira accept issue-type and project ids

* remove validation for project name

---------

Co-authored-by: sandeep <[email protected]>
2024-08-19 06:20:12 +05:30
Dwi Siswanto 02fadbcf77 chore: migrate issue template to issue form (#5538)
Signed-off-by: Dwi Siswanto <[email protected]>
2024-08-19 04:28:30 +05:30
sandeep f2f250738c version update 2024-08-16 20:44:39 +05:30
Tarun KoyalwarandDwi Siswanto 1c76398aea lint error fixes (#5531)
* lint error fixes

* chore: satisfy non-constant format str in call lint (govet)

Signed-off-by: Dwi Siswanto <[email protected]>

---------

Signed-off-by: Dwi Siswanto <[email protected]>
Co-authored-by: Dwi Siswanto <[email protected]>
2024-08-16 20:31:23 +05:30
Tryfon Papatriantafyllou 0675aa48a3 Circular References in OpenAPI 3.0 fixed (#5491)
* Circular References in OpenAPI 3.0 fixed

* Fixing Swagger_test
2024-08-16 18:34:47 +05:30
Ramana Reddy f29b94521e fix unresolved variables in dast templates (#5443)
* fix unresolved variables in dast templates

* dedupe interactsh urls

* misc update
2024-08-16 18:19:44 +05:30
ghost d20ec34f63 Auto Generate Syntax Docs + JSONSchema [Fri Aug 16 12:41:50 UTC 2024] 🤖 2024-08-16 12:41:50 +00:00
Dwi Siswanto 1af29f97a9 feat(http): add skip-secret-file field (#5522)
* feat(http): add `BypassSecretFile` field

Signed-off-by: Dwi Siswanto <[email protected]>

* feat(http): conditionally apply auth strategies

Signed-off-by: Dwi Siswanto <[email protected]>

* refactor(http): rename `BypassSecretFile` field to `SkipSecretFile`

Signed-off-by: Dwi Siswanto <[email protected]>

---------

Signed-off-by: Dwi Siswanto <[email protected]>
2024-08-16 18:10:48 +05:30
sandeep 1293a34707 dep update 2024-08-16 18:03:53 +05:30
Tryfon Papatriantafyllou c6e5bdd857 Fixing the server URL path for OpenAPI scanning (#5504)
* fix_openAPI_serverURL_path

* Issue #5503
2024-08-16 17:37:02 +05:30
Ramana ReddyandTarun Koyalwar 2f7eea410d Add team-id option (#5523)
* add team-id option

* fix dashboard url when uploading to team

---------

Co-authored-by: Tarun Koyalwar <[email protected]>
2024-08-16 13:27:26 +05:30
Ramana Reddy 2609d2d135 feat: add support for multiple auth strategies per target from secrets file (#5500) 2024-08-16 11:59:15 +05:30
Dogan Can Bakir e0466e102c redact output (#5463)
* redact output

* update regex

* redact matchet-at
2024-08-16 11:42:38 +05:30
Dwi Siswanto 1e49cd9800 ci: don't clean modules cache (#5519)
* chore(make): add `verify` command

Signed-off-by: Dwi Siswanto <[email protected]>

* ci: remove hygiene (`clean -modcache`) with verify instead

Signed-off-by: Dwi Siswanto <[email protected]>

---------

Signed-off-by: Dwi Siswanto <[email protected]>
2024-08-15 18:45:42 +05:30
dependabot[bot] a5c7fe6094 Merge pull request #5511 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/goflags-0.1.63 2024-08-15 12:25:47 +00:00
dependabot[bot] 2e6c3821ff Merge pull request #5514 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/hmap-0.0.54 2024-08-12 06:31:04 +00:00
dependabot[bot] 9019e36be5 chore(deps): bump github.com/projectdiscovery/hmap from 0.0.52 to 0.0.54
Bumps [github.com/projectdiscovery/hmap](https://github.com/projectdiscovery/hmap) from 0.0.52 to 0.0.54.
- [Release notes](https://github.com/projectdiscovery/hmap/releases)
- [Commits](https://github.com/projectdiscovery/hmap/compare/v0.0.52...v0.0.54)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/hmap
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-08-12 06:06:06 +00:00
dependabot[bot] f363b307d4 chore(deps): bump github.com/projectdiscovery/goflags
Bumps [github.com/projectdiscovery/goflags](https://github.com/projectdiscovery/goflags) from 0.1.62 to 0.1.63.
- [Release notes](https://github.com/projectdiscovery/goflags/releases)
- [Commits](https://github.com/projectdiscovery/goflags/compare/v0.1.62...v0.1.63)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/goflags
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-08-12 06:06:05 +00:00
dependabot[bot] 153b9394f6 Merge pull request #5510 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/useragent-0.0.65 2024-08-12 06:05:01 +00:00
dependabot[bot] c6a2e57a25 Merge pull request #5512 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/httpx-1.6.7 2024-08-12 05:40:25 +00:00
dependabot[bot] 0b90504a0d chore(deps): bump github.com/projectdiscovery/useragent
Bumps [github.com/projectdiscovery/useragent](https://github.com/projectdiscovery/useragent) from 0.0.60 to 0.0.65.
- [Release notes](https://github.com/projectdiscovery/useragent/releases)
- [Commits](https://github.com/projectdiscovery/useragent/compare/v0.0.60...v0.0.65)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/useragent
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-08-12 05:39:17 +00:00
dependabot[bot] 3a6625bf26 Merge pull request #5513 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/wappalyzergo-0.1.14 2024-08-12 05:38:17 +00:00
dependabot[bot] 1643f51839 chore(deps): bump github.com/projectdiscovery/wappalyzergo
Bumps [github.com/projectdiscovery/wappalyzergo](https://github.com/projectdiscovery/wappalyzergo) from 0.1.13 to 0.1.14.
- [Release notes](https://github.com/projectdiscovery/wappalyzergo/releases)
- [Commits](https://github.com/projectdiscovery/wappalyzergo/compare/v0.1.13...v0.1.14)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/wappalyzergo
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-08-12 05:12:34 +00:00
dependabot[bot] 543c834173 chore(deps): bump github.com/projectdiscovery/httpx from 1.6.6 to 1.6.7
Bumps [github.com/projectdiscovery/httpx](https://github.com/projectdiscovery/httpx) from 1.6.6 to 1.6.7.
- [Release notes](https://github.com/projectdiscovery/httpx/releases)
- [Changelog](https://github.com/projectdiscovery/httpx/blob/main/.goreleaser.yml)
- [Commits](https://github.com/projectdiscovery/httpx/compare/v1.6.6...v1.6.7)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/httpx
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-08-12 05:12:30 +00:00
Peter Kasza 350fa4c10c fix: FileAuthProvider stores the same strategy for each entry (#5474) 2024-08-05 15:23:21 +05:30
dependabot[bot] 653ea98b21 Merge pull request #5487 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/wappalyzergo-0.1.13 2024-08-05 07:12:56 +00:00
dependabot[bot] 3f8c37c9e9 Merge pull request #5486 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/fastdialer-0.2.3 2024-08-05 07:06:39 +00:00
dependabot[bot] a7b815d561 chore(deps): bump github.com/projectdiscovery/fastdialer
Bumps [github.com/projectdiscovery/fastdialer](https://github.com/projectdiscovery/fastdialer) from 0.2.1 to 0.2.3.
- [Release notes](https://github.com/projectdiscovery/fastdialer/releases)
- [Commits](https://github.com/projectdiscovery/fastdialer/compare/v0.2.1...v0.2.3)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/fastdialer
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-08-05 06:40:21 +00:00
dependabot[bot] b5b26ba378 Merge pull request #5489 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/goflags-0.1.62 2024-08-05 06:38:13 +00:00
dependabot[bot] 9fa178f64e Merge pull request #5488 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/rawhttp-0.1.60 2024-08-05 06:38:08 +00:00
dependabot[bot] de29517572 chore(deps): bump github.com/projectdiscovery/rawhttp
Bumps [github.com/projectdiscovery/rawhttp](https://github.com/projectdiscovery/rawhttp) from 0.1.57 to 0.1.60.
- [Release notes](https://github.com/projectdiscovery/rawhttp/releases)
- [Commits](https://github.com/projectdiscovery/rawhttp/compare/v0.1.57...v0.1.60)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/rawhttp
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-08-05 06:12:39 +00:00
dependabot[bot] b84488e1cd chore(deps): bump github.com/projectdiscovery/goflags
Bumps [github.com/projectdiscovery/goflags](https://github.com/projectdiscovery/goflags) from 0.1.59 to 0.1.62.
- [Release notes](https://github.com/projectdiscovery/goflags/releases)
- [Commits](https://github.com/projectdiscovery/goflags/compare/v0.1.59...v0.1.62)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/goflags
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-08-05 06:12:23 +00:00
dependabot[bot] 4316943601 Merge pull request #5490 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/gologger-1.1.18 2024-08-05 06:11:14 +00:00
dependabot[bot] 6179e9dd41 chore(deps): bump github.com/projectdiscovery/gologger
Bumps [github.com/projectdiscovery/gologger](https://github.com/projectdiscovery/gologger) from 1.1.16 to 1.1.18.
- [Release notes](https://github.com/projectdiscovery/gologger/releases)
- [Commits](https://github.com/projectdiscovery/gologger/compare/v1.1.16...v1.1.18)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/gologger
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-08-05 05:46:02 +00:00
dependabot[bot] 471d6730f4 chore(deps): bump github.com/projectdiscovery/wappalyzergo
Bumps [github.com/projectdiscovery/wappalyzergo](https://github.com/projectdiscovery/wappalyzergo) from 0.1.11 to 0.1.13.
- [Release notes](https://github.com/projectdiscovery/wappalyzergo/releases)
- [Commits](https://github.com/projectdiscovery/wappalyzergo/compare/v0.1.11...v0.1.13)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/wappalyzergo
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-08-05 05:45:47 +00:00
Tarun Koyalwar 2df1b2e88e file proto missing vars in flow & multi-protocol (#5480)
* fix missing template context in file proto

* fix file protocol missing vars

* fix test

* skip example advanced test
2024-08-04 18:14:08 +05:30
Dwi Siswanto ddcc9211be ci: use composite actions (#5483)
Signed-off-by: Dwi Siswanto <[email protected]>
2024-08-03 23:44:37 +05:30
alban-stourbe-wmxandMzack9999 0787ff29e0 Add Workflows SDK scan (#5409)
* Add Workflows SDK scan

* minor

---------

Co-authored-by: Mzack9999 <[email protected]>
2024-08-03 23:13:31 +05:30
Mohammed DiaaandTarun Koyalwar ff23949bb0 Apply input transformation to multi-protocol templates (#5426)
* Apply input transformation to multi-protocol template execution

* Remove ad hoc input transoformation from DNS protocol

* Add SSL protocol input transformer

* Remove ad hoc input transoformation from SSL protocol

* Remove unused function extractDomain from the DNS protocol engine

* transform in flow as well

* bug fix + update test

* bug fix multi proto
:

* bug fix multi proto input

* bug fixes in input transform

---------

Co-authored-by: Tarun Koyalwar <[email protected]>
2024-08-01 20:43:47 +05:30
Dogan Can Bakir 2655c29458 remove redundant code (#5479) 2024-08-01 19:24:27 +05:30
Dwi Siswanto 64885dcde6 docs(issue-report): add Nuclei command section (#5477)
Signed-off-by: Dwi Siswanto <[email protected]>
2024-08-01 14:58:22 +05:30
Tarun Koyalwar 38e130201e fix possible nil panic (#5473) 2024-07-31 17:34:56 +05:30
dependabot[bot] 0c325b1453 Merge pull request #5460 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/retryablehttp-go-1.0.71 2024-07-29 06:54:39 +00:00
dependabot[bot] e34fb3162e Merge pull request #5456 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/dsl-0.1.8 2024-07-29 06:53:46 +00:00
dependabot[bot] 59575116f8 Merge pull request #5459 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/uncover-1.0.9 2024-07-29 06:52:45 +00:00
dependabot[bot] 82e6f0c1c2 chore(deps): bump github.com/projectdiscovery/retryablehttp-go
Bumps [github.com/projectdiscovery/retryablehttp-go](https://github.com/projectdiscovery/retryablehttp-go) from 1.0.69 to 1.0.71.
- [Release notes](https://github.com/projectdiscovery/retryablehttp-go/releases)
- [Commits](https://github.com/projectdiscovery/retryablehttp-go/compare/v1.0.69...v1.0.71)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/retryablehttp-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-07-29 06:27:19 +00:00
dependabot[bot] 372eab80c8 chore(deps): bump github.com/projectdiscovery/uncover
Bumps [github.com/projectdiscovery/uncover](https://github.com/projectdiscovery/uncover) from 1.0.8 to 1.0.9.
- [Release notes](https://github.com/projectdiscovery/uncover/releases)
- [Changelog](https://github.com/projectdiscovery/uncover/blob/main/.goreleaser.yml)
- [Commits](https://github.com/projectdiscovery/uncover/compare/v1.0.8...v1.0.9)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/uncover
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-07-29 06:27:18 +00:00
dependabot[bot] ec0a8ba3ab chore(deps): bump github.com/projectdiscovery/dsl from 0.1.6 to 0.1.8
Bumps [github.com/projectdiscovery/dsl](https://github.com/projectdiscovery/dsl) from 0.1.6 to 0.1.8.
- [Release notes](https://github.com/projectdiscovery/dsl/releases)
- [Commits](https://github.com/projectdiscovery/dsl/compare/v0.1.6...v0.1.8)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/dsl
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-07-29 06:27:15 +00:00
dependabot[bot] 980ca115fa Merge pull request #5458 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/utils-0.2.3 2024-07-29 06:26:11 +00:00
dependabot[bot] cafe13afdf Merge pull request #5457 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/ratelimit-0.0.49 2024-07-29 06:24:14 +00:00
dependabot[bot] 24f4ad545a chore(deps): bump github.com/projectdiscovery/utils from 0.2.2 to 0.2.3
Bumps [github.com/projectdiscovery/utils](https://github.com/projectdiscovery/utils) from 0.2.2 to 0.2.3.
- [Release notes](https://github.com/projectdiscovery/utils/releases)
- [Changelog](https://github.com/projectdiscovery/utils/blob/main/CHANGELOG.md)
- [Commits](https://github.com/projectdiscovery/utils/compare/v0.2.2...v0.2.3)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/utils
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-07-29 05:59:09 +00:00
dependabot[bot] c67a579ab1 chore(deps): bump github.com/projectdiscovery/ratelimit
Bumps [github.com/projectdiscovery/ratelimit](https://github.com/projectdiscovery/ratelimit) from 0.0.45 to 0.0.49.
- [Release notes](https://github.com/projectdiscovery/ratelimit/releases)
- [Commits](https://github.com/projectdiscovery/ratelimit/compare/v0.0.45...v0.0.49)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/ratelimit
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-07-29 05:59:04 +00:00
Tarun Koyalwar 2418319df4 js: generate matcher-status event (#5450)
* js: generate matcher-status event

* isPortOpen: use fastdialer instance

* update sdk unit test

* add docs :)
2024-07-27 02:46:34 +05:30
Dwi Siswanto 6d325a4ebe feat(http): assign customHeaders to the map directly (#5445)
also add skip expr if header key is "Host"

Signed-off-by: Dwi Siswanto <[email protected]>
2024-07-26 22:24:35 +07:00
Ramana Reddy 33dbb51505 fix unresolved interactsh-url variable with fuzzing (#5289)
* fix unresolved interactsh variable with fuzzing

* fix variables override with fuzzing
2024-07-26 00:01:05 +05:30
jarnpher_rice f930e9a58f chore(deps): change github.com/denisenkom/go-mssqldb to github.com/microsoft/go-mssqldb (#5419) 2024-07-25 02:59:35 +05:30
Tarun Koyalwar cb2e6523f9 Merge pull request #5436 from ShuBo6/dev
fix: Missing close statements file.Close() & ticker.Stop()
2024-07-24 16:50:30 +05:30
shubo c5a3949473 fix: Missing close statements file.Close() & ticker.Stop() 2024-07-23 09:28:15 +08:00
Dogan Can Bakir 1fa0e2b473 disable http probe when passive mode is enabled (#5418) 2024-07-22 18:25:02 +05:30
fudancoder 9f08fe21d8 chore: fix some comments (#5432)
Signed-off-by: fudancoder <[email protected]>
2024-07-22 14:29:35 +05:30
dependabot[bot] 33464a39c7 Merge pull request #5428 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/wappalyzergo-0.1.11 2024-07-22 07:44:25 +00:00
dependabot[bot] 0e881ebb78 chore(deps): bump github.com/projectdiscovery/wappalyzergo
Bumps [github.com/projectdiscovery/wappalyzergo](https://github.com/projectdiscovery/wappalyzergo) from 0.1.10 to 0.1.11.
- [Release notes](https://github.com/projectdiscovery/wappalyzergo/releases)
- [Commits](https://github.com/projectdiscovery/wappalyzergo/compare/v0.1.10...v0.1.11)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/wappalyzergo
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-07-22 07:20:36 +00:00
dependabot[bot] 5b2897cc20 Merge pull request #5429 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/utils-0.2.2 2024-07-22 07:19:02 +00:00
dependabot[bot] ec682695b6 chore(deps): bump github.com/projectdiscovery/utils from 0.2.1 to 0.2.2
Bumps [github.com/projectdiscovery/utils](https://github.com/projectdiscovery/utils) from 0.2.1 to 0.2.2.
- [Release notes](https://github.com/projectdiscovery/utils/releases)
- [Changelog](https://github.com/projectdiscovery/utils/blob/main/CHANGELOG.md)
- [Commits](https://github.com/projectdiscovery/utils/compare/v0.2.1...v0.2.2)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/utils
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-07-22 06:52:54 +00:00
dependabot[bot] 01b9ddad4c Merge pull request #5427 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/hmap-0.0.51 2024-07-22 06:51:42 +00:00
dependabot[bot] 327a15f94f chore(deps): bump github.com/projectdiscovery/hmap from 0.0.49 to 0.0.51
Bumps [github.com/projectdiscovery/hmap](https://github.com/projectdiscovery/hmap) from 0.0.49 to 0.0.51.
- [Release notes](https://github.com/projectdiscovery/hmap/releases)
- [Commits](https://github.com/projectdiscovery/hmap/compare/v0.0.49...v0.0.51)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/hmap
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-07-22 06:27:14 +00:00
dependabot[bot] 1b33bdd4e3 Merge pull request #5431 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/retryabledns-1.0.68 2024-07-22 06:26:13 +00:00
dependabot[bot] b4669b398e Merge pull request #5430 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/httpx-1.6.6 2024-07-22 06:23:24 +00:00
dependabot[bot] d7d5adff53 chore(deps): bump github.com/projectdiscovery/retryabledns
Bumps [github.com/projectdiscovery/retryabledns](https://github.com/projectdiscovery/retryabledns) from 1.0.66 to 1.0.68.
- [Release notes](https://github.com/projectdiscovery/retryabledns/releases)
- [Commits](https://github.com/projectdiscovery/retryabledns/compare/v1.0.66...v1.0.68)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/retryabledns
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-07-22 05:59:52 +00:00
dependabot[bot] 90bbecb51c chore(deps): bump github.com/projectdiscovery/httpx from 1.6.3 to 1.6.6
Bumps [github.com/projectdiscovery/httpx](https://github.com/projectdiscovery/httpx) from 1.6.3 to 1.6.6.
- [Release notes](https://github.com/projectdiscovery/httpx/releases)
- [Changelog](https://github.com/projectdiscovery/httpx/blob/main/.goreleaser.yml)
- [Commits](https://github.com/projectdiscovery/httpx/compare/v1.6.3...v1.6.6)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/httpx
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-07-22 05:59:47 +00:00
dependabot[bot] 59e936399b Merge pull request #5406 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/wappalyzergo-0.1.10 2024-07-17 13:40:55 +00:00
dependabot[bot] d776dbb2dd chore(deps): bump github.com/projectdiscovery/wappalyzergo
Bumps [github.com/projectdiscovery/wappalyzergo](https://github.com/projectdiscovery/wappalyzergo) from 0.1.6 to 0.1.10.
- [Release notes](https://github.com/projectdiscovery/wappalyzergo/releases)
- [Commits](https://github.com/projectdiscovery/wappalyzergo/compare/v0.1.6...v0.1.10)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/wappalyzergo
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-07-17 13:07:13 +00:00
sandeep 0433c83730 dep update 2024-07-17 18:36:05 +05:30
sandeep f1253e16c9 readme updates 2024-07-17 14:03:03 +05:30
sandeep efc01c90c5 version update 2024-07-15 21:58:53 +05:30
Dogan Can Bakir 6c32eb7d1e add sdk option to disable update check (#5346) 2024-07-15 18:51:16 +05:30
Tarun Koyalwar 6cbd73f780 feat: improve ldap output with custom type: (#5387)
* feat: improve ldap output with custom type:

* js bindings update

* lint fix
2024-07-15 18:42:22 +05:30
dependabot[bot] ebbfcadb9a Merge pull request #5405 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/rawhttp-0.1.57 2024-07-15 12:13:54 +00:00
dependabot[bot] 7f3c5e5083 Merge pull request #5344 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/cdncheck-1.1.0 2024-07-15 12:13:45 +00:00
dependabot[bot] 26e6127755 Merge pull request #5407 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/goflags-0.1.59 2024-07-15 12:13:29 +00:00
dependabot[bot] 2e78b50f80 chore(deps): bump github.com/projectdiscovery/rawhttp
Bumps [github.com/projectdiscovery/rawhttp](https://github.com/projectdiscovery/rawhttp) from 0.1.51 to 0.1.57.
- [Release notes](https://github.com/projectdiscovery/rawhttp/releases)
- [Commits](https://github.com/projectdiscovery/rawhttp/compare/v0.1.51...v0.1.57)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/rawhttp
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-07-15 11:48:28 +00:00
dependabot[bot] 455a900a96 chore(deps): bump github.com/projectdiscovery/cdncheck
Bumps [github.com/projectdiscovery/cdncheck](https://github.com/projectdiscovery/cdncheck) from 1.0.9 to 1.1.0.
- [Release notes](https://github.com/projectdiscovery/cdncheck/releases)
- [Changelog](https://github.com/projectdiscovery/cdncheck/blob/main/.goreleaser.yaml)
- [Commits](https://github.com/projectdiscovery/cdncheck/compare/v1.0.9...v1.1.0)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/cdncheck
  dependency-type: indirect
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-07-15 11:48:27 +00:00
dependabot[bot] ceea533681 chore(deps): bump github.com/projectdiscovery/goflags
Bumps [github.com/projectdiscovery/goflags](https://github.com/projectdiscovery/goflags) from 0.1.56 to 0.1.59.
- [Release notes](https://github.com/projectdiscovery/goflags/releases)
- [Commits](https://github.com/projectdiscovery/goflags/compare/v0.1.56...v0.1.59)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/goflags
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-07-15 11:48:13 +00:00
dependabot[bot] f50d39b28a Merge pull request #5404 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/dsl-0.1.6 2024-07-15 11:47:24 +00:00
boyhack deb0dd2a5f fix(engine): Resolve issue with ExecuteWithResults function not returning expected results (#5376)
fix(engine): Resolve issue with ExecuteWithResults function not returning expected results

When attempting to use the `ExecuteWithResults` function, users were finding that the function was not returning the expected results. This fix addresses the root cause of this problem.
2024-07-15 17:02:14 +05:30
Ramana Reddy 3e1cd27943 Fix stop-at-first-match in headless mode fuzzing (#5330) 2024-07-15 16:57:12 +05:30
dependabot[bot] 0b71d983a5 chore(deps): bump github.com/projectdiscovery/dsl from 0.1.3 to 0.1.6
Bumps [github.com/projectdiscovery/dsl](https://github.com/projectdiscovery/dsl) from 0.1.3 to 0.1.6.
- [Release notes](https://github.com/projectdiscovery/dsl/releases)
- [Commits](https://github.com/projectdiscovery/dsl/compare/v0.1.3...v0.1.6)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/dsl
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-07-15 11:22:16 +00:00
Mzack9999 bc229a46ca Merge pull request #5331 from projectdiscovery/use_containsall
use `stringsutil.ContainsAll`
2024-07-15 13:21:03 +02:00
GitHub Action 49d8579662 Auto Generate Syntax Docs + JSONSchema [Mon Jul 15 10:28:25 UTC 2024] 🤖 2024-07-15 10:28:25 +00:00
Dogan Can BakirandTarun Koyalwar f080d614c3 introduce timeouts config in types.Options (#5228)
* introduce timeout variants

* update instances and add codeexectimeout

* fix test

* default to 10s

* minor

* make timeouts pluggable and rename

* remove residual code

---------

Co-authored-by: Tarun Koyalwar <[email protected]>
2024-07-15 15:57:15 +05:30
mzack9999 8f22eb596e Merge branch 'dev' into use_containsall 2024-07-15 11:00:08 +02:00
Ramana Reddy d4e81fd9e6 register goja func to check udp port (#5397)
* register goja func to check port with network param

* register goja func to check udp port
2024-07-15 12:58:30 +05:30
mzack9999 d7997e47ec trim space 2024-07-14 23:47:05 +02:00
mzack9999 cdb39d851b trim space 2024-07-14 23:46:16 +02:00
mzack9999 860507bbe9 fixing tests 2024-07-14 23:19:42 +02:00
mzack9999 2bd68993e7 fixing loader issue 2024-07-12 19:45:49 +02:00
mzack9999 3c2af0e47c fixing many data races 2024-07-12 17:23:44 +02:00
mzack ead444b88b Merge branch 'dev' into use_containsall 2024-07-12 13:05:14 +02:00
Tarun Koyalwar c9a9bd3bfc include cname in http output if available (#5389) 2024-07-10 20:43:22 +05:30
Mzack9999 1c24ceda45 adding automatic service check on query (#5291)
* adding automatic service check on query

* automatic service check
2024-07-08 17:08:29 +05:30
Ramana Reddy 5cb32a4310 Fix target loading with input-mode (#5369) 2024-07-08 16:21:11 +05:30
dependabot[bot] 42bb6d705f Merge pull request #5380 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/asnmap-1.1.1 2024-07-08 06:25:02 +00:00
dependabot[bot] ec89a23bc5 chore(deps): bump github.com/projectdiscovery/asnmap from 1.1.0 to 1.1.1
Bumps [github.com/projectdiscovery/asnmap](https://github.com/projectdiscovery/asnmap) from 1.1.0 to 1.1.1.
- [Release notes](https://github.com/projectdiscovery/asnmap/releases)
- [Changelog](https://github.com/projectdiscovery/asnmap/blob/main/.goreleaser.yml)
- [Commits](https://github.com/projectdiscovery/asnmap/compare/v1.1.0...v1.1.1)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/asnmap
  dependency-type: indirect
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-07-08 05:57:41 +00:00
Tarun Koyalwar e90554443e Merge pull request #5356 from projectdiscovery/fix-ldap-search
fix issue with ldap search func
2024-07-03 19:02:02 +05:30
Tarun Koyalwar 3ff085c5ed bump version to dev 2024-07-03 18:30:32 +05:30
Tarun Koyalwar 1e3cfd75ea fix issue with ldap search func 2024-07-03 18:26:59 +05:30
dependabot[bot] 34599eabb9 Merge pull request #5325 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/useragent-0.0.57 2024-07-01 06:54:54 +00:00
dependabot[bot] 68cac06818 chore(deps): bump github.com/projectdiscovery/useragent
Bumps [github.com/projectdiscovery/useragent](https://github.com/projectdiscovery/useragent) from 0.0.56 to 0.0.57.
- [Release notes](https://github.com/projectdiscovery/useragent/releases)
- [Commits](https://github.com/projectdiscovery/useragent/compare/v0.0.56...v0.0.57)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/useragent
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-07-01 06:25:36 +00:00
dependabot[bot] b4b106db99 Merge pull request #5342 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/retryablehttp-go-1.0.67 2024-07-01 06:24:20 +00:00
dependabot[bot] 2b89a2e1a0 chore(deps): bump github.com/projectdiscovery/retryablehttp-go
Bumps [github.com/projectdiscovery/retryablehttp-go](https://github.com/projectdiscovery/retryablehttp-go) from 1.0.66 to 1.0.67.
- [Release notes](https://github.com/projectdiscovery/retryablehttp-go/releases)
- [Commits](https://github.com/projectdiscovery/retryablehttp-go/compare/v1.0.66...v1.0.67)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/retryablehttp-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-07-01 05:56:31 +00:00
Kristinn Vikar JónssonandTarun Koyalwar 381ebba6a2 Clustering performance improvements (#5319)
* Clustering performance improvements

* IsClusterable filters out beforehand, update test to mirror that

* inverse IsClusterable
This makes much more sense

* HashMap based clustering

* furthur improvements to clustering

---------

Co-authored-by: Tarun Koyalwar <[email protected]>
2024-06-27 13:14:43 +05:30
Doğan Can Bakır c7006a9168 use stringsutil.ContainsAll 2024-06-25 12:26:18 +03:00
dependabot[bot] 87b9fbd675 Merge pull request #5329 from projectdiscovery/dependabot/go_modules/github.com/hashicorp/go-retryablehttp-0.7.7 2024-06-24 22:36:37 +00:00
dependabot[bot] 91d3b668fd chore(deps): bump github.com/hashicorp/go-retryablehttp
Bumps [github.com/hashicorp/go-retryablehttp](https://github.com/hashicorp/go-retryablehttp) from 0.7.2 to 0.7.7.
- [Changelog](https://github.com/hashicorp/go-retryablehttp/blob/main/CHANGELOG.md)
- [Commits](https://github.com/hashicorp/go-retryablehttp/compare/v0.7.2...v0.7.7)

---
updated-dependencies:
- dependency-name: github.com/hashicorp/go-retryablehttp
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-06-24 22:09:02 +00:00
dependabot[bot] 9a441c23cc Merge pull request #5324 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/retryabledns-1.0.65 2024-06-24 06:19:39 +00:00
dependabot[bot] 61029d05c3 chore(deps): bump github.com/projectdiscovery/retryabledns
Bumps [github.com/projectdiscovery/retryabledns](https://github.com/projectdiscovery/retryabledns) from 1.0.63 to 1.0.65.
- [Release notes](https://github.com/projectdiscovery/retryabledns/releases)
- [Commits](https://github.com/projectdiscovery/retryabledns/compare/v1.0.63...v1.0.65)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/retryabledns
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-06-24 05:56:07 +00:00
dependabot[bot] 94b2cb3473 Merge pull request #5323 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/retryablehttp-go-1.0.66 2024-06-24 05:55:06 +00:00
dependabot[bot] 9f35b86f56 chore(deps): bump github.com/projectdiscovery/retryablehttp-go
Bumps [github.com/projectdiscovery/retryablehttp-go](https://github.com/projectdiscovery/retryablehttp-go) from 1.0.64 to 1.0.66.
- [Release notes](https://github.com/projectdiscovery/retryablehttp-go/releases)
- [Commits](https://github.com/projectdiscovery/retryablehttp-go/compare/v1.0.64...v1.0.66)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/retryablehttp-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-06-24 05:28:13 +00:00
Douglas Danger ManleyandTarun Koyalwar e61ca0c42d Use fs.FS when explicitly given (#5312)
* Use the `templateFS` if it's there when calling `OpenFile`

* Add a new constructor

* More refactoring

* Both of my use cases are working

* Fix for legacy assumptions

* minor update: remove gologger debug stmts

---------

Co-authored-by: Tarun Koyalwar <[email protected]>
2024-06-23 01:12:01 +05:30
Mzack9999 1c51a6bef6 improving workflows (#5318)
* improving workflows

* fixing count
2024-06-22 22:42:00 +05:30
dependabot[bot] cc03b7591a Merge pull request #5300 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/utils-0.1.4 2024-06-17 11:43:11 +00:00
dependabot[bot] c16050a5fe chore(deps): bump github.com/projectdiscovery/utils
Bumps [github.com/projectdiscovery/utils](https://github.com/projectdiscovery/utils) from 0.1.4-0.20240611113448-0e2f2d33fe1c to 0.1.4.
- [Release notes](https://github.com/projectdiscovery/utils/releases)
- [Changelog](https://github.com/projectdiscovery/utils/blob/main/CHANGELOG.md)
- [Commits](https://github.com/projectdiscovery/utils/commits/v0.1.4)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/utils
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-06-17 06:54:38 +00:00
dependabot[bot] f42ff92e3e Merge pull request #5301 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/dsl-0.1.3 2024-06-17 06:53:42 +00:00
dependabot[bot] 6d87aeeeaa Merge pull request #5303 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/useragent-0.0.56 2024-06-17 06:53:36 +00:00
dependabot[bot] 20709834c2 chore(deps): bump github.com/projectdiscovery/dsl from 0.1.2 to 0.1.3
Bumps [github.com/projectdiscovery/dsl](https://github.com/projectdiscovery/dsl) from 0.1.2 to 0.1.3.
- [Release notes](https://github.com/projectdiscovery/dsl/releases)
- [Commits](https://github.com/projectdiscovery/dsl/compare/v0.1.2...v0.1.3)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/dsl
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-06-17 06:25:20 +00:00
dependabot[bot] 1359c2e7b9 chore(deps): bump github.com/projectdiscovery/useragent
Bumps [github.com/projectdiscovery/useragent](https://github.com/projectdiscovery/useragent) from 0.0.54 to 0.0.56.
- [Release notes](https://github.com/projectdiscovery/useragent/releases)
- [Commits](https://github.com/projectdiscovery/useragent/compare/v0.0.54...v0.0.56)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/useragent
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-06-17 06:25:00 +00:00
dependabot[bot] a37761d841 Merge pull request #5304 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/wappalyzergo-0.1.6 2024-06-17 06:24:13 +00:00
dependabot[bot] 9ebdd733ea Merge pull request #5302 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/goflags-0.1.56 2024-06-17 06:23:49 +00:00
dependabot[bot] d7d26ca9b5 chore(deps): bump github.com/projectdiscovery/wappalyzergo
Bumps [github.com/projectdiscovery/wappalyzergo](https://github.com/projectdiscovery/wappalyzergo) from 0.1.4 to 0.1.6.
- [Release notes](https://github.com/projectdiscovery/wappalyzergo/releases)
- [Commits](https://github.com/projectdiscovery/wappalyzergo/compare/v0.1.4...v0.1.6)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/wappalyzergo
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-06-17 05:57:14 +00:00
dependabot[bot] c175474df5 chore(deps): bump github.com/projectdiscovery/goflags
Bumps [github.com/projectdiscovery/goflags](https://github.com/projectdiscovery/goflags) from 0.1.54 to 0.1.56.
- [Release notes](https://github.com/projectdiscovery/goflags/releases)
- [Commits](https://github.com/projectdiscovery/goflags/compare/v0.1.54...v0.1.56)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/goflags
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-06-17 05:57:05 +00:00
sandeep 930f9ab02d build workflow update 2024-06-16 18:57:58 +04:00
Ice3man f8842b1f04 fix: fixed individual per tracker reporting filters (#5297)
* fix: fixed individual per tracker reporting filters

* added test case
2024-06-16 19:14:43 +05:30
sandeep b274fe5ed1 version update 2024-06-16 04:47:59 +05:30
Ramana Reddy 0eddafe2a9 Fix tempalte-id validation (#5261)
* Fix tempalte-id validation

* Add checks to mandatory fields

* misc update
2024-06-16 04:27:31 +05:30
map1e 4720d8c8ec fix: types.RequestResponse url field UnmarshalJSON bug (#5267)
* fix: types.RequestResponse url field UnmarshalJSON bug

* use UnmarshalJSON method in test

* add http unmarshal json test case
2024-06-16 04:05:08 +05:30
Dogan Can Bakir 9f1faa0a29 fix jira nil deref err (#5283) 2024-06-16 03:30:21 +05:30
Tarun Koyalwar 8b3379aa4c add team-id env input support (#5295) 2024-06-16 03:18:01 +05:30
Óscar Marín baf7e36658 issue 5212 timeout added to trace and error logs using ts switch (#5292) 2024-06-14 23:54:52 +05:30
Mzack9999 51b1d7cfe4 Merge pull request #5187 from projectdiscovery/feat-4808-planner
Fixing issues with multi-thread execution
2024-06-13 17:51:17 +02:00
Mzack9999 1e85e70d99 removed as recommended 2024-06-13 17:24:07 +02:00
Mzack9999 52975373ff Merge branch 'dev' into feat-4808-planner 2024-06-13 17:19:43 +02:00
dependabot[bot] cfd7b6f455 Merge pull request #5286 from projectdiscovery/dependabot/go_modules/github.com/Azure/azure-sdk-for-go/sdk/azidentity-1.6.0 2024-06-12 00:36:43 +00:00
dependabot[bot] 27eedc0ac6 chore(deps): bump github.com/Azure/azure-sdk-for-go/sdk/azidentity
Bumps [github.com/Azure/azure-sdk-for-go/sdk/azidentity](https://github.com/Azure/azure-sdk-for-go) from 1.3.0 to 1.6.0.
- [Release notes](https://github.com/Azure/azure-sdk-for-go/releases)
- [Changelog](https://github.com/Azure/azure-sdk-for-go/blob/main/documentation/release.md)
- [Commits](https://github.com/Azure/azure-sdk-for-go/compare/sdk/azcore/v1.3.0...sdk/azcore/v1.6.0)

---
updated-dependencies:
- dependency-name: github.com/Azure/azure-sdk-for-go/sdk/azidentity
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-06-11 23:37:17 +00:00
dependabot[bot] e29ceeecc4 Merge pull request #5276 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/ratelimit-0.0.45 2024-06-11 23:35:39 +00:00
dependabot[bot] 5fd3f0f65d chore(deps): bump github.com/projectdiscovery/ratelimit
Bumps [github.com/projectdiscovery/ratelimit](https://github.com/projectdiscovery/ratelimit) from 0.0.43 to 0.0.45.
- [Release notes](https://github.com/projectdiscovery/ratelimit/releases)
- [Commits](https://github.com/projectdiscovery/ratelimit/compare/v0.0.43...v0.0.45)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/ratelimit
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-06-11 23:03:10 +00:00
Mzack9999 8978ebafa2 Merge pull request #5275 from projectdiscovery/bugfix-1241-wtf
Fixing slow elab
2024-06-12 01:01:09 +02:00
mzack 61f391ee8a . 2024-06-12 00:34:45 +02:00
Mzack9999 ac0107c242 revert 2024-06-11 14:58:58 +02:00
Mzack9999 bc16ae85ae . 2024-06-11 13:39:21 +02:00
Mzack9999 9f1414e3e8 . 2024-06-11 13:38:28 +02:00
Mzack9999 26c84e3747 Merge branch 'dev' into bugfix-1241-wtf 2024-06-11 12:34:41 +02:00
Mzack9999 e13c7cc967 testing fastdialer native 2024-06-11 12:21:43 +02:00
sandeep 9415e13f48 Merge branch 'dev' of https://github.com/projectdiscovery/nuclei into dev 2024-06-11 04:48:52 +05:30
sandeep 0b6ad3597f readme update 2024-06-11 04:48:05 +05:30
GitHub Action 1c355c54ad Auto Generate Syntax Docs + JSONSchema [Mon Jun 10 23:14:52 UTC 2024] 🤖 2024-06-10 23:14:52 +00:00
Ice3man 9f3f7fce06 Fuzzing additions & enhancements (#5139)
* feat: added fuzzing output enhancements

* changes as requested

* misc

* feat: added dfp flag to display fuzz points + misc additions

* feat: added support for fuzzing nested path segments

* feat: added parts to fuzzing requests

* feat: added tracking for parameter occurence frequency in fuzzing

* added cli flag for fuzz frequency

* fixed broken tests

* fixed path based sqli integration test

* feat: added configurable fuzzing aggression level for payloads

* fixed failing test
2024-06-11 04:43:46 +05:30
dependabot[bot] cd40a6aeda Merge pull request #5277 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/fastdialer-0.1.3 2024-06-10 07:51:37 +00:00
dependabot[bot] df57f0a6e3 chore(deps): bump github.com/projectdiscovery/fastdialer
Bumps [github.com/projectdiscovery/fastdialer](https://github.com/projectdiscovery/fastdialer) from 0.1.0 to 0.1.3.
- [Release notes](https://github.com/projectdiscovery/fastdialer/releases)
- [Commits](https://github.com/projectdiscovery/fastdialer/compare/v0.1.0...v0.1.3)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/fastdialer
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-06-10 07:24:01 +00:00
dependabot[bot] 61da7f95a0 Merge pull request #5266 from projectdiscovery/dependabot/go_modules/github.com/projectdiscovery/interactsh-1.2.0 2024-06-10 07:21:14 +00:00
dependabot[bot] aced7ae42a chore(deps): bump github.com/projectdiscovery/interactsh
Bumps [github.com/projectdiscovery/interactsh](https://github.com/projectdiscovery/interactsh) from 1.1.9 to 1.2.0.
- [Release notes](https://github.com/projectdiscovery/interactsh/releases)
- [Changelog](https://github.com/projectdiscovery/interactsh/blob/main/.goreleaser.yml)
- [Commits](https://github.com/projectdiscovery/interactsh/compare/v1.1.9...v1.2.0)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/interactsh
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-06-10 06:53:41 +00:00
dependabot[bot] eb4f614528 Merge pull request #5280 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/dsl-0.1.2 2024-06-10 06:51:34 +00:00
dependabot[bot] 4a6f55c4a2 Merge pull request #5279 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/wappalyzergo-0.1.4 2024-06-10 06:51:20 +00:00
dependabot[bot] 86dabe1a98 chore(deps): bump github.com/projectdiscovery/dsl from 0.1.0 to 0.1.2
Bumps [github.com/projectdiscovery/dsl](https://github.com/projectdiscovery/dsl) from 0.1.0 to 0.1.2.
- [Release notes](https://github.com/projectdiscovery/dsl/releases)
- [Commits](https://github.com/projectdiscovery/dsl/compare/v0.1.0...v0.1.2)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/dsl
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-06-10 06:24:46 +00:00
dependabot[bot] 56e9b7fcbc chore(deps): bump github.com/projectdiscovery/wappalyzergo
Bumps [github.com/projectdiscovery/wappalyzergo](https://github.com/projectdiscovery/wappalyzergo) from 0.1.1 to 0.1.4.
- [Release notes](https://github.com/projectdiscovery/wappalyzergo/releases)
- [Commits](https://github.com/projectdiscovery/wappalyzergo/compare/v0.1.1...v0.1.4)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/wappalyzergo
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-06-10 06:24:45 +00:00
dependabot[bot] 1e538c726c Merge pull request #5278 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/retryabledns-1.0.63 2024-06-10 06:23:38 +00:00
dependabot[bot] f0b34f94cd chore(deps): bump github.com/projectdiscovery/retryabledns
Bumps [github.com/projectdiscovery/retryabledns](https://github.com/projectdiscovery/retryabledns) from 1.0.60 to 1.0.63.
- [Release notes](https://github.com/projectdiscovery/retryabledns/releases)
- [Commits](https://github.com/projectdiscovery/retryabledns/compare/v1.0.60...v1.0.63)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/retryabledns
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-06-10 05:56:53 +00:00
mzack fd2311d034 fixing slow elab 2024-06-10 03:23:00 +02:00
Ikko Eltociear Ashimine 04a630266e docs: add Japanese README (#5259)
* docs: add Japanese README

* docs: update README.md
2024-06-08 17:36:01 +05:30
dependabot[bot] 5428d059f5 Merge pull request #5248 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/useragent-0.0.54 2024-06-03 06:48:17 +00:00
dependabot[bot] b5e40cf777 Merge pull request #5250 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/hmap-0.0.45 2024-06-03 06:47:11 +00:00
dependabot[bot] bcd10b41e5 chore(deps): bump github.com/projectdiscovery/useragent
Bumps [github.com/projectdiscovery/useragent](https://github.com/projectdiscovery/useragent) from 0.0.52 to 0.0.54.
- [Release notes](https://github.com/projectdiscovery/useragent/releases)
- [Commits](https://github.com/projectdiscovery/useragent/compare/v0.0.52...v0.0.54)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/useragent
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-06-03 06:22:45 +00:00
dependabot[bot] 464aa8de82 chore(deps): bump github.com/projectdiscovery/hmap from 0.0.44 to 0.0.45
Bumps [github.com/projectdiscovery/hmap](https://github.com/projectdiscovery/hmap) from 0.0.44 to 0.0.45.
- [Release notes](https://github.com/projectdiscovery/hmap/releases)
- [Commits](https://github.com/projectdiscovery/hmap/compare/v0.0.44...v0.0.45)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/hmap
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-06-03 06:20:39 +00:00
dependabot[bot] a0bedbcb16 Merge pull request #5249 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/httpx-1.6.3 2024-06-03 06:19:33 +00:00
dependabot[bot] 425b7d0cb5 chore(deps): bump github.com/projectdiscovery/httpx from 1.6.1 to 1.6.3
Bumps [github.com/projectdiscovery/httpx](https://github.com/projectdiscovery/httpx) from 1.6.1 to 1.6.3.
- [Release notes](https://github.com/projectdiscovery/httpx/releases)
- [Changelog](https://github.com/projectdiscovery/httpx/blob/main/.goreleaser.yml)
- [Commits](https://github.com/projectdiscovery/httpx/compare/v1.6.1...v1.6.3)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/httpx
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-06-03 05:55:12 +00:00
Tarun Koyalwar 8720e4f863 fix panic: ref #5217 (#5230) 2024-06-02 17:11:56 +05:30
Jorge Machado f8a4cf50c6 Add Spanish translation of README (#5242) 2024-06-02 17:11:21 +05:30
Douglas Danger ManleyandTarun Koyalwar 8011012c42 Fix ExecuteCallbackWithCtx to use the context that was provided (#5236)
* Fix `ExecuteCallbackWithCtx` to use the context that was provided

This updates `ExecuteCallbackWithCtx` to use the context that was
provided.

* remove more hardcoded context

---------

Co-authored-by: Tarun Koyalwar <[email protected]>
2024-05-30 16:04:15 +05:30
dependabot[bot] 4ae0b39f53 Merge pull request #5224 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/rawhttp-0.1.51 2024-05-27 06:46:51 +00:00
dependabot[bot] a2a85fb002 chore(deps): bump github.com/projectdiscovery/rawhttp
Bumps [github.com/projectdiscovery/rawhttp](https://github.com/projectdiscovery/rawhttp) from 0.1.49 to 0.1.51.
- [Release notes](https://github.com/projectdiscovery/rawhttp/releases)
- [Commits](https://github.com/projectdiscovery/rawhttp/compare/v0.1.49...v0.1.51)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/rawhttp
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-05-27 06:20:04 +00:00
dependabot[bot] b8ea0f9800 Merge pull request #5220 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/hmap-0.0.44 2024-05-27 06:18:53 +00:00
dependabot[bot] 2a40eda45e Merge pull request #5221 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/ratelimit-0.0.43 2024-05-27 06:14:48 +00:00
dependabot[bot] 7f0f8ffed7 Merge pull request #5223 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/goflags-0.1.54 2024-05-27 06:13:36 +00:00
dependabot[bot] 75d0af1aea chore(deps): bump github.com/projectdiscovery/goflags
Bumps [github.com/projectdiscovery/goflags](https://github.com/projectdiscovery/goflags) from 0.1.53 to 0.1.54.
- [Release notes](https://github.com/projectdiscovery/goflags/releases)
- [Commits](https://github.com/projectdiscovery/goflags/compare/v0.1.53...v0.1.54)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/goflags
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-05-27 05:49:18 +00:00
dependabot[bot] 527f18a6e6 chore(deps): bump github.com/projectdiscovery/ratelimit
Bumps [github.com/projectdiscovery/ratelimit](https://github.com/projectdiscovery/ratelimit) from 0.0.42 to 0.0.43.
- [Release notes](https://github.com/projectdiscovery/ratelimit/releases)
- [Commits](https://github.com/projectdiscovery/ratelimit/compare/v0.0.42...v0.0.43)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/ratelimit
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-05-27 05:49:07 +00:00
dependabot[bot] 281b24ed50 chore(deps): bump github.com/projectdiscovery/hmap from 0.0.43 to 0.0.44
Bumps [github.com/projectdiscovery/hmap](https://github.com/projectdiscovery/hmap) from 0.0.43 to 0.0.44.
- [Release notes](https://github.com/projectdiscovery/hmap/releases)
- [Commits](https://github.com/projectdiscovery/hmap/compare/v0.0.43...v0.0.44)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/hmap
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-05-27 05:49:01 +00:00
mzack 3307517a6c conflict 2024-05-25 02:52:55 +02:00
mzack 46e2a54bfe Merge branch 'dev' into feat-4808-planner 2024-05-25 02:45:54 +02:00
sandeep 718aca6e0e go mod update 2024-05-25 04:03:25 +05:30
sandeep f43588dcd2 version update 2024-05-25 02:52:49 +05:30
dependabot[bot] b4f0bd6a2f Merge pull request #5200 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/dsl-0.0.57 2024-05-24 19:25:26 +00:00
dependabot[bot] 8e0bb8fe34 chore(deps): bump github.com/projectdiscovery/dsl from 0.0.56 to 0.0.57
Bumps [github.com/projectdiscovery/dsl](https://github.com/projectdiscovery/dsl) from 0.0.56 to 0.0.57.
- [Release notes](https://github.com/projectdiscovery/dsl/releases)
- [Commits](https://github.com/projectdiscovery/dsl/compare/v0.0.56...v0.0.57)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/dsl
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-05-24 19:00:12 +00:00
Tarun KoyalwarandSandeep Singh 23bd0336fb multiple bug fixes + performance improvements (#5148)
* prototype errkit

* complete errkit implementation

* add cause to all timeouts

* fix request timeout annotation @timeout

* increase responseHeaderTimeout to 8 for stability

* rawhttp error related improvements

* feat: add port status caching

* add port status caching to http

* migrate to new utils/errkit

* remote dialinterface + error cause

* debug dir support using .gitignore debug-*

* make nuclei easy to debug

* debug dir update .gitignore

* temp change (to revert)

* Revert "temp change (to revert)"

This reverts commit d3131f7777.

* use available context instead of new one

* bump fastdialer

* fix hosterrorscache + misc improvements

* add 'address' field in error log

* fix js vague errors + pgwrap driver

* fix max host error + misc updates

* update tests as per changes

* fix request annotation context

* remove closed dialer reference

* fix sdk panic issue

* bump retryablehttp-go,utils,fastdialer

---------

Co-authored-by: Sandeep Singh <[email protected]>
2024-05-25 00:29:04 +05:30
Mzack9999 4fc16e36e1 Merge branch 'dev' into feat-4808-planner 2024-05-23 09:08:53 +02:00
mzack9999 46e4810efb Fixing nil ptr on error 2024-05-22 14:54:01 +02:00
Mzack9999 f6332583b7 making ssl errors non fatal (#5203)
* making ssl errors non fatal

* adding test
2024-05-21 21:42:01 +05:30
dependabot[bot] 7a4969d2a2 Merge pull request #5197 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/ratelimit-0.0.42 2024-05-20 05:58:58 +00:00
dependabot[bot] f12343bf35 Merge pull request #5196 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/fastdialer-0.0.72 2024-05-20 05:58:20 +00:00
dependabot[bot] f266542dd4 chore(deps): bump github.com/projectdiscovery/fastdialer
Bumps [github.com/projectdiscovery/fastdialer](https://github.com/projectdiscovery/fastdialer) from 0.0.71 to 0.0.72.
- [Release notes](https://github.com/projectdiscovery/fastdialer/releases)
- [Commits](https://github.com/projectdiscovery/fastdialer/compare/v0.0.71...v0.0.72)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/fastdialer
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-05-20 05:33:16 +00:00
dependabot[bot] 8cffeecd4f chore(deps): bump github.com/projectdiscovery/ratelimit
Bumps [github.com/projectdiscovery/ratelimit](https://github.com/projectdiscovery/ratelimit) from 0.0.40 to 0.0.42.
- [Release notes](https://github.com/projectdiscovery/ratelimit/releases)
- [Commits](https://github.com/projectdiscovery/ratelimit/compare/v0.0.40...v0.0.42)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/ratelimit
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-05-20 05:33:04 +00:00
dependabot[bot] 9dde504a2d Merge pull request #5198 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/utils-0.0.94 2024-05-20 05:31:57 +00:00
dependabot[bot] 56dcda2116 Merge pull request #5199 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/rawhttp-0.1.50 2024-05-20 05:31:05 +00:00
dependabot[bot] e92746ddcd chore(deps): bump github.com/projectdiscovery/rawhttp
Bumps [github.com/projectdiscovery/rawhttp](https://github.com/projectdiscovery/rawhttp) from 0.1.49 to 0.1.50.
- [Release notes](https://github.com/projectdiscovery/rawhttp/releases)
- [Commits](https://github.com/projectdiscovery/rawhttp/compare/v0.1.49...v0.1.50)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/rawhttp
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-05-20 05:06:44 +00:00
dependabot[bot] 48ed1dde38 chore(deps): bump github.com/projectdiscovery/utils
Bumps [github.com/projectdiscovery/utils](https://github.com/projectdiscovery/utils) from 0.0.93 to 0.0.94.
- [Release notes](https://github.com/projectdiscovery/utils/releases)
- [Changelog](https://github.com/projectdiscovery/utils/blob/main/CHANGELOG.md)
- [Commits](https://github.com/projectdiscovery/utils/compare/v0.0.93...v0.0.94)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/utils
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-05-20 05:06:38 +00:00
Mzack9999 9cc335a34c first interface ipv4 address (#5186) 2024-05-20 02:42:21 +05:30
dependabot[bot] 5d30eb5d96 Merge pull request #5195 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/useragent-0.0.52 2024-05-19 19:46:06 +00:00
dependabot[bot] bfddce4fbb chore(deps): bump github.com/projectdiscovery/useragent
Bumps [github.com/projectdiscovery/useragent](https://github.com/projectdiscovery/useragent) from 0.0.49 to 0.0.52.
- [Release notes](https://github.com/projectdiscovery/useragent/releases)
- [Commits](https://github.com/projectdiscovery/useragent/compare/v0.0.49...v0.0.52)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/useragent
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-05-19 19:19:49 +00:00
Ice3manandsandeep 4170e1cbb8 more goroutine leak fixes to nuclei (#5188)
* more goroutine leak fixes to nuclei

* run only dns templates for test

* updated httpx to dev

* dep update

---------

Co-authored-by: sandeep <[email protected]>
2024-05-20 00:48:40 +05:30
mzack9999 f1b739f2a5 fixing race 2024-05-16 14:57:33 +02:00
mzack9999 06b0219839 lint 2024-05-16 13:48:28 +02:00
mzack9999 3d5605530b race 2024-05-16 13:42:40 +02:00
Mzack9999 aaf5d262b2 parallelize template loading 2024-05-16 11:32:27 +02:00
Mzack9999 b820fb9464 fixing shared cleanup 2024-05-15 21:43:43 +02:00
Mzack9999 47ca8fe842 fix non gc-able dialer
closes #5165
2024-05-15 21:25:40 +02:00
Mzack9999 9adfc531c7 uniforming sizes with utils 2024-05-15 15:34:59 +02:00
dependabot[bot] 4874729809 Merge pull request #5175 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/fastdialer-0.0.71 2024-05-13 06:57:06 +00:00
dependabot[bot] 16ce116fed chore(deps): bump github.com/projectdiscovery/fastdialer
Bumps [github.com/projectdiscovery/fastdialer](https://github.com/projectdiscovery/fastdialer) from 0.0.69 to 0.0.71.
- [Release notes](https://github.com/projectdiscovery/fastdialer/releases)
- [Commits](https://github.com/projectdiscovery/fastdialer/compare/v0.0.69...v0.0.71)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/fastdialer
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-05-13 06:31:25 +00:00
dependabot[bot] bdeb66b2ad Merge pull request #5176 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/retryablehttp-go-1.0.60 2024-05-13 06:30:16 +00:00
dependabot[bot] 59e4372539 Merge pull request #5173 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/wappalyzergo-0.0.122 2024-05-13 06:07:03 +00:00
dependabot[bot] c2c0f0672f chore(deps): bump github.com/projectdiscovery/retryablehttp-go
Bumps [github.com/projectdiscovery/retryablehttp-go](https://github.com/projectdiscovery/retryablehttp-go) from 1.0.58 to 1.0.60.
- [Release notes](https://github.com/projectdiscovery/retryablehttp-go/releases)
- [Commits](https://github.com/projectdiscovery/retryablehttp-go/compare/v1.0.58...v1.0.60)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/retryablehttp-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-05-13 06:06:04 +00:00
dependabot[bot] c9f3689112 Merge pull request #5172 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/retryabledns-1.0.59 2024-05-13 06:04:58 +00:00
dependabot[bot] 2800cb6744 chore(deps): bump github.com/projectdiscovery/wappalyzergo
Bumps [github.com/projectdiscovery/wappalyzergo](https://github.com/projectdiscovery/wappalyzergo) from 0.0.120 to 0.0.122.
- [Release notes](https://github.com/projectdiscovery/wappalyzergo/releases)
- [Commits](https://github.com/projectdiscovery/wappalyzergo/compare/v0.0.120...v0.0.122)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/wappalyzergo
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-05-13 05:41:05 +00:00
dependabot[bot] af9cbec832 chore(deps): bump github.com/projectdiscovery/retryabledns
Bumps [github.com/projectdiscovery/retryabledns](https://github.com/projectdiscovery/retryabledns) from 1.0.58 to 1.0.59.
- [Release notes](https://github.com/projectdiscovery/retryabledns/releases)
- [Commits](https://github.com/projectdiscovery/retryabledns/compare/v1.0.58...v1.0.59)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/retryabledns
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-05-13 05:40:59 +00:00
sandeep 43cacf12e3 misc description update 2024-05-11 00:55:05 +05:30
sandeep 2d68ac2063 version update 2024-05-11 00:47:35 +05:30
Tarun Koyalwar d6424ea5d0 pdcp result upload: bug fix + (optional) scan name support using -sname flag (#5155)
* add default template severity and error when validating

* ignore workflows when validating severity

* add scan name support in pdcp result upload

* scan upload: fix missing name query param

* make profile-loader integration tests generic

* add scan-id validation

* ignore invalid scan id's
2024-05-11 00:44:14 +05:30
Ramana Reddy 0f983d8204 Add support for multiple uncover queries (#5132)
* Add support for multiple uncover queries

* Fix issue with multiple engines
2024-05-10 22:16:01 +05:30
Ice3man 6067b78bcf feat: added MarshalYAML to severities array + issue tracker options fix (#5166)
* feat: added MarshalYAML to severities array

* fix issue with creation of reports
2024-05-10 21:59:03 +05:30
Mzack9999 fed10a11e8 Fix race condition in host spray (#5168) 2024-05-10 21:56:56 +05:30
dependabot[bot] eb73228a02 chore(deps): bump github.com/projectdiscovery/useragent (#5146)
Bumps [github.com/projectdiscovery/useragent](https://github.com/projectdiscovery/useragent) from 0.0.48 to 0.0.49.
- [Release notes](https://github.com/projectdiscovery/useragent/releases)
- [Commits](https://github.com/projectdiscovery/useragent/compare/v0.0.48...v0.0.49)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/useragent
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-07 01:39:27 +05:30
Tarun Koyalwar 098392b604 add context support in sdk (#5154) 2024-05-07 01:31:33 +05:30
Dogan Can BakirandRamana Reddy 907f5a0538 fix -u input read (#5147)
* fix `-u` input read

* Fix tests

---------

Co-authored-by: Ramana Reddy <[email protected]>
2024-05-06 16:48:33 +05:30
673404a80d Add list template tags command (#4798)
* add list template tags command

* update readme

* misc changes to implementation

* misc

* misc update

---------

Co-authored-by: Sandeep Singh <[email protected]>
Co-authored-by: Ice3man <[email protected]>
Co-authored-by: sandeep <[email protected]>
2024-05-05 00:41:39 +05:30
sandeep 4dc9cae4ba version update 2024-05-05 00:36:51 +05:30
Ramana Reddy 902eb78d34 Add profile option to load template profile (#5125)
* Add profile  option to load template profile

* Misc update

* Add profile-list option

* Misc update

* Add tests
2024-05-04 21:53:50 +05:30
Ice3man 9784ca860a feat: added fuzzing output enhancements (#5126)
* feat: added fuzzing output enhancements

* changes as requested

* misc
2024-05-03 18:46:28 +05:30
dependabot[bot] 87af2a043e Merge pull request #5117 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/goflags-0.1.50 2024-05-02 10:26:21 +00:00
dependabot[bot] e673bc0281 chore(deps): bump github.com/projectdiscovery/goflags
Bumps [github.com/projectdiscovery/goflags](https://github.com/projectdiscovery/goflags) from 0.1.49 to 0.1.50.
- [Release notes](https://github.com/projectdiscovery/goflags/releases)
- [Commits](https://github.com/projectdiscovery/goflags/compare/v0.1.49...v0.1.50)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/goflags
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-05-02 10:02:01 +00:00
dependabot[bot] 2a54760a48 Merge pull request #5114 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/useragent-0.0.48 2024-04-30 19:50:58 +00:00
dependabot[bot] 746b809445 chore(deps): bump github.com/projectdiscovery/useragent
Bumps [github.com/projectdiscovery/useragent](https://github.com/projectdiscovery/useragent) from 0.0.47 to 0.0.48.
- [Release notes](https://github.com/projectdiscovery/useragent/releases)
- [Commits](https://github.com/projectdiscovery/useragent/compare/v0.0.47...v0.0.48)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/useragent
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-04-30 19:26:36 +00:00
dependabot[bot] eeec9979f8 Merge pull request #5115 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/wappalyzergo-0.0.120 2024-04-30 19:24:44 +00:00
dependabot[bot] fca5d98109 chore(deps): bump github.com/projectdiscovery/wappalyzergo
Bumps [github.com/projectdiscovery/wappalyzergo](https://github.com/projectdiscovery/wappalyzergo) from 0.0.116 to 0.0.120.
- [Release notes](https://github.com/projectdiscovery/wappalyzergo/releases)
- [Commits](https://github.com/projectdiscovery/wappalyzergo/compare/v0.0.116...v0.0.120)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/wappalyzergo
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-04-30 18:59:17 +00:00
3e54ca54b0 feat: fix utils and add goroutine leak unit tests (#5112)
* feat: fixed leak

* add go leak unit test in sdk

* added goleak unit tests

* bugfix: add random user agents to fuzzing requests

* misc

* misc

* fix lint + use utils pr + misc

* fix ratelimit memleak in sdk

* close protocolstate shared resources in nuclei sdk/lib

* add missing close references

* ignore read/write loop of intransit connections

* close unnecessary idle conns

* add ignore method

* using fixed utils

* dep update

---------

Co-authored-by: Ice3man <[email protected]>
Co-authored-by: mzack <[email protected]>
Co-authored-by: sandeep <[email protected]>
2024-05-01 00:28:11 +05:30
dependabot[bot] 94335a7771 Merge pull request #5116 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/ratelimit-0.0.39 2024-04-29 06:26:43 +00:00
dependabot[bot] 0214d430f9 chore(deps): bump github.com/projectdiscovery/ratelimit
Bumps [github.com/projectdiscovery/ratelimit](https://github.com/projectdiscovery/ratelimit) from 0.0.38 to 0.0.39.
- [Release notes](https://github.com/projectdiscovery/ratelimit/releases)
- [Commits](https://github.com/projectdiscovery/ratelimit/compare/v0.0.38...v0.0.39)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/ratelimit
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-04-29 06:01:14 +00:00
dependabot[bot] a0ef624e83 Merge pull request #5118 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/rawhttp-0.1.47 2024-04-29 06:00:14 +00:00
dependabot[bot] 4565547e54 chore(deps): bump github.com/projectdiscovery/rawhttp
Bumps [github.com/projectdiscovery/rawhttp](https://github.com/projectdiscovery/rawhttp) from 0.1.45 to 0.1.47.
- [Release notes](https://github.com/projectdiscovery/rawhttp/releases)
- [Commits](https://github.com/projectdiscovery/rawhttp/compare/v0.1.45...v0.1.47)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/rawhttp
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-04-29 05:35:17 +00:00
Ramana Reddy 2357153fcd Fix failing test (#5067) 2024-04-28 01:15:57 +05:30
Anna Smith e96fdf2e40 chore: fix function names in comment (#5110) 2024-04-27 18:40:33 +05:30
Tarun Koyalwar 7ce1b3e43d flow: fix empty template.xxx in flow (#5106) 2024-04-25 16:55:48 +05:30
sandeep 295f45807e version update 2024-04-25 16:29:52 +05:30
Dogan Can BakirandTarun Koyalwar c8cda14e41 remove default val in CLI and increase MaxBodyRead to 10mb (#5100)
Co-authored-by: Tarun Koyalwar <[email protected]>
2024-04-25 16:28:37 +05:30
Ice3manandTarun Koyalwar 0b82e8b7aa feat: added support for context cancellation to engine (#5096)
* feat: added support for context cancellation to engine

* misc

* feat: added contexts everywhere

* misc

* misc

* use granular http timeouts and increase http timeout to 30s using multiplier

* track response header timeout in mhe

* update responseHeaderTimeout to 5sec

* skip failing windows test

---------

Co-authored-by: Tarun Koyalwar <[email protected]>
2024-04-25 15:37:56 +05:30
Tarun Koyalwarandsandeep 3dfcec0a36 missing mhe check in http payloads (#5099)
* go mod tidy

* fix spm missing hosterrorcheck + improvements

---------

Co-authored-by: sandeep <[email protected]>
2024-04-24 19:34:13 +05:30
Dogan Can Bakir cfe6f5da58 fix tests (#5092) 2024-04-24 18:49:39 +05:30
Ramana Reddy e450dee03d Preserve reference links as case-sensitive while unmarshalling (#5098) 2024-04-24 18:44:59 +05:30
Dogan Can Bakir 21aec3062a update utils (#5089) 2024-04-24 16:33:06 +05:30
dependabot[bot] d85267df31 chore(deps): bump github.com/projectdiscovery/mapcidr (#5076)
Bumps [github.com/projectdiscovery/mapcidr](https://github.com/projectdiscovery/mapcidr) from 1.1.16 to 1.1.34.
- [Release notes](https://github.com/projectdiscovery/mapcidr/releases)
- [Changelog](https://github.com/projectdiscovery/mapcidr/blob/main/.goreleaser.yml)
- [Commits](https://github.com/projectdiscovery/mapcidr/compare/v1.1.16...v1.1.34)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/mapcidr
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-24 13:32:18 +05:30
Mzack9999 cbe7322019 Exposing embedded api for settings control in CLI modality (#5030)
* exposing settings api

* adding probe concurrency

* adding js pool size control

* adding json tags
2024-04-24 13:06:04 +05:30
Tarun KoyalwarandRamana Reddy 515f7c12bb fix go install failing (#5083)
* Fix panic with fuzz template

* Fix multiple mode in fuzzing

* Add test

* remove fork: use official go-echarts

* bump lint action to v4

---------

Co-authored-by: Ramana Reddy <[email protected]>
2024-04-24 13:05:40 +05:30
Dogan Can BakirandTarun Koyalwar 8676cb6daf add response read timeout flag (#4944)
* add response read timeout flag

* fix test

* bump utils

* fix network tests

* fix incorrect unit of response-read-timeout unit

---------

Co-authored-by: Tarun Koyalwar <[email protected]>
2024-04-24 13:05:05 +05:30
Dogan Can Bakir e480d131f1 add query param (#4894)
* include params

* add query var

* override params for base url var
2024-04-23 19:17:26 +05:30
scottdharvey 4b9c3b8d16 Feat 5059 (#5060)
* change catalog

* add usesuppliedcatalog option

* add catalog nil check

* Update config.go
2024-04-23 19:11:12 +05:30
Dogan Can Bakir ea3705eb64 fix openapi import nil deref (#5080) 2024-04-23 16:56:33 +05:30
Dogan Can Bakir 465894df15 disable thread count warning upon validate (#5078) 2024-04-23 16:04:52 +05:30
Ramana Reddy 61e9be530f Fix: skip-variables-check option in self-contained templates (#5053)
* fix: skip-variables-check option in self-contained templates

* Update build workflow envs
2024-04-23 16:04:32 +05:30
dependabot[bot] 5dacb255ac chore(deps): bump github.com/projectdiscovery/useragent (#5075)
Bumps [github.com/projectdiscovery/useragent](https://github.com/projectdiscovery/useragent) from 0.0.40 to 0.0.47.
- [Release notes](https://github.com/projectdiscovery/useragent/releases)
- [Commits](https://github.com/projectdiscovery/useragent/compare/v0.0.40...v0.0.47)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/useragent
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-23 14:41:46 +05:30
dependabot[bot] 2fc1be213a chore(deps): bump github.com/projectdiscovery/ratelimit (#5077)
Bumps [github.com/projectdiscovery/ratelimit](https://github.com/projectdiscovery/ratelimit) from 0.0.35 to 0.0.38.
- [Release notes](https://github.com/projectdiscovery/ratelimit/releases)
- [Commits](https://github.com/projectdiscovery/ratelimit/compare/v0.0.35...v0.0.38)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/ratelimit
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-23 13:42:19 +05:30
dependabot[bot] 60b9d4db4b chore(deps): bump github.com/projectdiscovery/goflags (#5074)
Bumps [github.com/projectdiscovery/goflags](https://github.com/projectdiscovery/goflags) from 0.1.48 to 0.1.49.
- [Release notes](https://github.com/projectdiscovery/goflags/releases)
- [Commits](https://github.com/projectdiscovery/goflags/compare/v0.1.48...v0.1.49)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/goflags
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-23 13:41:55 +05:30
dependabot[bot] 6cd0d05174 chore(deps): bump github.com/projectdiscovery/retryablehttp-go (#5073)
Bumps [github.com/projectdiscovery/retryablehttp-go](https://github.com/projectdiscovery/retryablehttp-go) from 1.0.55 to 1.0.57.
- [Release notes](https://github.com/projectdiscovery/retryablehttp-go/releases)
- [Commits](https://github.com/projectdiscovery/retryablehttp-go/compare/v1.0.55...v1.0.57)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/retryablehttp-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-23 13:41:47 +05:30
Ramana Reddy bf0cae3a10 Fix panic with fuzz template (#5068)
* Fix panic with fuzz template

* Fix multiple mode in fuzzing

* Add test
2024-04-23 13:39:35 +05:30
Ramana ReddyandTarun Koyalwar 66da73c1b1 Fix panic err using flow templates with workflow (#5064)
* Fix panic err using flow templates with workflows

* Misc update

* skip test if pdcp keys are not present

---------

Co-authored-by: Tarun Koyalwar <[email protected]>
2024-04-18 17:43:46 +05:30
Ice3man 3a3db67248 feat: katana jsonl input format not working fix (#5063) 2024-04-18 16:49:28 +05:30
Ramana Reddy a4ba5cd1cb Fix panic with template validation (#5065) 2024-04-18 15:06:15 +05:30
4shen0ne e432e4a4c2 Fix typos (#5038)
* Fix typos

- Add a quantifier to make the description unambiguous
- Add a missing verb

* Fix href of FAQs
2024-04-16 21:42:44 +05:30
lvyaoting 84582183dc chore: fix function names in comment (#5008)
Signed-off-by: lvyaoting <[email protected]>
2024-04-16 16:57:51 +05:30
Tarun Koyalwar ea2e13a4aa nuclei 'stats' build : scan events + chart utils (#5032)
* prototype new scan events

* scan-event: improvements + conditional build

* add scan charts server: make scan-charts

* scan-charts: bug fix
2024-04-16 16:57:32 +05:30
Levente Kováts bec7cb273a add context vars in code and multi (#5051)
make the extracted variables available in subsequence templates when executing in a workflow

fix projectdiscovery/nuclei#4797
2024-04-16 16:57:07 +05:30
guangwu 431d3fa2d9 fix: close res body (#5025) 2024-04-16 14:53:49 +05:30
Mzack9999 d576db3893 Merge pull request #5035 from projectdiscovery/bugfix-4947-internal-resolvers
Fixing internal resolver override
2024-04-15 17:02:09 +01:00
GitHub Action f2c0b4b443 Auto Generate Syntax Docs + JSONSchema [Mon Apr 15 14:44:52 UTC 2024] 🤖 2024-04-15 14:44:52 +00:00
Mzack9999 998a25d744 Merge pull request #5034 from projectdiscovery/feat-4948-dns-srv
adding dns srv type
2024-04-15 15:43:44 +01:00
dependabot[bot] 373a598e93 Merge pull request #5041 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/dsl-0.0.52 2024-04-15 06:38:50 +00:00
dependabot[bot] 17f0ca2576 Merge pull request #5040 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/rawhttp-0.1.45 2024-04-15 06:26:10 +00:00
dependabot[bot] f876e3290b chore(deps): bump github.com/projectdiscovery/dsl from 0.0.51 to 0.0.52
Bumps [github.com/projectdiscovery/dsl](https://github.com/projectdiscovery/dsl) from 0.0.51 to 0.0.52.
- [Release notes](https://github.com/projectdiscovery/dsl/releases)
- [Commits](https://github.com/projectdiscovery/dsl/compare/v0.0.51...v0.0.52)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/dsl
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-04-15 06:09:00 +00:00
dependabot[bot] 480968fd78 Merge pull request #5042 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/goflags-0.1.48 2024-04-15 06:06:56 +00:00
dependabot[bot] 3b51a77bc7 chore(deps): bump github.com/projectdiscovery/rawhttp
Bumps [github.com/projectdiscovery/rawhttp](https://github.com/projectdiscovery/rawhttp) from 0.1.44 to 0.1.45.
- [Release notes](https://github.com/projectdiscovery/rawhttp/releases)
- [Commits](https://github.com/projectdiscovery/rawhttp/compare/v0.1.44...v0.1.45)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/rawhttp
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-04-15 06:00:23 +00:00
dependabot[bot] 88ee422256 Merge pull request #5044 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/fastdialer-0.0.67 2024-04-15 05:57:32 +00:00
dependabot[bot] c8824ac71a chore(deps): bump github.com/projectdiscovery/fastdialer
Bumps [github.com/projectdiscovery/fastdialer](https://github.com/projectdiscovery/fastdialer) from 0.0.66 to 0.0.67.
- [Release notes](https://github.com/projectdiscovery/fastdialer/releases)
- [Commits](https://github.com/projectdiscovery/fastdialer/compare/v0.0.66...v0.0.67)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/fastdialer
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-04-15 05:35:54 +00:00
dependabot[bot] c145adb3bf chore(deps): bump github.com/projectdiscovery/goflags
Bumps [github.com/projectdiscovery/goflags](https://github.com/projectdiscovery/goflags) from 0.1.46 to 0.1.48.
- [Release notes](https://github.com/projectdiscovery/goflags/releases)
- [Commits](https://github.com/projectdiscovery/goflags/compare/v0.1.46...v0.1.48)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/goflags
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-04-15 05:35:43 +00:00
Levente Kováts 0d5e26d7bd run workflow subtemplates with new ScanContext (#5031)
fix projectdiscovery/nuclei#4933
2024-04-12 04:20:11 +05:30
mzack 38e185c410 simpler logic 2024-04-12 00:32:06 +02:00
mzack 8f084eedd6 adding more tests 2024-04-12 00:22:11 +02:00
mzack 0807113e6c adding more query types test 2024-04-12 00:02:43 +02:00
Mzack9999 4d0204f89a Merge pull request #5036 from projectdiscovery/bugfix-networkpolicy-httpx
Adding networkpolicy to httpx probes
2024-04-11 21:18:10 +01:00
mzack f4394b8e11 Adding networkpolicy to httpx probes 2024-04-11 19:34:03 +02:00
mzack 7b71886309 Fixing internal resolver override 2024-04-11 19:10:31 +02:00
mzack 2ed33e4723 adding dns srv type 2024-04-11 18:57:50 +02:00
Mzack9999 721ddda915 Merge pull request #4986 from projectdiscovery/feat-3072-init-adaptive-speed
Initial Refactor for speed control
2024-04-10 00:49:33 +01:00
mzack 5fc08cec48 updating example 2024-04-09 18:51:25 +02:00
mzack 6eeb98c71b removing printf 2024-04-09 18:34:04 +02:00
mzack 70eb494a01 warning 2024-04-09 18:32:40 +02:00
mzack 582a85d9c0 mimic follow behavior 2024-04-09 18:31:22 +02:00
mzack 7e363984b2 Merge branch 'dev' into feat-3072-init-adaptive-speed 2024-04-09 15:19:51 +02:00
Tarun Koyalwar 375d1ddcde fix missing port in javascript result (#5023)
* add ip support in js output

* js: if dialed ip is missing resolve and get first ip

* ssl: fix incorrect port in output
2024-04-09 02:09:44 +05:30
sandeep 24120e0e82 Merge branch 'dev' of https://github.com/projectdiscovery/nuclei into dev 2024-04-09 01:02:22 +05:30
sandeep 1ed3213565 version update 2024-04-09 01:02:11 +05:30
Tarun Koyalwar 74dee426ed fuzz: fix missing expression evaluation before use (#5019) 2024-04-09 00:58:35 +05:30
Tarun Koyalwar f159e8fa66 fix dynamic extractor + payloads edgecase by sending req sequentially (#5016)
* explicitly handle edgecase #4993 instead of hot fix

* fix typo
2024-04-08 22:21:26 +05:30
Ice3manandsandeep a844e6f7ab feat: fixed bug due to parallel auto setting in http (#4992)
* feat: fixed bug due to parallel auto setting in http

* increased threshold

---------

Co-authored-by: sandeep <[email protected]>
2024-04-08 16:04:57 +05:30
Tarun Koyalwar b86fcb5546 fix index out of range error (#4998) 2024-04-08 14:11:32 +05:30
dependabot[bot] 392fb61e94 Merge pull request #5013 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/fastdialer-0.0.66 2024-04-08 07:16:46 +00:00
dependabot[bot] f1215d84e7 Merge pull request #5010 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/utils-0.0.88 2024-04-08 07:13:53 +00:00
dependabot[bot] 2b7967c5ec chore(deps): bump github.com/projectdiscovery/fastdialer
Bumps [github.com/projectdiscovery/fastdialer](https://github.com/projectdiscovery/fastdialer) from 0.0.64 to 0.0.66.
- [Release notes](https://github.com/projectdiscovery/fastdialer/releases)
- [Commits](https://github.com/projectdiscovery/fastdialer/compare/v0.0.64...v0.0.66)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/fastdialer
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-04-08 06:46:57 +00:00
dependabot[bot] 9730de0f76 chore(deps): bump github.com/projectdiscovery/utils
Bumps [github.com/projectdiscovery/utils](https://github.com/projectdiscovery/utils) from 0.0.87 to 0.0.88.
- [Release notes](https://github.com/projectdiscovery/utils/releases)
- [Changelog](https://github.com/projectdiscovery/utils/blob/main/CHANGELOG.md)
- [Commits](https://github.com/projectdiscovery/utils/compare/v0.0.87...v0.0.88)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/utils
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-04-08 06:46:36 +00:00
dependabot[bot] 3f04534337 Merge pull request #5009 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/dsl-0.0.51 2024-04-08 06:45:31 +00:00
dependabot[bot] e8e11d8f94 Merge pull request #5012 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/retryablehttp-go-1.0.55 2024-04-08 06:43:03 +00:00
dependabot[bot] 64a783223b chore(deps): bump github.com/projectdiscovery/retryablehttp-go
Bumps [github.com/projectdiscovery/retryablehttp-go](https://github.com/projectdiscovery/retryablehttp-go) from 1.0.54 to 1.0.55.
- [Release notes](https://github.com/projectdiscovery/retryablehttp-go/releases)
- [Commits](https://github.com/projectdiscovery/retryablehttp-go/compare/v1.0.54...v1.0.55)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/retryablehttp-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-04-08 06:21:10 +00:00
dependabot[bot] 95fc24a1c8 chore(deps): bump github.com/projectdiscovery/dsl from 0.0.50 to 0.0.51
Bumps [github.com/projectdiscovery/dsl](https://github.com/projectdiscovery/dsl) from 0.0.50 to 0.0.51.
- [Release notes](https://github.com/projectdiscovery/dsl/releases)
- [Commits](https://github.com/projectdiscovery/dsl/compare/v0.0.50...v0.0.51)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/dsl
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-04-08 06:21:01 +00:00
dependabot[bot] 02957e913b Merge pull request #5011 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/rawhttp-0.1.44 2024-04-08 06:19:38 +00:00
dependabot[bot] a4f6667eb4 chore(deps): bump github.com/projectdiscovery/rawhttp
Bumps [github.com/projectdiscovery/rawhttp](https://github.com/projectdiscovery/rawhttp) from 0.1.41 to 0.1.44.
- [Release notes](https://github.com/projectdiscovery/rawhttp/releases)
- [Commits](https://github.com/projectdiscovery/rawhttp/compare/v0.1.41...v0.1.44)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/rawhttp
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-04-08 05:56:54 +00:00
GitHub Action d742e55c3f Auto Generate Syntax Docs + JSONSchema [Sun Apr 7 22:03:32 UTC 2024] 🤖 2024-04-07 22:03:32 +00:00
Muhammad DaffaandTarun Koyalwar ffbe5deebb feat: added asreproastable (#4990)
* feat: added asreproastable

* ldap: remove FilterAccountEnabled from AsRepRoastable

* run 'make jsupdate'

---------

Co-authored-by: Tarun Koyalwar <[email protected]>
2024-04-08 03:31:30 +05:30
Ramana Reddy 8c27ca2591 fix(schema): generation of missing JSON schema definitions (#4995)
* fix(schema): generation of missing JSON schema definitions

* make headers and data to accept multi-type inputs

* misc update
2024-04-08 03:29:42 +05:30
Sandeep Singh 82e25f6631 Merge pull request #5004 from hanghuge/dev
chore: fix function name in comment
2024-04-07 23:36:23 +05:30
hanghuge 7b2a708edd chore: fix function name in comment
Signed-off-by: hanghuge <[email protected]>
2024-04-07 00:03:24 +08:00
Mzack9999 f886fb2cf4 less templates in test 2024-04-05 16:40:37 +02:00
Mzack9999 d0a0c6d0c3 internal sync fix + speed up 2024-04-05 15:45:21 +02:00
mzack aa06c9ef17 speed up 2024-04-04 21:21:06 +02:00
mzack c4aa7dc1a2 f tag 2024-04-04 20:43:00 +02:00
mzack 96d7d02701 adding speed example 2024-04-04 20:22:28 +02:00
mzack 99a018d12a adding speed change example 2024-04-04 20:19:46 +02:00
mzack af7450737a making payload concurrency dynamic via direct int change 2024-04-03 23:06:08 +02:00
Mzack9999 a140a4194e boh - placing resize in wrapped method 2024-04-03 19:40:09 +02:00
Mzack9999 620287f76b deprecating rlm 2024-04-03 19:28:39 +02:00
Mzack9999 3c62b56fd9 panic at the pool 2024-04-03 19:02:30 +02:00
Mzack9999 774db61655 lightweight adaptivity on workpool 2024-04-03 18:50:46 +02:00
Mzack9999 a8d1393e96 init- using resizable components 2024-04-03 17:50:57 +02:00
Dogan Can Bakir e99420603f fix raw req single slash issue (#4955)
* fix raw req single slash issue

* fix raw unsafe req single slash issue

* commit to last commit

* minor
2024-04-03 19:39:35 +05:30
sandeep b687c11f6b misc option update 2024-04-03 18:51:34 +05:30
sandeep 6b5e0baf2a Merge branch 'dev' of https://github.com/projectdiscovery/nuclei into dev 2024-04-03 17:25:33 +05:30
sandeep 03b2fb52c1 syntax update in test 2024-04-03 17:25:12 +05:30
David Fisher 143f179e7b Remove prefix v from Sarif exporters (#4976)
because: In config.Version there is already
a `v`` prefix, such as `v3.2.2``.

Prior to this commit the versions were being
tagged as `vv3.2.2`

this commit: Removes the 'v' prefix from the
Sarif exporter in the ToolDetails for both
FullName and SemanticVersion.
2024-04-03 17:19:27 +05:30
Tarun Koyalwar 3907e20bde fix multiple panics & missing matcher-status in flow templates (#4978)
* validate and fix empty internal-event

* fix on error with interactsh req

* disable clustering in flow & multiproto

* fix empty/missing matcher-status result

* fix cluster unit test

* fix no results found unit test
2024-04-03 17:19:06 +05:30
dependabot[bot] abc8ac8ee1 Merge pull request #4982 from projectdiscovery/dependabot/go_modules/github.com/quic-go/quic-go-0.42.0 2024-04-02 14:42:32 +00:00
dependabot[bot] 86b84968b5 chore(deps): bump github.com/quic-go/quic-go from 0.40.1 to 0.42.0
Bumps [github.com/quic-go/quic-go](https://github.com/quic-go/quic-go) from 0.40.1 to 0.42.0.
- [Release notes](https://github.com/quic-go/quic-go/releases)
- [Changelog](https://github.com/quic-go/quic-go/blob/master/Changelog.md)
- [Commits](https://github.com/quic-go/quic-go/compare/v0.40.1...v0.42.0)

---
updated-dependencies:
- dependency-name: github.com/quic-go/quic-go
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-04-02 14:20:30 +00:00
Tarun Koyalwar 9951626f1f bump utils (#4975)
* bump utils

* fix windows build + dev version update

* use utils from main

* use v0.0.87 of utils
2024-04-02 16:32:52 +05:30
Dogan Can BakirandSandeep Singh dccfc10b10 fix nocolor output (#4954)
Co-authored-by: Sandeep Singh <[email protected]>
2024-04-02 01:41:10 +05:30
dependabot[bot] 5443c1c76b Merge pull request #4972 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/wappalyzergo-0.0.116 2024-04-01 14:14:01 +00:00
dependabot[bot] b4b71d9ad6 chore(deps): bump github.com/projectdiscovery/wappalyzergo
Bumps [github.com/projectdiscovery/wappalyzergo](https://github.com/projectdiscovery/wappalyzergo) from 0.0.112 to 0.0.116.
- [Release notes](https://github.com/projectdiscovery/wappalyzergo/releases)
- [Commits](https://github.com/projectdiscovery/wappalyzergo/compare/v0.0.112...v0.0.116)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/wappalyzergo
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-04-01 13:51:55 +00:00
GitHub Action 39ee0b7c39 Auto Generate Syntax Docs + JSONSchema [Mon Apr 1 13:49:30 UTC 2024] 🤖 2024-04-01 13:49:30 +00:00
Tarun Koyalwar 255032f4f2 pre-condition in code , fuzz and other misc updates (#4966)
* fuzz: rename 'filters' -> 'pre-condition'

* code proto: pre-condition + integration test

* feat: dsl document generator

* update dsl page header

* fix lint error

* add js defined helper funcs in docs

* remove panic recovery unless its for third party(go-rod,goja)

* handle dynamic values flattening edgecase in flow+multiprotocol

* fix order of kv in form-data (failing test)

* fix template loading counters

* Revert "handle dynamic values flattening edgecase in flow+multiprotocol"

This reverts commit 58fdd4faf7.

* fix flow iteration using 'iterate'
2024-04-01 19:18:21 +05:30
Tarun Koyalwar 1d8b10be2a fix empty template-id in scan logs (#4969) 2024-04-01 12:25:17 +05:30
dependabot[bot] ddf9477c80 Merge pull request #4973 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/goflags-0.1.46 2024-04-01 06:14:01 +00:00
dependabot[bot] 8a25cb4c59 Merge pull request #4970 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/retryablehttp-go-1.0.54 2024-04-01 05:53:28 +00:00
dependabot[bot] d5cfee7375 chore(deps): bump github.com/projectdiscovery/goflags
Bumps [github.com/projectdiscovery/goflags](https://github.com/projectdiscovery/goflags) from 0.1.42 to 0.1.46.
- [Release notes](https://github.com/projectdiscovery/goflags/releases)
- [Commits](https://github.com/projectdiscovery/goflags/compare/v0.1.42...v0.1.46)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/goflags
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-04-01 05:47:50 +00:00
dependabot[bot] 07ce7ef34e Merge pull request #4974 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/dsl-0.0.50 2024-04-01 05:44:54 +00:00
dependabot[bot] c8783e608b Merge pull request #4971 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/ratelimit-0.0.35 2024-04-01 05:44:05 +00:00
dependabot[bot] cf67d4dca6 chore(deps): bump github.com/projectdiscovery/dsl from 0.0.48 to 0.0.50
Bumps [github.com/projectdiscovery/dsl](https://github.com/projectdiscovery/dsl) from 0.0.48 to 0.0.50.
- [Release notes](https://github.com/projectdiscovery/dsl/releases)
- [Commits](https://github.com/projectdiscovery/dsl/compare/v0.0.48...v0.0.50)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/dsl
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-04-01 05:24:10 +00:00
dependabot[bot] 90ae6fc2fa chore(deps): bump github.com/projectdiscovery/ratelimit
Bumps [github.com/projectdiscovery/ratelimit](https://github.com/projectdiscovery/ratelimit) from 0.0.27 to 0.0.35.
- [Release notes](https://github.com/projectdiscovery/ratelimit/releases)
- [Commits](https://github.com/projectdiscovery/ratelimit/compare/v0.0.27...v0.0.35)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/ratelimit
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-04-01 05:22:51 +00:00
dependabot[bot] 4c86b3bf87 chore(deps): bump github.com/projectdiscovery/retryablehttp-go
Bumps [github.com/projectdiscovery/retryablehttp-go](https://github.com/projectdiscovery/retryablehttp-go) from 1.0.52 to 1.0.54.
- [Release notes](https://github.com/projectdiscovery/retryablehttp-go/releases)
- [Commits](https://github.com/projectdiscovery/retryablehttp-go/compare/v1.0.52...v1.0.54)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/retryablehttp-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-04-01 05:22:42 +00:00
Tarun Koyalwar 25e7799c09 req_url_pattern for vuln_hash calculation + unit test (#4964) 2024-03-30 23:50:31 +05:30
GitHub Action 5ce912e316 Auto Generate Syntax Docs + JSONSchema [Fri Mar 29 08:03:07 UTC 2024] 🤖 2024-03-29 08:03:07 +00:00
llussy cfbd56c311 fix go version and format. (#4958) 2024-03-29 13:32:07 +05:30
Tarun Koyalwar e88889b263 add -dast flag and multiple bug fixes for dast templates (#4941)
* add default get method

* remove residual payload logic from old implementation

* fuzz: clone current state of component

* fuzz: bug fix stacking of payloads in multiple mode

* improve stdout template loading stats

* stdout: force display warnings if no templates are loaded

* update flags in README.md

* quote non-ascii chars in extractor output

* aws request signature can only be used in signed & verified tmpls

* deprecate request signature

* remove logic related to deprecated fuzzing input

* update test to use ordered params

* fix interactsh-url lazy eval: #4946

* output: skip unnecessary updates when unescaping

* updates as per requested changes
2024-03-29 13:31:30 +05:30
GitHub Action 78300e3250 Auto Generate Syntax Docs + JSONSchema [Wed Mar 27 18:35:05 UTC 2024] 🤖 2024-03-27 18:35:05 +00:00
Tarun Koyalwar c123a4b449 Merge pull request #4943 from kchason/3690-replace-jsonschema
Update JSONSchema Libraries
2024-03-28 00:03:01 +05:30
Tarun Koyalwar 17d67f6608 minor updates 2024-03-27 23:52:08 +05:30
kchason 0feb94a717 Remove YAML designated formatters 2024-03-25 16:15:28 -04:00
kchason fb3c3d828d Initial switch of libraries 2024-03-25 15:52:20 -04:00
dependabot[bot] 728e00c771 Merge pull request #4940 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/fastdialer-0.0.64 2024-03-25 05:55:33 +00:00
dependabot[bot] 663b6df872 chore(deps): bump github.com/projectdiscovery/fastdialer
Bumps [github.com/projectdiscovery/fastdialer](https://github.com/projectdiscovery/fastdialer) from 0.0.63 to 0.0.64.
- [Release notes](https://github.com/projectdiscovery/fastdialer/releases)
- [Commits](https://github.com/projectdiscovery/fastdialer/compare/v0.0.63...v0.0.64)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/fastdialer
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-03-25 05:33:59 +00:00
Tarun Koyalwar c1bd4f82ea Multiple bug fixes in query param fuzzing (#4925)
* fuzz: check and handle typed slice

* do not query encode params + fuzz/allow duplicates params

* sometimes order matters ~query params

* component: fix broken iterator

* result upload add meta params
2024-03-25 10:08:26 +05:30
dependabot[bot] bc268174ab Merge pull request #4924 from projectdiscovery/dependabot/go_modules/github.com/docker/docker-24.0.9incompatible 2024-03-20 17:57:39 +00:00
dependabot[bot] 7b72c7c186 chore(deps): bump github.com/docker/docker
Bumps [github.com/docker/docker](https://github.com/docker/docker) from 24.0.7+incompatible to 24.0.9+incompatible.
- [Release notes](https://github.com/docker/docker/releases)
- [Commits](https://github.com/docker/docker/compare/v24.0.7...v24.0.9)

---
updated-dependencies:
- dependency-name: github.com/docker/docker
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-03-20 17:24:42 +00:00
dependabot[bot] 6d3fac731c Merge pull request #4913 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/dsl-0.0.48 2024-03-19 14:40:17 +00:00
dependabot[bot] 7c5e8477ca Merge pull request #4910 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/rawhttp-0.1.41 2024-03-18 05:56:01 +00:00
dependabot[bot] c631b82f7d Merge pull request #4912 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/utils-0.0.84 2024-03-18 05:25:38 +00:00
dependabot[bot] 62bdee97e9 chore(deps): bump github.com/projectdiscovery/rawhttp
Bumps [github.com/projectdiscovery/rawhttp](https://github.com/projectdiscovery/rawhttp) from 0.1.40 to 0.1.41.
- [Release notes](https://github.com/projectdiscovery/rawhttp/releases)
- [Commits](https://github.com/projectdiscovery/rawhttp/compare/v0.1.40...v0.1.41)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/rawhttp
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-03-18 05:24:56 +00:00
dependabot[bot] e8f1cc3657 chore(deps): bump github.com/projectdiscovery/dsl from 0.0.46 to 0.0.48
Bumps [github.com/projectdiscovery/dsl](https://github.com/projectdiscovery/dsl) from 0.0.46 to 0.0.48.
- [Release notes](https://github.com/projectdiscovery/dsl/releases)
- [Commits](https://github.com/projectdiscovery/dsl/compare/v0.0.46...v0.0.48)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/dsl
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-03-18 05:24:52 +00:00
dependabot[bot] ec999275b2 Merge pull request #4911 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/fastdialer-0.0.63 2024-03-18 05:23:51 +00:00
dependabot[bot] 1975a1f869 Merge pull request #4909 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/retryablehttp-go-1.0.52 2024-03-18 05:23:10 +00:00
dependabot[bot] 31568a06ff chore(deps): bump github.com/projectdiscovery/utils
Bumps [github.com/projectdiscovery/utils](https://github.com/projectdiscovery/utils) from 0.0.84-0.20240313184656-e3ec80f4dd42 to 0.0.84.
- [Release notes](https://github.com/projectdiscovery/utils/releases)
- [Changelog](https://github.com/projectdiscovery/utils/blob/main/CHANGELOG.md)
- [Commits](https://github.com/projectdiscovery/utils/commits/v0.0.84)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/utils
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-03-18 05:03:50 +00:00
dependabot[bot] 269dd4c38c chore(deps): bump github.com/projectdiscovery/fastdialer
Bumps [github.com/projectdiscovery/fastdialer](https://github.com/projectdiscovery/fastdialer) from 0.0.62 to 0.0.63.
- [Release notes](https://github.com/projectdiscovery/fastdialer/releases)
- [Commits](https://github.com/projectdiscovery/fastdialer/compare/v0.0.62...v0.0.63)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/fastdialer
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-03-18 05:03:46 +00:00
dependabot[bot] a9d5f243ba chore(deps): bump github.com/projectdiscovery/retryablehttp-go
Bumps [github.com/projectdiscovery/retryablehttp-go](https://github.com/projectdiscovery/retryablehttp-go) from 1.0.51 to 1.0.52.
- [Release notes](https://github.com/projectdiscovery/retryablehttp-go/releases)
- [Commits](https://github.com/projectdiscovery/retryablehttp-go/compare/v1.0.51...v1.0.52)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/retryablehttp-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-03-18 05:03:37 +00:00
sandeep 8a9dc11f36 version update 2024-03-17 16:29:50 +05:30
Tarun Koyalwar 59a624f2bd add more nil checks and create default map (#4896)
* add more nil checks and create default map

* fix more panic in interactsh

* early exit
2024-03-17 16:25:26 +05:30
sandeep 3ee1bfa4ba version update 2024-03-15 18:53:38 +05:30
Sandeep Singh ac240cd14c Merge pull request #4892 from alizademhdi/fix_vulnerabilities
Security upgrade alpine from 3.18.2 to 3.18.6
2024-03-15 18:52:41 +05:30
Sandeep Singh 0b70d58665 Merge pull request #4893 from projectdiscovery/js-hot-fix
js protocol: fix breaking json export issue
2024-03-15 18:50:31 +05:30
Mzack9999 7d06c97a0d Merge pull request #4867 from projectdiscovery/maint-runner-cache
Internal Templates Loader/Parser caches refactoring
2024-03-15 14:05:12 +01:00
Tarun Koyalwar a8ec9819fc bump goja version + nuclei version 2024-03-15 18:12:57 +05:30
mzack bf2699462f lint 2024-03-15 13:40:28 +01:00
Tarun Koyalwar f3d2f394ce go mod tidy 2024-03-15 18:07:12 +05:30
Tarun Koyalwar e1fea06f2c retract nuclei v3.2.0 2024-03-15 18:06:58 +05:30
mzack 2dd8c8c5ae removing err 2024-03-15 13:36:57 +01:00
Tarun Koyalwar 94817ca300 js protocol: fix breaking json export issue 2024-03-15 18:04:08 +05:30
alizademhdi fcd5c6b111 Upgrade alpine to 3.18.6 for security fixes 2024-03-15 16:01:27 +03:30
alizademhdi d93b4a01df Reduce vulnerabilities in alpine
The following vulnerabilities are fixed with an upgrade alpine from 3.18.2.to 3.18.5:
- https://snyk.io/vuln/SNYK-ALPINE318-BUSYBOX-5890990
- https://snyk.io/vuln/SNYK-ALPINE318-BUSYBOX-5890990
- https://snyk.io/vuln/SNYK-ALPINE318-BUSYBOX-5890990
- https://snyk.io/vuln/SNYK-ALPINE318-OPENSSL-6032386
- https://snyk.io/vuln/SNYK-ALPINE318-OPENSSL-6032386
2024-03-15 14:22:15 +03:30
Sandeep Singh aaf3cf9cb3 Merge pull request #4884 from kiokuless/fix-rate-limiter
Fix overriding the predefined ratelimiter by WithGlobalRateLimit
2024-03-15 15:26:05 +05:30
Mzack9999 df67578d98 Merge pull request #4885 from debasishbsws/go-git-version-upgrade
update go-git version from v4 to v5 fix GHSA-449p-3h89-pw88 GHSA-mw99-9chc-xw7r
2024-03-15 00:44:56 +01:00
mzack d988de45f6 merge 2024-03-15 00:01:09 +01:00
mzack e523d3872c Merge branch 'dev' into maint-runner-cache 2024-03-14 23:46:50 +01:00
Mzack9999 b7f76cfd4b Merge pull request #4833 from projectdiscovery/maint-memory
Adding memguardian + various optimizations
2024-03-14 23:39:43 +01:00
debasishbsw 1700cdf4e2 update go-git fix CVE-2023-49569 CVE-2023-49568
Signed-off-by: debasishbsw <[email protected]>
2024-03-14 10:26:08 +00:00
kiokuless 3a41f752e4 Use e.rateLimiter if it's not nil 2024-03-14 10:41:23 +09:00
dependabot[bot] d292ac8698 Merge pull request #4881 from projectdiscovery/dependabot/go_modules/google.golang.org/protobuf-1.33.0 2024-03-13 22:04:02 +00:00
GitHub Action f6d0b1cd95 Auto Generate Syntax Docs + JSONSchema [Wed Mar 13 22:02:48 UTC 2024] 🤖 2024-03-13 22:02:48 +00:00
sandeep 5d0b82c6a1 Fixed xpath doc escaping example 2024-03-14 03:30:37 +05:30
dependabot[bot] d27f56fd7e chore(deps): bump google.golang.org/protobuf from 1.32.0 to 1.33.0
Bumps google.golang.org/protobuf from 1.32.0 to 1.33.0.

---
updated-dependencies:
- dependency-name: google.golang.org/protobuf
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-03-13 21:39:42 +00:00
fa56800fcc Fuzzing layer enhancements + input-types support (#4477)
* feat: move fuzz package to root directory

* feat: added support for input providers like openapi,postman,etc

* feat: integration of new fuzzing logic in engine

* bugfix: use and instead of or

* fixed lint errors

* go mod tidy

* add new reqresp type + bump utils

* custom http request parser

* use new struct type RequestResponse

* introduce unified input/target provider

* abstract input formats via new inputprovider

* completed input provider refactor

* remove duplicated code

* add sdk method to load targets

* rename component url->path

* add new yaml format + remove duplicated code

* use gopkg.in/yaml.v3 for parsing

* update .gitignore

* refactor/move + docs fuzzing in http protocol

* fuzz: header + query integration test using fuzzplayground

* fix integration test runner in windows

* feat add support for filter in http fuzz

* rewrite header/query integration test with filter

* add replace regex rule

* support kv fuzzing + misc updates

* add path fuzzing example + misc improvements

* fix matchedURL + skip httpx on multi formats

* cookie fuzz integration test

* add json body + params body tests

* feat add multipart/form-data fuzzing support

* add all fuzz body integration test

* misc bug fixes + minor refactor

* add multipart form + body form unit tests

* only run fuzzing templates if -fuzz flag is given

* refactor/move fuzz playground server to pkg

* fix integration test + refactor

* add auth types and strategies

* add file auth provider

* start implementing auth logic in http

* add logic in http protocol

* static auth implemented for http

* default :80,:443 normalization

* feat: dynamic auth init

* feat: dynamic auth using templates

* validate targets count in openapi+swagger

* inputformats: add support to accept variables

* fix workflow integration test

* update lazy cred fetch logic

* fix unit test

* drop postman support

* domain related normalization

* update secrets.yaml file format + misc updates

* add auth prefetch option

* remove old secret files

* add fuzzing+auth related sdk options

* fix/support multiple mode in kv header fuzzing

* rename 'headers' -> 'header' in fuzzing rules

* fix deadlock due to merge conflict resolution

* misc update

* add bool type in parsed value

* add openapi validation+override+ new flags

* misc updates

* remove optional path parameters when unavailable

* fix swagger.yaml file

* misc updates

* update print msg

* multiple openapi validation enchancements + appMode

* add optional params in required_openapi_vars.yaml file

* improve warning/verbose msgs in format

* fix skip-format-validation not working

* use 'params/parameter' instead of 'variable' in openapi

* add retry support for falky tests

* fix nuclei loading ignored templates (#4849)

* fix tag include logic

* fix unit test

* remove quoting in extractor output

* remove quote in debug code command

* feat: issue tracker URLs in JSON + misc fixes (#4855)

* feat: issue tracker URLs in JSON + misc fixes

* misc changes

* feat: status update support for issues

* feat: report metadata generation hook support

* feat: added CLI summary of tickets created

* misc changes

* introduce `disable-unsigned-templates` flag (#4820)

* introduce `disable-unsigned-templates` flag

* minor

* skip instead of exit

* remove duplicate imports

* use stats package + misc enhancements

* force display warning + adjust skipped stats in unsigned count

* include unsigned skipped templates without -dut flag

---------

Co-authored-by: Tarun Koyalwar <[email protected]>

* Purge cache on global callback set (#4840)

* purge cache on global callback set

* lint

* purging cache

* purge cache in runner after loading templates

* include internal cache from parsers + add global cache register/purge via config

* remove disable cache purge option

---------

Co-authored-by: Tarun Koyalwar <[email protected]>

* misc update

* add application/octet-stream support

* openapi: support path specific params

* misc option + readme update

---------

Co-authored-by: Sandeep Singh <[email protected]>
Co-authored-by: sandeep <[email protected]>
Co-authored-by: Tarun Koyalwar <[email protected]>
Co-authored-by: Tarun Koyalwar <[email protected]>
Co-authored-by: Dogan Can Bakir <[email protected]>
Co-authored-by: Mzack9999 <[email protected]>
2024-03-14 03:08:53 +05:30
mzack a751993808 rename 2024-03-13 21:46:30 +01:00
mzack e9f6febe01 caching content + merging caches 2024-03-13 21:02:36 +01:00
mzack 3685379960 Merge branch 'dev' into maint-runner-cache 2024-03-13 20:16:27 +01:00
mzack 117d4a30e2 v. bump 2024-03-13 19:48:59 +01:00
mzack 397ad04540 Merge branch 'dev' into maint-memory 2024-03-13 19:31:45 +01:00
Dogan Can Bakir 66b722faaf bump gozero (#4877) 2024-03-13 20:36:19 +05:30
Tarun Koyalwar 49ef5cbf16 handle 1 more edgecase (#4868)
* handle 1 more edgecase

* add integration test for this edgecase

* fix multi-http-var-sharing with integration test

* add -payload-concurrency (-pc) flag

* fix missing internal:true login in multiprotocol engine

* fix/handle absolute invalid url parsing

* support -pc & -jc in go sdk

* fix missing variables in code protocol operators

* add payload count parallelhttp check
2024-03-13 20:35:19 +05:30
mzack fd14472181 . 2024-03-13 03:16:40 +01:00
mzack cd289a81c9 tmp init 2024-03-13 02:59:34 +01:00
mzack cbda987288 fixing tests 2024-03-13 02:44:45 +01:00
mzack 4aff6d7189 merging caches + removing import cycle via type any 2024-03-13 02:27:15 +01:00
mzack 4b43bd0c65 . 2024-03-12 14:56:53 +01:00
mzack a335e4962e bla 2024-03-12 14:55:43 +01:00
mzack 946d81dc56 vers. bump 2024-03-11 22:22:17 +01:00
mzack a69a082247 u64 2024-03-11 21:47:52 +01:00
mzack 582bf865d2 lint 2024-03-11 21:06:56 +01:00
mzack d93454eee3 Merge branch 'dev' into maint-memory 2024-03-11 20:49:21 +01:00
mzack de9f9620d5 removing debug 2024-03-11 19:58:08 +01:00
mzack 29f4ac9160 lint 2024-03-11 19:54:23 +01:00
mzack e2cf5dda35 split active+passive guards 2024-03-11 19:48:56 +01:00
Ice3man a66b56fc79 change position of sdk text 2024-03-11 22:39:32 +05:30
mzack da38d4db20 pointing to util commit 2024-03-11 15:05:19 +01:00
mzack 3f295226ad Merge branch 'dev' into maint-memory 2024-03-11 15:03:14 +01:00
Dogan Can Bakir e9625d621f add callback support to StandardWriter (#4839)
* add callback support to StandardWriter

* minor

* use multiwriter

* minor
2024-03-11 17:07:07 +05:30
dependabot[bot] fe4d5f05a1 Merge pull request #4862 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/interactsh-1.1.9 2024-03-11 06:26:48 +00:00
dependabot[bot] 4d67a3601d chore(deps): bump github.com/projectdiscovery/interactsh
Bumps [github.com/projectdiscovery/interactsh](https://github.com/projectdiscovery/interactsh) from 1.1.8 to 1.1.9.
- [Release notes](https://github.com/projectdiscovery/interactsh/releases)
- [Changelog](https://github.com/projectdiscovery/interactsh/blob/main/.goreleaser.yml)
- [Commits](https://github.com/projectdiscovery/interactsh/compare/v1.1.8...v1.1.9)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/interactsh
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-03-11 06:06:33 +00:00
dependabot[bot] 5347106bce Merge pull request #4859 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/httpx-1.6.0 2024-03-11 06:04:41 +00:00
dependabot[bot] 69b39d8ce6 chore(deps): bump github.com/projectdiscovery/httpx from 1.5.0 to 1.6.0
Bumps [github.com/projectdiscovery/httpx](https://github.com/projectdiscovery/httpx) from 1.5.0 to 1.6.0.
- [Release notes](https://github.com/projectdiscovery/httpx/releases)
- [Changelog](https://github.com/projectdiscovery/httpx/blob/main/.goreleaser.yml)
- [Commits](https://github.com/projectdiscovery/httpx/compare/v1.5.0...v1.6.0)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/httpx
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-03-11 05:45:02 +00:00
dependabot[bot] 3d3027873c Merge pull request #4858 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/rawhttp-0.1.40 2024-03-11 05:44:01 +00:00
dependabot[bot] 3a2b5c8c96 chore(deps): bump github.com/projectdiscovery/rawhttp
Bumps [github.com/projectdiscovery/rawhttp](https://github.com/projectdiscovery/rawhttp) from 0.1.39 to 0.1.40.
- [Release notes](https://github.com/projectdiscovery/rawhttp/releases)
- [Commits](https://github.com/projectdiscovery/rawhttp/compare/v0.1.39...v0.1.40)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/rawhttp
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-03-11 05:23:53 +00:00
Mzack9999andTarun Koyalwar ec4fb408c9 Purge cache on global callback set (#4840)
* purge cache on global callback set

* lint

* purging cache

* purge cache in runner after loading templates

* include internal cache from parsers + add global cache register/purge via config

* remove disable cache purge option

---------

Co-authored-by: Tarun Koyalwar <[email protected]>
2024-03-11 02:59:55 +05:30
Dogan Can BakirandTarun Koyalwar 9bd4db3f74 introduce disable-unsigned-templates flag (#4820)
* introduce `disable-unsigned-templates` flag

* minor

* skip instead of exit

* remove duplicate imports

* use stats package + misc enhancements

* force display warning + adjust skipped stats in unsigned count

* include unsigned skipped templates without -dut flag

---------

Co-authored-by: Tarun Koyalwar <[email protected]>
2024-03-11 02:01:17 +05:30
Ice3man fd024a3e8d feat: issue tracker URLs in JSON + misc fixes (#4855)
* feat: issue tracker URLs in JSON + misc fixes

* misc changes

* feat: status update support for issues

* feat: report metadata generation hook support

* feat: added CLI summary of tickets created

* misc changes
2024-03-10 22:02:42 +05:30
Tarun Koyalwar b1b4f0fe76 fix nuclei loading ignored templates (#4849)
* fix tag include logic

* fix unit test

* remove quoting in extractor output

* remove quote in debug code command
2024-03-09 21:20:54 +05:30
mzack 6f6c1d3679 small change in calculation 2024-03-07 17:28:24 +01:00
mzack 89858a2ec8 . 2024-03-07 17:11:52 +01:00
mzack 75183c7660 Merge branch 'dev' into maint-memory 2024-03-07 17:10:32 +01:00
mzack b445f7fc87 making memguardian optional 2024-03-07 16:16:07 +01:00
Dogan Can Bakir bbac102cf8 remove tmp code files (#4835) 2024-03-07 18:27:38 +05:30
mzack e98d1d6a97 removing storage 2024-03-06 13:29:41 +01:00
GitHub Action cfe28f0040 Auto Generate Syntax Docs + JSONSchema [Tue Mar 5 17:11:08 UTC 2024] 🤖 2024-03-05 17:11:09 +00:00
Ramana Reddy 0a8beb26e9 Make self-contained optional in http request (#4838) 2024-03-05 22:40:12 +05:30
mzack 46830d4402 lint 2024-03-05 01:33:11 +01:00
mzack 52beea3bcd Merge branch 'dev' into maint-memory 2024-03-05 01:26:06 +01:00
mzack ea3ecbf2d2 adding disk storage + memguardian + other memory optimizations 2024-03-05 01:08:01 +01:00
dependabot[bot] 02d4151110 Merge pull request #4826 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/httpx-1.5.0 2024-03-04 06:39:41 +00:00
dependabot[bot] e4702317e4 Merge pull request #4828 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/wappalyzergo-0.0.112 2024-03-04 06:34:18 +00:00
dependabot[bot] 0642531559 Merge pull request #4829 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/goflags-0.1.42 2024-03-04 06:32:44 +00:00
dependabot[bot] efa4fbcdb7 chore(deps): bump github.com/projectdiscovery/httpx from 1.3.9 to 1.5.0
Bumps [github.com/projectdiscovery/httpx](https://github.com/projectdiscovery/httpx) from 1.3.9 to 1.5.0.
- [Release notes](https://github.com/projectdiscovery/httpx/releases)
- [Changelog](https://github.com/projectdiscovery/httpx/blob/main/.goreleaser.yml)
- [Commits](https://github.com/projectdiscovery/httpx/compare/v1.3.9...v1.5.0)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/httpx
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-03-04 06:20:56 +00:00
dependabot[bot] 6cfb312f20 Merge pull request #4830 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/retryabledns-1.0.58 2024-03-04 06:19:59 +00:00
dependabot[bot] b13a9b9ace chore(deps): bump github.com/projectdiscovery/wappalyzergo
Bumps [github.com/projectdiscovery/wappalyzergo](https://github.com/projectdiscovery/wappalyzergo) from 0.0.111 to 0.0.112.
- [Release notes](https://github.com/projectdiscovery/wappalyzergo/releases)
- [Commits](https://github.com/projectdiscovery/wappalyzergo/compare/v0.0.111...v0.0.112)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/wappalyzergo
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-03-04 06:13:45 +00:00
dependabot[bot] b3498c1a2a chore(deps): bump github.com/projectdiscovery/goflags
Bumps [github.com/projectdiscovery/goflags](https://github.com/projectdiscovery/goflags) from 0.1.40 to 0.1.42.
- [Release notes](https://github.com/projectdiscovery/goflags/releases)
- [Commits](https://github.com/projectdiscovery/goflags/compare/v0.1.40...v0.1.42)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/goflags
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-03-04 06:12:57 +00:00
dependabot[bot] 505fe4ca5c Merge pull request #4827 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/useragent-0.0.40 2024-03-04 06:11:58 +00:00
dependabot[bot] 7379f1f3f5 chore(deps): bump github.com/projectdiscovery/retryabledns
Bumps [github.com/projectdiscovery/retryabledns](https://github.com/projectdiscovery/retryabledns) from 1.0.56 to 1.0.58.
- [Release notes](https://github.com/projectdiscovery/retryabledns/releases)
- [Commits](https://github.com/projectdiscovery/retryabledns/compare/v1.0.56...v1.0.58)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/retryabledns
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-03-04 05:51:29 +00:00
dependabot[bot] 8c2212f5c0 chore(deps): bump github.com/projectdiscovery/useragent
Bumps [github.com/projectdiscovery/useragent](https://github.com/projectdiscovery/useragent) from 0.0.39 to 0.0.40.
- [Release notes](https://github.com/projectdiscovery/useragent/releases)
- [Commits](https://github.com/projectdiscovery/useragent/compare/v0.0.39...v0.0.40)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/useragent
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-03-04 05:51:15 +00:00
Leon Jacobs 3ab0ae6c6f Implement more granular, issue tracker level filtering (#4780)
* (feat) include gitea in default config

* (feat) implement tracker level filtering in #4779
2024-03-02 18:25:13 +05:30
Tarun Koyalwar e86f382997 validate code template in workflows (#4822)
* validate code template in workflows

* fix missing executer
2024-03-01 21:30:03 +05:30
Mzack9999andTarun Koyalwar 4c7a0f424e Transparent Memoization via func Annotation (#4742)
* initial implementation with manual code generation

* testing generation

* refactor to package methods + auto memoize

* more memos

* fixing signatures

* refactor

* adding gen util

* adding util

* regenerate memoized files

---------

Co-authored-by: Tarun Koyalwar <[email protected]>
2024-03-01 18:40:18 +05:30
GitHub Action e7252a4f9e Auto Generate Syntax Docs + JSONSchema [Fri Mar 1 11:10:06 UTC 2024] 🤖 2024-03-01 11:10:06 +00:00
Tarun Koyalwar 8a2ff17ad8 allow specifying self-contained at http request level (#4812)
* allow specifying self-contained at requestlevel

* fix IsSMTP js example

* update smtp + fix examples

* update smtp error message

* add code reference in js protocol

* update js docs

* remove debug stmt
2024-03-01 16:38:56 +05:30
mzack 4d29bff759 using disk storage for large kv 2024-03-01 02:11:18 +01:00
Dogan Can Bakir 6abff96435 use maxsize (#4814) 2024-02-29 03:21:17 +05:30
fail-open 30bbdd0163 Update README.md (#4819)
-Removed links to sections that no longer exist
2024-02-29 00:37:34 +05:30
dependabot[bot] 924a0527d2 Merge pull request #4807 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/utils-0.0.80 2024-02-26 07:26:03 +00:00
dependabot[bot] f027b3a793 chore(deps): bump github.com/projectdiscovery/utils
Bumps [github.com/projectdiscovery/utils](https://github.com/projectdiscovery/utils) from 0.0.79-0.20240216200330-eeee5a2031fc to 0.0.80.
- [Release notes](https://github.com/projectdiscovery/utils/releases)
- [Changelog](https://github.com/projectdiscovery/utils/blob/main/CHANGELOG.md)
- [Commits](https://github.com/projectdiscovery/utils/commits/v0.0.80)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/utils
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-02-26 06:58:04 +00:00
dependabot[bot] 730addd09f Merge pull request #4806 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/wappalyzergo-0.0.111 2024-02-26 06:55:16 +00:00
dependabot[bot] 395b9d2a5b chore(deps): bump github.com/projectdiscovery/wappalyzergo
Bumps [github.com/projectdiscovery/wappalyzergo](https://github.com/projectdiscovery/wappalyzergo) from 0.0.109 to 0.0.111.
- [Release notes](https://github.com/projectdiscovery/wappalyzergo/releases)
- [Commits](https://github.com/projectdiscovery/wappalyzergo/compare/v0.0.109...v0.0.111)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/wappalyzergo
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-02-26 06:27:32 +00:00
dependabot[bot] 2922e05b03 Merge pull request #4805 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/useragent-0.0.39 2024-02-26 06:25:35 +00:00
dependabot[bot] 059b0ea215 Merge pull request #4804 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/fastdialer-0.0.60 2024-02-26 06:24:39 +00:00
dependabot[bot] 42b336b383 chore(deps): bump github.com/projectdiscovery/useragent
Bumps [github.com/projectdiscovery/useragent](https://github.com/projectdiscovery/useragent) from 0.0.38 to 0.0.39.
- [Release notes](https://github.com/projectdiscovery/useragent/releases)
- [Commits](https://github.com/projectdiscovery/useragent/compare/v0.0.38...v0.0.39)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/useragent
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-02-26 06:04:33 +00:00
dependabot[bot] 72a73575c2 chore(deps): bump github.com/projectdiscovery/fastdialer
Bumps [github.com/projectdiscovery/fastdialer](https://github.com/projectdiscovery/fastdialer) from 0.0.58 to 0.0.60.
- [Release notes](https://github.com/projectdiscovery/fastdialer/releases)
- [Commits](https://github.com/projectdiscovery/fastdialer/compare/v0.0.58...v0.0.60)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/fastdialer
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-02-26 06:04:27 +00:00
dependabot[bot] ce3626bdea Merge pull request #4803 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/retryablehttp-go-1.0.49 2024-02-26 06:03:14 +00:00
dependabot[bot] ed4796a71c chore(deps): bump github.com/projectdiscovery/retryablehttp-go
Bumps [github.com/projectdiscovery/retryablehttp-go](https://github.com/projectdiscovery/retryablehttp-go) from 1.0.48 to 1.0.49.
- [Release notes](https://github.com/projectdiscovery/retryablehttp-go/releases)
- [Commits](https://github.com/projectdiscovery/retryablehttp-go/compare/v1.0.48...v1.0.49)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/retryablehttp-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-02-26 05:43:03 +00:00
dd570bd71d Testing on owners (#4801)
* misc update

* chore(deps): bump github.com/gin-gonic/gin from 1.9.0 to 1.9.1 (#4252)

Bumps [github.com/gin-gonic/gin](https://github.com/gin-gonic/gin) from 1.9.0 to 1.9.1.
- [Release notes](https://github.com/gin-gonic/gin/releases)
- [Changelog](https://github.com/gin-gonic/gin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/gin-gonic/gin/compare/v1.9.0...v1.9.1)

---
updated-dependencies:
- dependency-name: github.com/gin-gonic/gin
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump github.com/docker/docker (#4316)

Bumps [github.com/docker/docker](https://github.com/docker/docker) from 24.0.5+incompatible to 24.0.7+incompatible.
- [Release notes](https://github.com/docker/docker/releases)
- [Commits](https://github.com/docker/docker/compare/v24.0.5...v24.0.7)

---
updated-dependencies:
- dependency-name: github.com/docker/docker
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix README_CN.md typos (#4369)

* version update

* only testing on owners

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: sandeep <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Xc1Ym <[email protected]>
2024-02-25 15:59:39 +05:30
Alexey 13831e63e0 feat: typo fix (#4785) 2024-02-22 04:48:02 +05:30
dependabot[bot] 5539ad7aff Merge pull request #4770 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/goflags-0.1.40 2024-02-19 05:52:59 +00:00
dependabot[bot] 8cb7cc9f68 Merge pull request #4769 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/retryabledns-1.0.56 2024-02-19 05:51:28 +00:00
dependabot[bot] 20f940ff60 chore(deps): bump github.com/projectdiscovery/goflags
Bumps [github.com/projectdiscovery/goflags](https://github.com/projectdiscovery/goflags) from 0.1.39 to 0.1.40.
- [Release notes](https://github.com/projectdiscovery/goflags/releases)
- [Commits](https://github.com/projectdiscovery/goflags/compare/v0.1.39...v0.1.40)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/goflags
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-02-19 05:31:26 +00:00
dependabot[bot] 8014e15e19 Merge pull request #4772 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/useragent-0.0.38 2024-02-19 05:31:19 +00:00
dependabot[bot] 189ee5a62f chore(deps): bump github.com/projectdiscovery/retryabledns
Bumps [github.com/projectdiscovery/retryabledns](https://github.com/projectdiscovery/retryabledns) from 1.0.55 to 1.0.56.
- [Release notes](https://github.com/projectdiscovery/retryabledns/releases)
- [Commits](https://github.com/projectdiscovery/retryabledns/compare/v1.0.55...v1.0.56)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/retryabledns
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-02-19 05:30:37 +00:00
dependabot[bot] 14e40f1450 Merge pull request #4773 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/retryablehttp-go-1.0.48 2024-02-19 05:28:40 +00:00
dependabot[bot] 325a6acc6f Merge pull request #4771 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/dsl-0.0.44 2024-02-19 05:28:12 +00:00
dependabot[bot] 29db0d86fb chore(deps): bump github.com/projectdiscovery/retryablehttp-go
Bumps [github.com/projectdiscovery/retryablehttp-go](https://github.com/projectdiscovery/retryablehttp-go) from 1.0.47 to 1.0.48.
- [Release notes](https://github.com/projectdiscovery/retryablehttp-go/releases)
- [Commits](https://github.com/projectdiscovery/retryablehttp-go/compare/v1.0.47...v1.0.48)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/retryablehttp-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-02-19 05:08:47 +00:00
dependabot[bot] 542d2bb50d chore(deps): bump github.com/projectdiscovery/useragent
Bumps [github.com/projectdiscovery/useragent](https://github.com/projectdiscovery/useragent) from 0.0.37 to 0.0.38.
- [Release notes](https://github.com/projectdiscovery/useragent/releases)
- [Commits](https://github.com/projectdiscovery/useragent/compare/v0.0.37...v0.0.38)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/useragent
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-02-19 05:08:42 +00:00
dependabot[bot] b392a15db3 chore(deps): bump github.com/projectdiscovery/dsl from 0.0.41 to 0.0.44
Bumps [github.com/projectdiscovery/dsl](https://github.com/projectdiscovery/dsl) from 0.0.41 to 0.0.44.
- [Release notes](https://github.com/projectdiscovery/dsl/releases)
- [Commits](https://github.com/projectdiscovery/dsl/compare/v0.0.41...v0.0.44)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/dsl
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-02-19 05:08:38 +00:00
Ramana Reddy 95f8bd76ad Allow auth option to parse string input as api key (#4750) 2024-02-19 04:19:55 +05:30
Leon Jacobsandsandeep 0bd447834c (feat) add Gitea reporting platform support (#4522)
* (feat) add Gitea reporting platform support

* (fix) remove debugging code

* (chore) fix typo

* (chore) update syntax with recent changes

* (fix) use Index to update issue comments

* (feat) add gitea config example

* added missing option

---------

Co-authored-by: sandeep <[email protected]>
2024-02-19 03:34:37 +05:30
Tarun Koyalwar 4b55c26fc0 add header nil check (#4766) 2024-02-19 02:09:52 +05:30
dependabot[bot] 236f3fc1e3 Merge pull request #4745 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/useragent-0.0.37 2024-02-17 12:20:10 +00:00
dependabot[bot] d7c5b0f2f0 chore(deps): bump github.com/projectdiscovery/useragent
Bumps [github.com/projectdiscovery/useragent](https://github.com/projectdiscovery/useragent) from 0.0.35 to 0.0.37.
- [Release notes](https://github.com/projectdiscovery/useragent/releases)
- [Commits](https://github.com/projectdiscovery/useragent/compare/v0.0.35...v0.0.37)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/useragent
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-02-17 11:56:04 +00:00
Tarun Koyalwar bb15c5b890 Merge pull request #4768 from projectdiscovery/use-params-from-utils
use pdtm params from utils
2024-02-17 17:24:18 +05:30
Tarun Koyalwar 79c98e8bf9 use pdtm params from utils 2024-02-17 17:07:43 +05:30
Tarun Koyalwar 2cbc21e228 fix stop-at-first-match issue in http protocol (#4752)
* fix stop-at-first-match issue in http protocol

* spm: synchronize callback exec

* bump nuclei version to v3.2.0-dev

* add spm support for race & pipelined http requests

* support stop-at-first-match in race request

* update spm logic in parallel http & pipeline requests

* fix duplicated event issue

* spm: exit early + threads value override issue
2024-02-13 01:20:19 +05:30
dependabot[bot] 0c652ada79 Merge pull request #4747 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/retryablehttp-go-1.0.47 2024-02-12 06:21:59 +00:00
dependabot[bot] 996c673c9b chore(deps): bump github.com/projectdiscovery/retryablehttp-go
Bumps [github.com/projectdiscovery/retryablehttp-go](https://github.com/projectdiscovery/retryablehttp-go) from 1.0.46 to 1.0.47.
- [Release notes](https://github.com/projectdiscovery/retryablehttp-go/releases)
- [Commits](https://github.com/projectdiscovery/retryablehttp-go/compare/v1.0.46...v1.0.47)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/retryablehttp-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-02-12 06:00:23 +00:00
dependabot[bot] 79aef74775 Merge pull request #4748 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/fastdialer-0.0.58 2024-02-12 05:59:21 +00:00
dependabot[bot] 843695175d Merge pull request #4749 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/goflags-0.1.39 2024-02-12 05:56:03 +00:00
dependabot[bot] 0dfbb698a7 Merge pull request #4746 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/retryabledns-1.0.55 2024-02-12 05:51:33 +00:00
dependabot[bot] 54e9e42453 chore(deps): bump github.com/projectdiscovery/goflags
Bumps [github.com/projectdiscovery/goflags](https://github.com/projectdiscovery/goflags) from 0.1.37 to 0.1.39.
- [Release notes](https://github.com/projectdiscovery/goflags/releases)
- [Commits](https://github.com/projectdiscovery/goflags/compare/v0.1.37...v0.1.39)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/goflags
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-02-12 05:31:13 +00:00
dependabot[bot] 5f8236a59d chore(deps): bump github.com/projectdiscovery/fastdialer
Bumps [github.com/projectdiscovery/fastdialer](https://github.com/projectdiscovery/fastdialer) from 0.0.57 to 0.0.58.
- [Release notes](https://github.com/projectdiscovery/fastdialer/releases)
- [Commits](https://github.com/projectdiscovery/fastdialer/compare/v0.0.57...v0.0.58)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/fastdialer
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-02-12 05:31:08 +00:00
dependabot[bot] 7323774469 chore(deps): bump github.com/projectdiscovery/retryabledns
Bumps [github.com/projectdiscovery/retryabledns](https://github.com/projectdiscovery/retryabledns) from 1.0.54 to 1.0.55.
- [Release notes](https://github.com/projectdiscovery/retryabledns/releases)
- [Commits](https://github.com/projectdiscovery/retryabledns/compare/v1.0.54...v1.0.55)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/retryabledns
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-02-12 05:30:58 +00:00
Ramana ReddyandGitHub Action d60c846439 Fix workflow to publish docs (#4743)
* Fix workflow to publish docs

* Auto Generate Syntax Docs + JSONSchema [Thu Feb  8 13:24:29 UTC 2024] 🤖

---------

Co-authored-by: GitHub Action <[email protected]>
2024-02-08 19:13:26 +05:30
Mzack9999 7e108cdd82 Merge pull request #4737 from projectdiscovery/bugfix-4518-optional-read
network layer should not have forceful read
2024-02-07 22:31:02 +01:00
Ramana Reddy e2527970cc Update engine field of code request to accept any engine value (#4731) 2024-02-08 01:05:12 +05:30
Tarun KoyalwarandSandeep Singh 36985345a9 javascript bindings + docs generation enhancements ( generate typescript defination .d.ts files) (#4487)
* introduce typescript files generation using ast + tmpl

* feat valid ts with scraping

* feat remove old logic + tsdocs for all modules

* fix ikev and related bugs

* typescript docs for js modules

* lint,build + ldap realm fix

* go mod tidy

* fix named imports ast parsing

* fix ast code generation errors

* complete support for ts files generation

* support go global/const in ts docs

* updated template

* feat: typescript using go code generation

* nuke jsdoc generator

* update generated ts dir structure

* fix multifile ts gen issue

* fix panic in ts code gen

* fix test

* update docs of js libs

* feat: add doc+example for every js class,function,method

* fix missing quotes in ikev example

---------

Co-authored-by: Sandeep Singh <[email protected]>
2024-02-07 21:45:40 +05:30
Mzack9999 14a2775808 Merge pull request #4740 from projectdiscovery/bugfix-dns-resolvers
use system resolver first with system-resolvers
2024-02-07 12:30:49 +01:00
mzack 099c2bb679 use system resolver first with system-resolvers 2024-02-06 21:49:05 +01:00
mzack a0216e4cc9 network layer should not have forceful read 2024-02-06 19:31:23 +01:00
Tarun Koyalwar 7647af1722 Merge pull request #4667 from 5amu/ldap-protocol-enhancements
ldap protocol enhancements
2024-02-06 04:28:50 +05:30
Tarun Koyalwar 66bc616fd2 update js proto bindings 2024-02-06 04:02:53 +05:30
Tarun Koyalwar fd2ab3ce8a refactor to use nucleijs utils 2024-02-06 03:55:57 +05:30
Tarun Koyalwar 0e11bd7196 Merge remote-tracking branch 'upstream/dev' into ldap-protocol-enhancements 2024-02-06 02:38:38 +05:30
Tarun Koyalwar 3b75db46c7 Merge pull request #4647 from 5amu/remove-kerberos-dependency
switch dependency for kerberos js module (ropnop/gorkb5 -> jcmturner/gokrb5)
2024-02-06 02:37:57 +05:30
Tarun Koyalwar 71154918b0 fix network policy error 2024-02-06 02:03:33 +05:30
Tarun Koyalwar d6ee445feb go mod tidy 2024-02-05 23:56:57 +05:30
Tarun Koyalwar 01487ba1b8 network policy check + ASREP method 2024-02-05 23:56:16 +05:30
Tarun Koyalwar 06d9de3a27 refactor kerberos with nucleijs helper 2024-02-05 23:21:04 +05:30
dependabot[bot] 7322b0d93d Merge pull request #4727 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/retryabledns-1.0.54 2024-02-05 07:01:16 +00:00
dependabot[bot] f5d28902a2 chore(deps): bump github.com/projectdiscovery/retryabledns
Bumps [github.com/projectdiscovery/retryabledns](https://github.com/projectdiscovery/retryabledns) from 1.0.53 to 1.0.54.
- [Release notes](https://github.com/projectdiscovery/retryabledns/releases)
- [Commits](https://github.com/projectdiscovery/retryabledns/compare/v1.0.53...v1.0.54)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/retryabledns
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-02-05 06:38:15 +00:00
dependabot[bot] 226dc65205 Merge pull request #4729 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/retryablehttp-go-1.0.46 2024-02-05 06:35:22 +00:00
dependabot[bot] 390cb43632 Merge pull request #4725 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/ratelimit-0.0.27 2024-02-05 06:25:57 +00:00
dependabot[bot] 1d30cbf22d chore(deps): bump github.com/projectdiscovery/retryablehttp-go
Bumps [github.com/projectdiscovery/retryablehttp-go](https://github.com/projectdiscovery/retryablehttp-go) from 1.0.44 to 1.0.46.
- [Release notes](https://github.com/projectdiscovery/retryablehttp-go/releases)
- [Commits](https://github.com/projectdiscovery/retryablehttp-go/compare/v1.0.44...v1.0.46)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/retryablehttp-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-02-05 06:06:34 +00:00
dependabot[bot] ec6ef264ac chore(deps): bump github.com/projectdiscovery/ratelimit
Bumps [github.com/projectdiscovery/ratelimit](https://github.com/projectdiscovery/ratelimit) from 0.0.26 to 0.0.27.
- [Release notes](https://github.com/projectdiscovery/ratelimit/releases)
- [Commits](https://github.com/projectdiscovery/ratelimit/compare/v0.0.26...v0.0.27)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/ratelimit
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-02-05 06:05:46 +00:00
dependabot[bot] 481fcd1f02 Merge pull request #4726 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/utils-0.0.77 2024-02-05 06:04:35 +00:00
dependabot[bot] 86d3f3bffb Merge pull request #4728 from projectdiscovery/dependabot/go_modules/dev/github.com/projectdiscovery/httpx-1.3.9 2024-02-05 06:04:00 +00:00
dependabot[bot] 42962c8f00 chore(deps): bump github.com/projectdiscovery/httpx from 1.3.8 to 1.3.9
Bumps [github.com/projectdiscovery/httpx](https://github.com/projectdiscovery/httpx) from 1.3.8 to 1.3.9.
- [Release notes](https://github.com/projectdiscovery/httpx/releases)
- [Changelog](https://github.com/projectdiscovery/httpx/blob/main/.goreleaser.yml)
- [Commits](https://github.com/projectdiscovery/httpx/compare/v1.3.8...v1.3.9)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/httpx
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-02-05 05:38:09 +00:00
dependabot[bot] b137f322f0 chore(deps): bump github.com/projectdiscovery/utils
Bumps [github.com/projectdiscovery/utils](https://github.com/projectdiscovery/utils) from 0.0.76 to 0.0.77.
- [Release notes](https://github.com/projectdiscovery/utils/releases)
- [Changelog](https://github.com/projectdiscovery/utils/blob/main/CHANGELOG.md)
- [Commits](https://github.com/projectdiscovery/utils/compare/v0.0.76...v0.0.77)

---
updated-dependencies:
- dependency-name: github.com/projectdiscovery/utils
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-02-05 05:37:51 +00:00
denysvitali-niantic 340c953138 feat: add SystemResolvers / InternalResolversList options to NetworkConfig (#4719) 2024-02-02 22:27:00 +05:30
sandeep ee68de6ea8 version update 2024-02-02 22:19:07 +05:30
Tarun Koyalwar 29e8e4e5a3 fix concurrent map writes in tmplexec package (#4718)
* fix concurrent map writes

* catch any possible panics
2024-02-02 21:36:48 +05:30
sandeep e2effc33c1 version update 2024-02-02 03:08:56 +05:30
Tarun Koyalwar cc732875cd javascript: pooling and reuse with export functions + misc updates (#4709)
* js hotfix: wrap javascript source in anon functions

* mysql module improvements

* misc mysql bugs

* js vm pooling: soft deprecation + incentivised pooling

* misc updates

* disable interactsh failed test

* disable interactsh.yaml integration test on win & mac
2024-02-02 02:22:04 +05:30
GitHub Action 68ab3d0152 Auto Generate Syntax Docs + JSONSchema [Thu Feb 1 20:36:30 UTC 2024] 🤖 2024-02-01 20:36:30 +00:00
Tarun Koyalwar ead58f4ab9 implicit thread count when not specified in payloads + threads support in dns,network (#4715)
* default threads + add threads support in dns payloads

* add threads support in network protocol

* add optional callback to override threadSetter

* fix broken fuzz integration tests
2024-02-02 02:05:30 +05:30
Tarun Koyalwar e4298a5ae1 fix misc issues with -as (#4714) 2024-02-02 01:48:22 +05:30
dependabot[bot] 3456606846 chore(deps): bump github.com/opencontainers/runc from 1.1.9 to 1.1.12 (#4712)
Bumps [github.com/opencontainers/runc](https://github.com/opencontainers/runc) from 1.1.9 to 1.1.12.
- [Release notes](https://github.com/opencontainers/runc/releases)
- [Changelog](https://github.com/opencontainers/runc/blob/v1.1.12/CHANGELOG.md)
- [Commits](https://github.com/opencontainers/runc/compare/v1.1.9...v1.1.12)

---
updated-dependencies:
- dependency-name: github.com/opencontainers/runc
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-01 12:51:46 +05:30
xxcddandTarun Koyalwar 8d904709c0 HybridTechDetection with wappalyzer and tech templates. (#4656)
* HybridTechDetection with wappalyzer and tech templates.

* automatic scan: refactor + misc updates

* fix progress multi init panic

* fix no result found statement

* fix target in print statement

* include detect,favicon tags as part of detection

---------

Co-authored-by: Tarun Koyalwar <[email protected]>
2024-02-01 12:49:20 +05:30
Dogan Can Bakir 5f4dcfb6be use projectdiscovery/useragent (#4708)
* use projectdiscovery/useragent

* minor
2024-02-01 03:12:38 +05:30
Dogan Can Bakir 7345e6705b add passive sdk option (#4684) 2024-02-01 01:01:20 +05:30
Tarun Koyalwar 2c2cc2774a feat: introduce nucleijs utils 2024-01-23 04:11:04 +05:30
5amu 2f926c4f72 implement method to close the ldap connection 2024-01-21 19:50:33 +01:00
5amu 2019dab187 implement utilities for timestamps 2024-01-21 18:14:20 +01:00
5amu 642c99bcff move DecodeSID to utils.go making it a generic function exposed by the module 2024-01-21 17:57:23 +01:00
5amu c703fffe80 implement method to grab domain SID 2024-01-21 17:31:08 +01:00
5amu 95d028c5f9 move ad filters to adenum.go 2024-01-21 17:12:09 +01:00
5amu 9d23f5f88f implement enumeration methods + rewrite kerberoastable 2024-01-21 17:11:28 +01:00
5amu 89d30d94d6 implement generic method to find AD objects 2024-01-21 16:55:17 +01:00
5amu 893129eb17 reflect changes for gojs 2024-01-21 12:54:49 +01:00
5amu 6bf8f8769b define frequently used filters and AD UAC filters 2024-01-21 12:53:41 +01:00
5amu cb0d98e4b2 do not append an empty map when generating output in Search() 2024-01-20 23:59:26 +01:00
5amu 9821700f8e simplify CollectMetadata and remove session creation at runtime 2024-01-20 23:57:57 +01:00
5amu bd1238d27e implement authentication methods and change underlying connection because of bugs 2024-01-20 21:02:08 +01:00
5amu fe59057c0d implement a generic search that returns a list of objects given a filter and desired attributes 2024-01-20 12:22:36 +01:00
5amu 73a73eeeac implement method to connect to and verify the ldap server (IsLdap -> Connect) 2024-01-20 01:50:54 +01:00
5amu a167e6c57b make protocolstate.IsHostAllowed check the domaincontroller, not the domain 2024-01-20 00:39:29 +01:00
5amu 3b5ce39e86 make protocolstate.IsHostAllowed check the domaincontroller, not the domain 2024-01-16 10:24:26 +01:00
5amu 77e2430788 switch dependency for kerberos in js module to upstream 2024-01-16 10:22:45 +01:00
567 changed files with 30750 additions and 8665 deletions

No files matched your search

+72
View File
@@ -0,0 +1,72 @@
name: Bug Report
description: Create a report to help us to improve the Nuclei.
title: "[BUG] ..."
labels: ["Type: Bug"]
body:
- type: markdown
attributes:
value: |
Thanks for taking the time to fill out this bug report!
For support requests, FAQs or "How to" questions, please use the [GitHub Discussions](https://github.com/projectdiscovery/nuclei/discussions) section instead or join our [Discord server](https://discord.gg/projectdiscovery) to discuss the idea on the **#nuclei** channel.
:warning: **Issues missing important information may be closed without further investigation.**
- type: checkboxes
attributes:
label: Is there an existing issue for this?
description: Please search to see if an issue already exists for the bug you encountered.
options:
- label: I have searched the existing issues.
required: true
- type: textarea
attributes:
label: Current Behavior
description: A concise description of what you're experiencing.
validations:
required: true
- type: textarea
attributes:
label: Expected Behavior
description: A concise description of what you expected to happen.
validations:
required: true
- type: textarea
attributes:
label: Steps To Reproduce
description: |
Steps to reproduce the behavior, for example, commands to run Nuclei.
:warning: **Please redact any literal target hosts/URLs or other sensitive information.**
placeholder: |
1. Run `nuclei -t ...`
validations:
required: true
- type: textarea
attributes:
label: Relevant log output
description: Please copy and paste any relevant log output. This will be automatically formatted into code, so no need for backticks.
render: shell
- type: textarea
attributes:
label: Environment
description: |
Examples:
- **OS**: Ubuntu 20.04
- **Nuclei** (`nuclei -version`): v3.3.1
- **Go** (`go version`): go1.22.0 _(only if you've installed it via the `go install` command)_
value: |
- OS:
- Nuclei:
- Go:
render: markdown
validations:
required: true
- type: textarea
attributes:
label: Anything else?
description: |
Links? References? Templates? Anything that will give us more context about the issue you are encountering!
Tip: You can attach images or log files by clicking this area to highlight it and then dragging files in.
validations:
required: false
@@ -0,0 +1,37 @@
name: Feature Request
description: Request feature to implement in the Nuclei.
title: "[FEATURE] ..."
labels: ["Type: Enhancement"]
body:
- type: markdown
attributes:
value: |
Thanks for taking the time to fill out this feature request!
Please make sure to provide a detailed description with all the relevant information that might be required to start working on this feature. In case you are not sure about your request or whether the particular feature is already supported or not, please [start a discussion](https://github.com/projectdiscovery/nuclei/discussions/categories/ideas) instead.
Join our [Discord server](https://discord.gg/projectdiscovery) to discuss the idea on the **#nuclei** channel.
- type: textarea
attributes:
label: Describe your feature request
description: A clear and concise description of feature to implement.
validations:
required: true
- type: textarea
attributes:
label: Describe the use case of the feature
description: A clear and concise description of the feature request's motivation and the use-cases in which it could be useful.
validations:
required: true
- type: textarea
attributes:
label: Describe alternatives you've considered
description: A clear and concise description of any alternative solutions or features you've considered.
validations:
required: false
- type: textarea
attributes:
label: Additional context
description: Add any other context about the feature request here.
validations:
required: false
-21
View File
@@ -1,21 +0,0 @@
---
name: Feature request
about: Request feature to implement in this project
title: ""
labels: 'Type: Enhancement'
assignees: ''
---
<!--
1. Please make sure to provide a detailed description with all the relevant information that might be required to start working on this feature.
2. In case you are not sure about your request or whether the particular feature is already supported or not, please start a discussion instead.
3. GitHub Discussion: https://github.com/projectdiscovery/nuclei/discussions/categories/ideas
4. Join our discord server at https://discord.gg/projectdiscovery to discuss the idea on the #nuclei channel.
-->
### Please describe your feature request:
<!-- A clear and concise description of feature to implement -->
### Describe the use case of this feature:
<!-- A clear and concise description of the feature request's motivation and the use-cases in which it could be useful. -->
-36
View File
@@ -1,36 +0,0 @@
---
name: Issue report
about: Create a report to help us to improve the project
labels: 'Type: Bug'
---
<!--
1. Please search to see if an issue already exists for the bug you encountered.
2. For support requests, FAQs or "How to" questions, please use the GitHub Discussions section instead - https://github.com/projectdiscovery/nuclei/discussions or
3. Join our discord server at https://discord.gg/projectdiscovery and post the question on the #nuclei channel.
-->
<!-- ISSUES MISSING IMPORTANT INFORMATION MAY BE CLOSED WITHOUT INVESTIGATION. -->
### Nuclei version:
<!-- You can find current version of nuclei with "nuclei -version" -->
<!-- We only accept issues that are reproducible on the latest version of nuclei. -->
<!-- You can find the latest version of project at https://github.com/projectdiscovery/nuclei/releases/ -->
### Current Behavior:
<!-- A concise description of what you're experiencing. -->
### Expected Behavior:
<!-- A concise description of what you expected to happen. -->
### Steps To Reproduce:
<!--
Example: steps to reproduce the behavior:
1. Run 'nuclei -t ... -u ..'
2. See error...
-->
### Anything else:
<!-- Links? References? Screenshots? Anything that will give us more context about the issue that you are encountering! -->
+8
View File
@@ -0,0 +1,8 @@
addReviewers: true
reviewers:
- dogancanbakir
numberOfReviewers: 1
# A list of keywords to be skipped the process that add reviewers if pull requests include it
# skipKeywords:
# - wip
+18 -16
View File
@@ -12,28 +12,23 @@ jobs:
name: Test Builds
strategy:
matrix:
go-version: [1.21.x]
os: [ubuntu-latest, windows-latest, macOS-latest]
runs-on: ${{ matrix.os }}
steps:
- name: Set up Go
uses: actions/setup-go@v4
with:
go-version: ${{ matrix.go-version }}
- name: Check out code
uses: actions/checkout@v4
- name: Set up Python # required for running python code in py-snippet.yaml integration test
- name: Set up Go
uses: projectdiscovery/actions/setup/go@v1
# required for running python code in py-snippet.yaml integration test
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: '3.10'
- name: Check out code
uses: actions/checkout@v3
- name: Go Mod hygiene
run: |
go clean -modcache
go mod tidy
- name: Verify Go modules
run: make verify
- name: Build
run: go build .
@@ -42,6 +37,7 @@ jobs:
- name: Test
env:
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
PDCP_API_KEY: "${{ secrets.PDCP_API_KEY }}"
run: go test ./...
- name: Integration Tests
@@ -49,6 +45,7 @@ jobs:
env:
GH_ACTION: true
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
PDCP_API_KEY: "${{ secrets.PDCP_API_KEY }}"
run: |
chmod +x run.sh
bash run.sh ${{ matrix.os }}
@@ -63,6 +60,11 @@ jobs:
run: go run .
working-directory: examples/simple/
- name: Example SDK Advanced
# Temporarily disabled very flaky in github actions
# - name: Example SDK Advanced
# run: go run .
# working-directory: examples/advanced/
- name: Example SDK with speed control
run: go run .
working-directory: examples/advanced/
working-directory: examples/with_speed_control/
+4 -6
View File
@@ -15,13 +15,11 @@ jobs:
matrix:
os: [ubuntu-latest, windows-latest, macOS-latest]
steps:
- name: Set up Go
uses: actions/setup-go@v4
with:
go-version: 1.21.x
- name: Check out code
uses: actions/checkout@v3
uses: actions/checkout@v4
- name: Set up Go
uses: projectdiscovery/actions/setup/go@v1
- name: Functional Tests
env:
+5 -10
View File
@@ -12,16 +12,11 @@ jobs:
name: Lint Test
runs-on: ubuntu-latest
steps:
- name: Set up Go
uses: actions/setup-go@v4
with:
go-version: 1.21.x
- name: Checkout code
uses: actions/checkout@v3
uses: actions/checkout@v4
- name: Set up Go
uses: projectdiscovery/actions/setup/go@v1
- name: Run golangci-lint
uses: golangci/[email protected]
with:
version: latest
args: --timeout 5m
uses: projectdiscovery/actions/golangci-lint@v1
+7 -11
View File
@@ -11,23 +11,19 @@ jobs:
name: Test Performance
strategy:
matrix:
go-version: [1.21.x]
os: [ubuntu-latest, macOS-latest]
runs-on: ${{ matrix.os }}
if: github.repository == 'projectdiscovery/nuclei'
steps:
- name: Set up Go
uses: actions/setup-go@v4
with:
go-version: ${{ matrix.go-version }}
- name: Check out code
uses: actions/checkout@v3
uses: actions/checkout@v4
- name: Go Mod hygine
run: |
go clean -modcache
go mod tidy
- name: Set up Go
uses: projectdiscovery/actions/setup/go@v1
- name: Verify Go modules
run: make verify
# Max GH exection time 6H => timeout after that
- name: Running performance with big list
+6 -7
View File
@@ -11,14 +11,15 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: "Set up Go"
uses: actions/setup-go@v4
with:
go-version: 1.21.x
uses: projectdiscovery/actions/setup/go@v1
- name: "Set up Git"
uses: projectdiscovery/actions/setup/git@v1
- name: Generate YAML Syntax Documentation
id: generate-docs
@@ -29,14 +30,12 @@ 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
if: steps.generate-docs.outputs.CHANGES > 0
run: |
git config --local user.email "[email protected]"
git config --local user.name "GitHub Action"
git add SYNTAX-REFERENCE.md nuclei-jsonschema.json
git commit -m "Auto Generate Syntax Docs + JSONSchema [$(date)] :robot:" -a
+5 -8
View File
@@ -9,20 +9,17 @@ on:
jobs:
release:
runs-on: ubuntu-latest-16-cores
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: actions/setup-go@v4
with:
go-version: 1.21.x
- name: Set up Go
uses: projectdiscovery/actions/setup/go@v1
- uses: goreleaser/goreleaser-action@v4
- uses: projectdiscovery/actions/goreleaser@v1
with:
args: "release --rm-dist"
version: latest
release: true
env:
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
SLACK_WEBHOOK: "${{ secrets.RELEASE_SLACK_WEBHOOK }}"
+4 -9
View File
@@ -12,17 +12,12 @@ jobs:
runs-on: ubuntu-latest-16-cores
steps:
- name: "Check out code"
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set up Go
uses: actions/setup-go@v4
with:
go-version: 1.21.x
uses: projectdiscovery/actions/setup/go@v1
- name: release test
uses: goreleaser/goreleaser-action@v4
with:
args: "release --clean --snapshot"
version: latest
- name: Release snapshot
uses: projectdiscovery/actions/goreleaser@v1
+3 -4
View File
@@ -10,10 +10,9 @@ jobs:
build:
runs-on: ubuntu-latest-16-cores
steps:
- uses: actions/checkout@v3
- uses: actions/setup-go@v4
with:
go-version: 1.21.x
- uses: actions/checkout@v4
- uses: projectdiscovery/actions/setup/go@v1
- name: Template Validation
run: |
+36 -25
View File
@@ -1,31 +1,42 @@
# Misc
**/*-cache
**/*-config
**/.cache
*.DS_Store
*.exe
.devcontainer
.gitignore
.idea
.vscode
.devcontainer
vendor
# Binaries
**/bindgen
**/debug-*
**/docgen
**/functional-test
**/fuzzplayground
**/integration-test
**/jsdocgen
**/main
**/memogen
**/nuclei
**/nuclei-stats*
**/nuclei_dev
**/nuclei_main
**/scan-charts
**/scrapefunc
**/scrapefuncs
**/tsgen
# Templates
/*.yaml
# Generated docs
/dsl.md
# Junk
dist
integration_tests/nuclei
integration_tests/.cache
integration_tests/integration-test
cmd/nuclei/main
cmd/nuclei/nuclei
cmd/integration-test/nuclei
cmd/functional-test/nuclei_dev
cmd/functional-test/nuclei_main
cmd/functional-test/functional-test
cmd/docgen/docgen
pkg/protocols/common/helpers/deserialization/testdata/Deserialize.class
pkg/protocols/common/helpers/deserialization/testdata/ValueObject.class
pkg/protocols/common/helpers/deserialization/testdata/ValueObject2.ser
*.exe
.gitignore
pkg/js/devtools/bindgen/cmd/bindgen/bindgen
pkg/js/devtools/jsdocgen/jsdocgen
*.DS_Store
pkg/protocols/headless/engine/.cache
/nuclei
/bindgen
/jsdocgen
/scrapefuncs
/integration_tests/.cache/
/integration_tests/.nuclei-config/
/*.yaml
vendor
+1 -1
View File
@@ -8,7 +8,7 @@ RUN go mod download
RUN go build ./cmd/nuclei
# Release
FROM alpine:3.18.2
FROM alpine:3.18.6
RUN apk -U upgrade --no-cache \
&& apk add --no-cache bind-tools chromium ca-certificates
COPY --from=build-env /app/nuclei /usr/local/bin/
+106 -16
View File
@@ -1,37 +1,127 @@
# Go parameters
GOCMD=go
GOBUILD=$(GOCMD) build
GOMOD=$(GOCMD) mod
GOTEST=$(GOCMD) test
GOCMD := go
GOBUILD := $(GOCMD) build
GOBUILD_OUTPUT :=
GOBUILD_PACKAGES :=
GOBUILD_ADDITIONAL_ARGS :=
GOMOD := $(GOCMD) mod
GOTEST := $(GOCMD) test
GOFLAGS := -v
# This should be disabled if the binary uses pprof
LDFLAGS := -s -w
ifneq ($(shell go env GOOS),darwin)
LDFLAGS := -extldflags "-static"
LDFLAGS = -extldflags "-static"
endif
.PHONY: all build build-stats clean devtools-all devtools-bindgen devtools-scrapefuncs
.PHONY: devtools-tsgen docs dsl-docs functional fuzzplayground go-build integration
.PHONY: jsupdate-all jsupdate-bindgen jsupdate-tsgen memogen scan-charts test tidy ts verify
all: build
build:
$(GOBUILD) $(GOFLAGS) -ldflags '$(LDFLAGS)' -o "nuclei" cmd/nuclei/main.go
clean:
rm -f '${GOBUILD_OUTPUT}' 2>/dev/null
go-build: clean
go-build:
$(GOBUILD) $(GOFLAGS) -ldflags '${LDFLAGS}' $(GOBUILD_ADDITIONAL_ARGS) \
-o '${GOBUILD_OUTPUT}' $(GOBUILD_PACKAGES)
build: GOBUILD_OUTPUT = nuclei
build: GOBUILD_PACKAGES = cmd/nuclei/main.go
build: go-build
build-stats: GOBUILD_OUTPUT = nuclei-stats
build-stats: GOBUILD_PACKAGES = cmd/nuclei/main.go
build-stats: GOBUILD_ADDITIONAL_ARGS = -tags=stats
build-stats: go-build
scan-charts: GOBUILD_OUTPUT = scan-charts
scan-charts: GOBUILD_PACKAGES = cmd/scan-charts/main.go
scan-charts: go-build
docs: GOBUILD_OUTPUT = cmd/docgen/docgen
docs: GOBUILD_PACKAGES = cmd/docgen/docgen.go
docs: bin = dstdocgen
docs:
if ! which dstdocgen > /dev/null; then
echo -e "Command not found! Install? (y/n) \c"
go get -v github.com/projectdiscovery/yamldoc-go/cmd/docgen/dstdocgen
@if ! which $(bin) >/dev/null; then \
read -p "${bin} not found. Do you want to install it? (y/n) " answer; \
if [ "$$answer" = "y" ]; then \
echo "Installing ${bin}..."; \
go get -v github.com/projectdiscovery/yamldoc-go/cmd/docgen/$(bin); \
go install -v github.com/projectdiscovery/yamldoc-go/cmd/docgen/$(bin); \
else \
echo "Please install ${bin} manually."; \
exit 1; \
fi \
fi
# TODO: Handle the panic, so that we just need to run `go install $(bin)@latest` (line 51-52)
$(GOCMD) generate pkg/templates/templates.go
$(GOBUILD) -o "cmd/docgen/docgen" cmd/docgen/docgen.go
./cmd/docgen/docgen docs.md nuclei-jsonschema.json
$(GOBUILD) -o "${GOBUILD_OUTPUT}" $(GOBUILD_PACKAGES)
./$(GOBUILD_OUTPUT) docs.md nuclei-jsonschema.json
git reset --hard # line 59
test:
$(GOTEST) $(GOFLAGS) ./...
integration:
cd integration_tests; bash run.sh
functional:
cd cmd/functional-test; bash run.sh
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 "scrapefuncs" pkg/js/devtools/scrapefuncs/main.go
verify: tidy
$(GOMOD) verify
devtools-bindgen: GOBUILD_OUTPUT = bindgen
devtools-bindgen: GOBUILD_PACKAGES = pkg/js/devtools/bindgen/cmd/bindgen/main.go
devtools-bindgen: go-build
devtools-tsgen: GOBUILD_OUTPUT = tsgen
devtools-tsgen: GOBUILD_PACKAGES = pkg/js/devtools/tsgen/cmd/tsgen/main.go
devtools-tsgen: go-build
devtools-scrapefuncs: GOBUILD_OUTPUT = scrapefuncs
devtools-scrapefuncs: GOBUILD_PACKAGES = pkg/js/devtools/scrapefuncs/main.go
devtools-scrapefuncs: go-build
devtools-all: devtools-bindgen devtools-tsgen devtools-scrapefuncs
jsupdate-bindgen: GOBUILD_OUTPUT = bindgen
jsupdate-bindgen: GOBUILD_PACKAGES = pkg/js/devtools/bindgen/cmd/bindgen/main.go
jsupdate-bindgen: go-build
jsupdate-bindgen:
./$(GOBUILD_OUTPUT) -dir pkg/js/libs -out pkg/js/generated
jsupdate-tsgen: GOBUILD_OUTPUT = tsgen
jsupdate-tsgen: GOBUILD_PACKAGES = pkg/js/devtools/tsgen/cmd/tsgen/main.go
jsupdate-tsgen: go-build
jsupdate-tsgen:
./$(GOBUILD_OUTPUT) -dir pkg/js/libs -out pkg/js/generated/ts
jsupdate-all: jsupdate-bindgen jsupdate-tsgen
ts: jsupdate-tsgen
fuzzplayground: GOBUILD_OUTPUT = fuzzplayground
fuzzplayground: GOBUILD_PACKAGES = cmd/tools/fuzzplayground/main.go
fuzzplayground: LDFLAGS = -s -w
fuzzplayground: go-build
memogen: GOBUILD_OUTPUT = memogen
memogen: GOBUILD_PACKAGES = cmd/memogen/memogen.go
memogen: go-build
memogen:
./$(GOBUILD_OUTPUT) -src pkg/js/libs -tpl cmd/memogen/function.tpl
dsl-docs: GOBUILD_OUTPUT = scrapefuncs
dsl-docs: GOBUILD_PACKAGES = pkg/js/devtools/scrapefuncs/main.go
dsl-docs:
./$(GOBUILD_OUTPUT) -out dsl.md
+52 -26
View File
@@ -20,11 +20,9 @@
<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> •
<a href="https://docs.projectdiscovery.io/tools/nuclei/faq">FAQs</a> •
<a href="https://discord.gg/projectdiscovery">Join Discord</a>
</p>
@@ -32,7 +30,10 @@
<a href="https://github.com/projectdiscovery/nuclei/blob/main/README.md">English</a> •
<a href="https://github.com/projectdiscovery/nuclei/blob/main/README_CN.md">中文</a> •
<a href="https://github.com/projectdiscovery/nuclei/blob/main/README_KR.md">Korean</a> •
<a href="https://github.com/projectdiscovery/nuclei/blob/main/README_ID.md">Indonesia</a>
<a href="https://github.com/projectdiscovery/nuclei/blob/main/README_ID.md">Indonesia</a> •
<a href="https://github.com/projectdiscovery/nuclei/blob/main/README_ES.md">Spanish</a> •
<a href="https://github.com/projectdiscovery/nuclei/blob/main/README_JP.md">日本語</a>
</p>
</p>
---
@@ -115,12 +116,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
@@ -134,8 +140,10 @@ TEMPLATES:
-nss, -no-strict-syntax disable strict syntax check on templates
-td, -template-display displays the templates content
-tl list all available templates
-tgl list all available tags
-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)
@@ -144,8 +152,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
@@ -171,9 +179,12 @@ OUTPUT:
-se, -sarif-export string file to export results in SARIF format
-je, -json-export string file to export results in JSON format
-jle, -jsonl-export string file to export results in JSONL(ine) format
-rd, -redact string[] redact given list of keys from query parameter, request header and body
CONFIGURATIONS:
-config string path to the nuclei configuration file
-tp, -profile string template profile config file to run
-tpl, -profile-list list community template profiles
-fr, -follow-redirects enable following redirects for http templates
-fhr, -follow-host-redirects follow redirects on the same host
-mr, -max-redirects int max number of redirects to follow for http templates (default 10)
@@ -193,17 +204,17 @@ CONFIGURATIONS:
-sml, -show-match-line show match lines for file templates, works with extractors only
-ztls use ztls library with autofallback to standard one for tls13 [Deprecated] autofallback to ztls is enabled by default
-sni string tls sni hostname to use (default: input domain name)
-dt, -dialer-timeout value timeout for network requests.
-dka, -dialer-keep-alive value keep-alive duration for network requests.
-lfa, -allow-local-file-access allows file (payload) access anywhere on the system
-lna, -restrict-local-network-access blocks connections to the local / private network
-i, -interface string network interface to use for network scan
-at, -attack-type string type of payload combinations to perform (batteringram,pitchfork,clusterbomb)
-sip, -source-ip string source ip address to use for network scan
-rsr, -response-size-read int max response size to read in bytes (default 10485760)
-rsr, -response-size-read int max response size to read in bytes
-rss, -response-size-save int max response size to read in bytes (default 1048576)
-reset reset removes all nuclei configuration and data files (including nuclei-templates)
-tlsi, -tls-impersonate enable experimental client hello (ja3) tls randomization
-hae, -http-api-endpoint string experimental http api endpoint
INTERACTSH:
-iserver, -interactsh-server string interactsh server url for self-hosted instance (default: oast.pro,oast.live,oast.site,oast.online,oast.fun,oast.me)
@@ -215,24 +226,33 @@ INTERACTSH:
-ni, -no-interactsh disable interactsh server for OAST testing, exclude OAST based templates
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)
-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 (Deprecated: use -dast instead)
-dast enable / run dast (fuzz) nuclei templates
-dfp, -display-fuzz-points display fuzz points in the output for debugging
-fuzz-param-frequency int frequency of uninteresting parameters for fuzzing before skipping (default 10)
-fa, -fuzz-aggression string fuzzing aggression level controls payload count for fuzz (low, medium, high) (default "low")
UNCOVER:
-uc, -uncover enable uncover engine
-uq, -uncover-query string[] uncover search query
-ue, -uncover-engine string[] uncover search engine (shodan,censys,fofa,shodan-idb,quake,hunter,zoomeye,netlas,criminalip,publicwww,hunterhow) (default shodan)
-ue, -uncover-engine string[] uncover search engine (shodan,censys,fofa,shodan-idb,quake,hunter,zoomeye,netlas,criminalip,publicwww,hunterhow,google) (default shodan)
-uf, -uncover-field string uncover fields to return (ip,port,host) (default "ip:port")
-ul, -uncover-limit int uncover results to return (default 100)
-ur, -uncover-ratelimit int override ratelimit of engines with unknown ratelimit (default 60 req/min) (default 60)
RATE-LIMIT:
-rl, -rate-limit int maximum number of requests to send per second (default 150)
-rlm, -rate-limit-minute int maximum number of requests to send per minute
-rld, -rate-limit-duration value maximum number of requests to send per second (default 1s)
-rlm, -rate-limit-minute int maximum number of requests to send per minute (DEPRECATED)
-bs, -bulk-size int maximum number of hosts to be analyzed in parallel per template (default 25)
-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)
-prc, -probe-concurrency int http probe concurrency with httpx (default 50)
OPTIMIZATIONS:
-timeout int time to wait in seconds before timeout (default 10)
@@ -290,26 +310,32 @@ STATISTICS:
-mp, -metrics-port int port to expose nuclei metrics on (default 9092)
CLOUD:
-auth configure projectdiscovery cloud (pdcp) api key
-cup, -cloud-upload upload scan results to pdcp dashboard
-sid, -scan-id string upload scan results to given scan id
-auth configure projectdiscovery cloud (pdcp) api key (default true)
-tid, -team-id string upload scan results to given team id (optional) (default "none")
-cup, -cloud-upload upload scan results to pdcp dashboard
-sid, -scan-id string upload scan results to existing scan id (optional)
-sname, -scan-name string scan name to set (optional)
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
```
+9 -8
View File
@@ -23,8 +23,8 @@
<a href="#对于安全工程师">对于安全工程师</a> •
<a href="#对于开发和组织">对于开发者</a> •
<a href="https://nuclei.projectdiscovery.io/nuclei/get-started/">文档</a> •
<a href="#c致谢">致谢</a> •
<a href="https://nuclei.projectdiscovery.io/faq/nuclei/">常见问题</a> •
<a href="#致谢">致谢</a> •
<a href="https://docs.projectdiscovery.io/tools/nuclei/faq">常见问题</a> •
<a href="https://discord.gg/projectdiscovery">加入Discord</a>
</p>
@@ -32,14 +32,15 @@
<a href="https://github.com/projectdiscovery/nuclei/blob/main/README.md">English</a> •
<a href="https://github.com/projectdiscovery/nuclei/blob/main/README_CN.md">中文</a> •
<a href="https://github.com/projectdiscovery/nuclei/blob/main/README_KR.md">Korean</a> •
<a href="https://github.com/projectdiscovery/nuclei/blob/main/README_ID.md">Indonesia</a>
<a href="https://github.com/projectdiscovery/nuclei/blob/main/README_ID.md">Indonesia</a> •
<a href="https://github.com/projectdiscovery/nuclei/blob/main/README_ES.md">Spanish</a>
</p>
---
Nuclei使用零误报的定制模板向目标发送请求,同时可以对主机进行批量快速扫描。Nuclei提供TCP、DNS、HTTP、FILE等各类协议的扫描,通过强大且灵活的模板,可以使用Nuclei模拟各种安全检查。
我们的[模板仓库](https://github.com/projectdiscovery/nuclei-templates)包含**超过300**安全研究员和工程师提供的模板。
我们的[模板仓库](https://github.com/projectdiscovery/nuclei-templates)包含**超过300名**安全研究员和工程师提供的模板。
@@ -57,7 +58,7 @@ Nuclei使用零误报的定制模板向目标发送请求,同时可以对主
# 安装Nuclei
Nuclei需要**go1**才能安装成功。执行下列命令安装最新版本的Nuclei
Nuclei需要 **go1.21** 才能安装成功。执行下列命令安装最新版本的Nuclei
```sh
go install -v github.com/projectdiscovery/nuclei/v3/cmd/nuclei@latest
@@ -396,8 +397,8 @@ Nuclei通过增加手动、自动的过程,极大地改变了安全评估的
Nuclei构建很简单,通过数百名安全研究员的社区模板,Nuclei可以随时扫描来了解安全威胁。Nuclei通常用来用于复测,以确定漏洞是否被修复。
- **CI/CD:**工程师已经支持了CI/CD,可以通过Nuclei使用定制模板来监控模拟环境和生产环境
- **周期性扫描:**使用Nuclei创建新发现的漏洞模板,通过Nuclei可以周期性扫描消除漏洞
- **CI/CD:** 工程师已经支持了CI/CD,可以通过Nuclei使用定制模板来监控模拟环境和生产环境
- **周期性扫描:** 使用Nuclei创建新发现的漏洞模板,通过Nuclei可以周期性扫描消除漏洞
我们有个[讨论组](https://github.com/projectdiscovery/nuclei-templates/discussions/693),黑客提交自己的模板后可以获得赏金,这可以减少资产的漏洞,并且减少重复。如果你想实行该计划,可以[联系我](mailto:[email protected])。我们非常乐意提供帮助,或者在[讨论组](https://github.com/projectdiscovery/nuclei-templates/discussions/693)中发布相关信息。
@@ -439,7 +440,7 @@ Nuclei构建很简单,通过数百名安全研究员的社区模板,Nuclei
</a>
</p>
另外您可以其他类似的开源项目:
另外您可以了解其他类似的开源项目:
[FFuF](https://github.com/ffuf/ffuf), [Qsfuzz](https://github.com/ameenmaali/qsfuzz), [Inception](https://github.com/proabiral/inception), [Snallygaster](https://github.com/hannob/snallygaster), [Gofingerprint](https://github.com/Static-Flow/gofingerprint), [Sn1per](https://github.com/1N3/Sn1per/tree/master/templates), [Google tsunami](https://github.com/google/tsunami-security-scanner), [Jaeles](https://github.com/jaeles-project/jaeles), [ChopChop](https://github.com/michelin/ChopChop)
+369
View File
@@ -0,0 +1,369 @@
<h1 align="center">
<br>
<a href="https://nuclei.projectdiscovery.io"><img src="static/nuclei-logo.png" width="200px" alt="Nuclei"></a>
</h1>
<h4 align="center">Escáner de vulnerabilidades rápido y personalizable basado en un sencillo DSL basado en YAML.</h4>
<p align="center">
<img src="https://img.shields.io/github/go-mod/go-version/projectdiscovery/nuclei">
<a href="https://github.com/projectdiscovery/nuclei/releases"><img src="https://img.shields.io/github/downloads/projectdiscovery/nuclei/total">
<a href="https://github.com/projectdiscovery/nuclei/graphs/contributors"><img src="https://img.shields.io/github/contributors-anon/projectdiscovery/nuclei">
<a href="https://github.com/projectdiscovery/nuclei/releases/"><img src="https://img.shields.io/github/release/projectdiscovery/nuclei">
<a href="https://github.com/projectdiscovery/nuclei/issues"><img src="https://img.shields.io/github/issues-raw/projectdiscovery/nuclei">
<a href="https://github.com/projectdiscovery/nuclei/discussions"><img src="https://img.shields.io/github/discussions/projectdiscovery/nuclei">
<a href="https://discord.gg/projectdiscovery"><img src="https://img.shields.io/discord/695645237418131507.svg?logo=discord"></a>
<a href="https://twitter.com/pdnuclei"><img src="https://img.shields.io/twitter/follow/pdnuclei.svg?logo=twitter"></a>
</p>
<p align="center">
<a href="#how-it-works">Cómo funciona</a> •
<a href="#install-nuclei">Instalación</a> •
<a href="https://docs.projectdiscovery.io/tools/nuclei/">Documentación</a> •
<a href="#credits">Créditos</a> •
<a href="https://docs.projectdiscovery.io/tools/nuclei/faq">Preguntas Frecuentes</a> •
<a href="https://discord.gg/projectdiscovery">Únete a Discord</a>
</p>
<p align="center">
<a href="https://github.com/projectdiscovery/nuclei/blob/main/README.md">English</a> •
<a href="https://github.com/projectdiscovery/nuclei/blob/main/README_CN.md">中文</a> •
<a href="https://github.com/projectdiscovery/nuclei/blob/main/README_KR.md">Korean</a> •
<a href="https://github.com/projectdiscovery/nuclei/blob/main/README_ID.md">Indonesia</a> •
<a href="https://github.com/projectdiscovery/nuclei/blob/main/README_ES.md">Spanish</a>
</p>
---
Nuclei se utiliza para enviar peticiones a múltiples objetivos basándose en una plantilla, lo que resulta en cero falsos positivos y proporciona un escaneo rápido en un gran número de hosts. Nuclei ofrece escaneos para una variedad de protocolos, incluyendo TCP, DNS, HTTP, SSL, File, Whois, Websocket, Headless, Code, etc. Con plantillas potentes y flexibles, Nuclei puede utilizarse para modelar todo tipo de comprobaciones de seguridad.
Tenemos un [repositorio dedicado](https://github.com/projectdiscovery/nuclei-templates) que alberga varios tipos de plantillas de vulnerabilidades, contribuidas por **más de 300** investigadores y ingenieros de seguridad.
## Cómo funciona
<h3 align="center">
<img src="static/nuclei-flow.jpg" alt="nuclei-flow" width="700px"></a>
</h3>
| :exclamation: **Descargo de responsabilidad** |
|---------------------------------|
| **Este proyecto está en desarrollo activo**. Es de esperar que se produzcan cambios importantes con las nuevas versiones. Consulte el registro de cambios de la versión antes de actualizar. |
| Este proyecto fue principalmente desarrollado para ser utilizado como una herramienta CLI independiente. **Ejecutar nuclei como un servicio puede suponer riesgos de seguridad.** Se recomienda utilizarlo con precaución y tomar medidas de seguridad adicionales. |
# Instalación de Nuclei
Nuclei requiere **go1.21** para instalarse correctamente. Ejecute el siguiente comando para instalar la última versión -
```sh
go install -v github.com/projectdiscovery/nuclei/v3/cmd/nuclei@latest
```
<details>
<summary>Brew</summary>
```sh
brew install nuclei
```
</details>
<details>
<summary>Docker</summary>
```sh
docker pull projectdiscovery/nuclei:latest
```
</details>
**Más métodos de instalación [pueden encontrarse aquí](https://docs.projectdiscovery.io/tools/nuclei/install).**
<table>
<tr>
<td>
### Plantillas de Nuclei
Nuclei cuenta con soporte incorporado para la descarga/actualización automática de plantillas desde la versión [v2.5.2](https://github.com/projectdiscovery/nuclei/releases/tag/v2.5.2) en adelante. El proyecto [**Nuclei-Templates**](https://github.com/projectdiscovery/nuclei-templates) proporciona una lista de plantillas listas para usar, aportadas por la comunidad, y que se actualizan constantemente.
También puedes utilizar la bandera `update-templates` para actualizar las plantillas de Nuclei en cualquier momento; puedes escribir tus propias pruebas para tu flujo de trabajo y necesidades individuales siguiendo la [guía de plantillas](https://docs.projectdiscovery.io/templates/) de Nuclei.
La sintaxis de referencia YAML DSL está disponible [aquí](SYNTAX-REFERENCE.md).
</td>
</tr>
</table>
### Uso
```sh
nuclei -h
```
Esto mostrará ayuda sobre la herramienta. Aquí están todas las opciones que soporta.
```console
Nuclei es un escáner de vulnerabilidades rápido y basado en plantillas
que se centra en su amplia configurabilidad, extensibilidad y facilidad de uso.
Usage:
./nuclei [flags]
Flags:
TARGET:
-u, -target string[] URLs/hosts a escanear
-l, -list string ruta al archivo que contiene la lista de URLs/hosts a escanear (uno por línea)
-eh, -exclude-hosts string[] hosts a excluir para escanear de la lista de entrada (ip, cidr, hostname)
-resume string reanudar el escaneo usando resume.cfg (la clusterización quedará inhabilitada)
-sa, -scan-all-ips escanear todas las IP asociadas al registro dns
-iv, -ip-version string[] versión IP a escanear del nombre de host (4,6) - (por defecto 4)
TARGET-FORMAT:
-im, -input-mode string modo del archivo de entrada (list, burp, jsonl, yaml, openapi, swagger) (por defecto "list")
-ro, -required-only utilizar solo campos requeridos en el formato de entrada al generar peticiones
-sfv, -skip-format-validation saltar la validación de formato (como variables faltantes) al procesar el archivo de entrada
TEMPLATES:
-nt, -new-templates ejecutar sólo las nuevas plantillas añadidas en la última versión de nuclei-templates
-ntv, -new-templates-version string[] ejecutar las nuevas plantillas añadidas en la versión especificada
-as, -automatic-scan escaneo web automático utilizando la detección de tecnología de wappalyzer para mapeo de etiquetas
-t, -templates string[] lista de plantillas o directorio de plantillas a ejecutar (separadas por comas, file)
-turl, -template-url string[] url de plantilla o lista que contiene urls de plantillas a ejecutar (separadas por comas, file)
-w, -workflows string[] lista de flujos de trabajo o directorio de flujos de trabajo a ejecutar (separadas por comas, file)
-wurl, -workflow-url string[] url de flujo de trabajo o lista que contiene urls de flujo de trabajo para ejecutar (separadas por comas, file)
-validate valida las plantillas pasadas a nuclei
-nss, -no-strict-syntax deshabilita la comprobación de sintaxis estricta en las plantillas
-td, -template-display muestra el contenido de las plantillas
-tl lista todas las plantillas disponibles
-tgl lista todas las etiquetas disponibles
-sign firma las plantillas con la clave privada definida en la variable de entorno NUCLEI_SIGNATURE_PRIVATE_KEY
-code habilita la carga de plantillas basadas en protocolos de código
-dut, -disable-unsigned-templates deshabilita la ejecución de plantillas no firmadas o plantillas con firma no coincidente
FILTERING:
-a, -author string[] plantillas a ejecutar basadas en autores (separadas por comas, file)
-tags string[] plantillas a ejecutar basadas en etiquetas (separadas por comas, file)
-etags, -exclude-tags string[] plantillas a excluir basadas en etiquetas (separadas por comas, file)
-itags, -include-tags string[] etiquetas a ejecutar incluso si están excluidas ya sea por defecto o por configuración
-id, -template-id string[] plantillas a ejecutar basadas en IDs de plantilla (comma-separated, file, allow-wildcard)
-eid, -exclude-id string[] plantillas a excluir basadas en IDs de plantilla (separadas por comas, file)
-it, -include-templates string[] ruta al archivo de plantilla o directorio a ejecutar incluso si están excluidas ya sea por defecto o por configuración
-et, -exclude-templates string[] ruta al archivo de plantilla o directorio a excluir (separadas por comas, file)
-em, -exclude-matchers string[] matchers de plantilla a excluir en el resultado
-s, -severity value[] plantillas a ejecutar basadas en criticidad. Valores posibles: info, bajo, medio, alto, crítico, desconocido
-es, -exclude-severity value[] plantillas a excluir basadas en criticidad. Valores posibles: info, bajo, medio, alto, crítico, desconocido
-pt, -type value[] plantillas a ejecutar basadas en tipo de protocolo. Valores posibles: dns, file, http, headless, tcp, workflow, ssl, websocket, whois, code, javascript
-ept, -exclude-type value[] plantillas a excluir basadas en tipo de protocolo. Valores posibles: dns, file, http, headless, tcp, workflow, ssl, websocket, whois, code, javascript
-tc, -template-condition string[] plantillas a ejecutar basadas en condición de expresión
OUTPUT:
-o, -output string archivo de salida donde guardar las incidencias/vulnerabilidades detectadas
-sresp, -store-resp almacenar todas las peticiones/respuestas enviadas por nuclei en el directorio de salida
-srd, -store-resp-dir string almacenar todas las peticiones/respuestas enviadas por nuclei en un directorio personalizado (por defecto "output")
-silent mostrar resultados únicamente
-nc, -no-color deshabilitar la coloración del contenido de salida (códigos de escape ANSI)
-j, -jsonl escribir la salida en formato JSONL(ines)
-irr, -include-rr -omit-raw incluir pares peticiones/respuesta en las salidas JSON, JSONL y Markdown (sólo para hallazgos) [OBSOLETO usar -omit-raw] (por defecto true)
-or, -omit-raw omitir los pares peticiones/respuesta en las salidas JSON, JSONL y Markdown (sólo para hallazgos)
-ot, -omit-template omitir plantilla codificada en la salida JSON, JSONL
-nm, -no-meta deshabilitar la impresión de metadatos de resultados en la salida cli
-ts, -timestamp habilitar la impresión de la marca de tiempo en la salida cli
-rdb, -report-db string base de datos de informes de nuclei (utilizarla siempre para persistir los datos de los informes)
-ms, -matcher-status mostrar el estado de fallo de coincidencia
-me, -markdown-export string directorio para exportar resultados en formato markdown
-se, -sarif-export string archivo para exportar resultados en formato SARIF
-je, -json-export string archivo para exportar resultados en formato JSON
-jle, -jsonl-export string archivo para exportar resultados en formato JSONL(ines)
CONFIGURATIONS:
-config string ruta al archivo de configuración de nuclei
-fr, -follow-redirects habilitar el seguimiento de redirecciones para plantillas http
-fhr, -follow-host-redirects seguir redirecciones en el mismo host
-mr, -max-redirects int número máximo de redirecciones a seguir para plantillas http (por defecto 10)
-dr, -disable-redirects deshabilitar redirecciones para plantillas http
-rc, -report-config string archivo de configuración del módulo de informes de nuclei
-H, -header string[] encabezado/cookie personalizado a incluir en todas las peticiones http en formato header:value (cli, file)
-V, -var value variables personalizadas en formato key=value
-r, -resolvers string archivo que contiene lista de resolutores para nuclei
-sr, -system-resolvers utilizar resolución de DNS del sistema como fallback de error
-dc, -disable-clustering deshabilitar la clusterización de peticiones
-passive habilitar el modo de procesamiento pasivo de respuestas HTTP
-fh2, -force-http2 forzar la conexión http2 en las peticiones
-ev, -env-vars habilitar el uso de variables de entorno en la plantilla
-cc, -client-cert string archivo de certificado de cliente (codificado en PEM) utilizado para autenticarse contra los hosts escaneados
-ck, -client-key string archivo de clave de cliente (codificado en PEM) utilizado para autenticarse contra los hosts escaneados
-ca, -client-ca string archivo de autoridad de certificación de cliente (codificado en PEM) utilizado para autenticarse contra los hosts escaneados
-sml, -show-match-line mostrar líneas de coincidencia para plantillas de archivo, funciona solo con extractores
-ztls utilizar la biblioteca ztls con autofallback a estándar para tls13 [Obsoleto] autofallback a ztls está habilitado por defecto
-sni string nombre de host tls sni a usar (por defecto: nombre de dominio de entrada)
-dt, -dialer-timeout value tiempo de espera para peticiones de red
-dka, -dialer-keep-alive value duración de keep-alive para peticiones de red
-lfa, -allow-local-file-access permite el acceso a archivos (carga útil) en cualquier lugar del sistema
-lna, -restrict-local-network-access bloquea conexiones a la red local / privada
-i, -interface string interfaz de red a usar para el escaneo de red
-at, -attack-type string tipo de combinaciones de carga útil a realizar (batteringram, pitchfork, clusterbomb)
-sip, -source-ip string dirección ip de origen a usar para el escaneo de red
-rsr, -response-size-read int tamaño máximo de respuesta a leer en bytes (por defecto 10485760)
-rss, -response-size-save int tamaño máximo de respuesta a guardar en bytes (por defecto 1048576)
-reset reset elimina todos los archivos de configuración y datos de nuclei (incluidas las nuclei-templates)
-tlsi, -tls-impersonate habilitar client hello (ja3) tls randomization experimental
INTERACTSH:
-iserver, -interactsh-server string url del servidor interactsh para instancia autoalojada (por defecto: oast.pro,oast.live,oast.site,oast.online,oast.fun,oast.me)
-itoken, -interactsh-token string token de autenticación del servidor interactsh autoalojado
-interactions-cache-size int número de peticiones a mantener en la caché de interacciones (por defecto 5000)
-interactions-eviction int número de segundos a esperar antes de eliminar las solicitudes de la caché (por defecto 60)
-interactions-poll-duration int número de segundos a esperar antes de cada solicitud de polling de interacciones (por defecto 5)
-interactions-cooldown-period int tiempo adicional para el polling de interacciones antes de salir (por defecto 5)
-ni, -no-interactsh desactivar el servidor interactsh para pruebas OAST, excluir plantillas basadas en OAST
FUZZING:
-ft, -fuzzing-type string sobrescribe el tipo de fuzzing establecido en la plantilla (replace, prefix, postfix, infix)
-fm, -fuzzing-mode string sobrescribe el modo de fuzzing establecido en la plantilla (multiple, single)
-fuzz habilita la carga de plantillas de fuzzing (Obsoleto: usar -dast en su lugar)
-dast solo ejecuta plantillas DAST
UNCOVER:
-uc, -uncover habilita el motor uncover
-uq, -uncover-query string[] consulta de búsqueda uncover
-ue, -uncover-engine string[] motor de búsqueda uncover (shodan,censys,fofa,shodan-idb,quake,hunter,zoomeye,netlas,criminalip,publicwww,hunterhow) (por defecto shodan)
-uf, -uncover-field string campos uncover a devolver (ip,port,host) (por defecto "ip:port")
-ul, -uncover-limit int resultados uncover a devolver (por defecto 100)
-ur, -uncover-ratelimit int sobrescribe el límite de velocidad de los motores con el límite de velocidad del motor uncover (por defecto 60 req/min) (por defecto 60)
RATE-LIMIT:
-rl, -rate-limit int número máximo de peticiones a enviar por segundo (por defecto 150)
-rlm, -rate-limit-minute int número máximo de peticiones a enviar por minuto
-bs, -bulk-size int número máximo de hosts a ser analizados en paralelo por plantilla (por defecto 25)
-c, -concurrency int número máximo de plantillas a ejecutar en paralelo (por defecto 25)
-hbs, -headless-bulk-size int número máximo de hosts headless a ser analizados en paralelo por plantilla (por defecto 10)
-headc, -headless-concurrency int número máximo de plantillas headless a ejecutar en paralelo (por defecto 10)
-jsc, -js-concurrency int número máximo de entornos de ejecución de JavaScript a ejecutar en paralelo (por defecto 120)
-pc, -payload-concurrency int concurrencia máxima de carga útil para cada plantilla (por defecto 25)
OPTIMIZATIONS:
-timeout int tiempo de espera en segundos (por defecto 10)
-retries int número de veces que se reintenta una petición fallida (por defecto 1)
-ldp, -leave-default-ports dejar puertos HTTP/HTTPS predeterminados (por ejemplo, host:80,host:443)
-mhe, -max-host-error int errores máximos para un host antes de omitirlo del escaneo (por defecto 30)
-te, -track-error string[] agrega el error dado a la lista de seguimiento de errores máximos por host (standard, file)
-nmhe, -no-mhe deshabilita la omisión del host del escaneo basado en errores
-project utiliza una carpeta de proyecto para evitar enviar la misma petición varias veces
-project-path string establece una ruta de proyecto específica (por defecto "/tmp")
-spm, -stop-at-first-match detiene el procesamiento de las peticiones HTTP después de la primera coincidencia (puede romper la lógica de la plantilla/flujo de trabajo)
-stream modo transmisión - comienza a trabajar sin ordenar la entrada
-ss, -scan-strategy value estrategia a utilizar mientras se escanea (auto/host-spray/template-spray) (por defecto auto)
-irt, -input-read-timeout value tiempo de espera en la lectura de entrada (por defecto 3m0s)
-nh, -no-httpx deshabilita análisis httpx para entradas que no son URL
-no-stdin deshabilita el procesamiento de la entrada estándar
HEADLESS:
-headless habilita las plantillas que requieren soporte de navegadores sin interfaz gráfica (headless browser) (el usuario root en Linux deshabilitará el sandbox)
-page-timeout int segundos para esperar cada página en modo sin interfaz (por defecto 20)
-sb, -show-browser muestra el navegador en la pantalla al ejecutar plantillas con modo sin interfaz
-ho, -headless-options string[] inicia Chrome en modo sin interfaz con opciones adicionales
-sc, -system-chrome utiliza el navegador Chrome instalado localmente en lugar del instalado por nuclei
-lha, -list-headless-action lista de acciones sin interfaz disponibles
DEBUG:
-debug muestra todas las peticiones y respuestas
-dreq, -debug-req muestra todas las peticiones enviadas
-dresp, -debug-resp muestra todas las respuestas recibidas
-p, -proxy string[] lista de proxies http/socks5 a utilizar (separados por comas o archivo de entrada)
-pi, -proxy-internal proxy para todas las peticiones internas
-ldf, -list-dsl-function lista todas las firmas de función DSL admitidas
-tlog, -trace-log string archivo a escribir el registro de traza de peticiones enviadas
-elog, -error-log string archivo a escribir el registro de error de peticiones enviadas
-version muestra la versión de nuclei
-hm, -hang-monitor habilita la monitorización de bloqueos de nuclei
-v, -verbose muestra salida detallada
-profile-mem string archivo opcional de volcado de memoria de nuclei
-vv muestra las plantillas cargadas para el escaneo
-svd, -show-var-dump muestra el volcado de variables para depuración
-ep, -enable-pprof habilita el servidor de depuración pprof
-tv, -templates-version muestra la versión de las plantillas nuclei (nuclei-templates) instaladas
-hc, -health-check ejecuta comprobación de diagnóstico
UPDATE:
-up, -update actualiza el motor de nuclei a la última versión lanzada
-ut, -update-templates actualiza nuclei-templates a la última versión lanzada
-ud, -update-template-dir string directorio personalizado para instalar/actualizar nuclei-templates
-duc, -disable-update-check deshabilita la comprobación automática de actualizaciones de nuclei/templates
STATISTICS:
-stats muestra estadísticas sobre el escaneo en ejecución
-sj, -stats-json muestra estadísticas en formato JSONL(ines)
-si, -stats-interval int número de segundos a esperar entre mostrar una actualización de estadísticas (por defecto 5)
-mp, -metrics-port int puerto para exponer métricas de nuclei (por defecto 9092)
CLOUD:
-auth configura la clave de API del cloud de projectdiscovery (pdcp)
-cup, -cloud-upload sube los resultados del escaneo al dashboard de pdcp
-sid, -scan-id string sube los resultados del escaneo al ID de escaneo dado
AUTHENTICATION:
-sf, -secret-file string[] ruta al archivo de configuración que contiene los secrets para el escaneo autenticado de nuclei
-ps, -prefetch-secrets precarga los secrets del archivo de secrets
EXAMPLES:
Ejecutar nuclei en un solo host:
$ nuclei -target example.com
Ejecutar nuclei con directorios de plantillas específicos:
$ nuclei -target example.com -t http/cves/ -t ssl
Ejecutar nuclei contra una lista de hosts:
$ nuclei -list hosts.txt
Ejecutar nuclei con una salida JSON:
$ nuclei -target example.com -json-export output.json
Ejecutar nuclei con salidas Markdown ordenadas (con variables de entorno):
$ MARKDOWN_EXPORT_SORT_MODE=template nuclei -target example.com -markdown-export nuclei_report/
Documentación adicional disponible en: https://docs.nuclei.sh/getting-started/running
```
### Ejecutando Nuclei
Consulta https://docs.projectdiscovery.io/tools/nuclei/running para obtener detalles sobre cómo ejecutar Nuclei.
### Uso de Nuclei desde código Go
La guía completa sobre cómo usar Nuclei como biblioteca/SDK está disponible en [godoc](https://pkg.go.dev/github.com/projectdiscovery/nuclei/v3/lib#section-readme).
### Recursos
Puedes acceder a la documentación principal de Nuclei en https://docs.projectdiscovery.io/tools/nuclei/, y obtener más información sobre Nuclei en la nube con [ProjectDiscovery Cloud Platform](https://cloud.projectdiscovery.io).
¡Consulta https://docs.projectdiscovery.io/tools/nuclei/resources para obtener más recursos y videos sobre Nuclei!
### Créditos
Gracias a todos los increíbles [contribuyentes de la comunidad que enviaron PRs](https://github.com/projectdiscovery/nuclei/graphs/contributors) y mantienen este proyecto actualizado. :heart:
Si tienes una idea o algún tipo de mejora, eres bienvenido a contribuir y participar en el Proyecto, siéntete libre de enviar tu PR.
<p align="center">
<a href="https://github.com/projectdiscovery/nuclei/graphs/contributors">
<img src="https://contrib.rocks/image?repo=projectdiscovery/nuclei&max=500">
</a>
</p>
También echa un vistazo a los siguientes proyectos de código abierto similares que pueden adaptarse a tu flujo de trabajo:
[FFuF](https://github.com/ffuf/ffuf), [Qsfuzz](https://github.com/ameenmaali/qsfuzz), [Inception](https://github.com/proabiral/inception), [Snallygaster](https://github.com/hannob/snallygaster), [Gofingerprint](https://github.com/Static-Flow/gofingerprint), [Sn1per](https://github.com/1N3/Sn1per/tree/master/templates), [Google tsunami](https://github.com/google/tsunami-security-scanner), [Jaeles](https://github.com/jaeles-project/jaeles), [ChopChop](https://github.com/michelin/ChopChop)
### Licencia
Nuclei se distribuye bajo la [Licencia MIT](https://github.com/projectdiscovery/nuclei/blob/main/LICENSE.md)
<h1 align="left">
<a href="https://discord.gg/projectdiscovery"><img src="static/Join-Discord.png" width="380" alt="Join Discord"></a> <a href="https://docs.projectdiscovery.io"><img src="static/check-nuclei-documentation.png" width="380" alt="Check Nuclei Documentation"></a>
</h1>
+3 -2
View File
@@ -24,7 +24,7 @@
<a href="#untuk-pengembang-dan-organisasi">Untuk Pengembang</a> •
<a href="https://nuclei.projectdiscovery.io/nuclei/get-started/">Dokumentasi</a> •
<a href="#kredit">Kredit</a> •
<a href="https://nuclei.projectdiscovery.io/faq/nuclei/">Tanya Jawab</a> •
<a href="https://docs.projectdiscovery.io/tools/nuclei/faq">Tanya Jawab</a> •
<a href="https://discord.gg/projectdiscovery">Gabung Discord</a>
</p>
@@ -32,7 +32,8 @@
<a href="https://github.com/projectdiscovery/nuclei/blob/main/README.md">English</a> •
<a href="https://github.com/projectdiscovery/nuclei/blob/main/README_CN.md">中文</a> •
<a href="https://github.com/projectdiscovery/nuclei/blob/main/README_KR.md">Korean</a> •
<a href="https://github.com/projectdiscovery/nuclei/blob/main/README_ID.md">Indonesia</a>
<a href="https://github.com/projectdiscovery/nuclei/blob/main/README_ID.md">Indonesia</a> •
<a href="https://github.com/projectdiscovery/nuclei/blob/main/README_ES.md">Spanish</a>
</p>
---
+172
View File
@@ -0,0 +1,172 @@
<h1 align="center">
<br>
<a href="https://nuclei.projectdiscovery.io"><img src="static/nuclei-logo.png" width="200px" alt="Nuclei"></a>
</h1>
<h4 align="center">シンプルなYAMLベースのDSLに基づいた高速でカスタマイズ可能な脆弱性スキャナー</h4>
<p align="center">
<img src="https://img.shields.io/github/go-mod/go-version/projectdiscovery/nuclei">
<a href="https://github.com/projectdiscovery/nuclei/releases"><img src="https://img.shields.io/github/downloads/projectdiscovery/nuclei/total">
<a href="https://github.com/projectdiscovery/nuclei/graphs/contributors"><img src="https://img.shields.io/github/contributors-anon/projectdiscovery/nuclei">
<a href="https://github.com/projectdiscovery/nuclei/releases/"><img src="https://img.shields.io/github/release/projectdiscovery/nuclei">
<a href="https://github.com/projectdiscovery/nuclei/issues"><img src="https://img.shields.io/github/issues-raw/projectdiscovery/nuclei">
<a href="https://github.com/projectdiscovery/nuclei/discussions"><img src="https://img.shields.io/github/discussions/projectdiscovery/nuclei">
<a href="https://discord.gg/projectdiscovery"><img src="https://img.shields.io/discord/695645237418131507.svg?logo=discord"></a>
<a href="https://twitter.com/pdnuclei"><img src="https://img.shields.io/twitter/follow/pdnuclei.svg?logo=twitter"></a>
</p>
<p align="center">
<a href="#how-it-works">動作原理</a> •
<a href="#install-nuclei">インストール</a> •
<a href="https://docs.projectdiscovery.io/tools/nuclei/">ドキュメント</a> •
<a href="#credits">クレジット</a> •
<a href="https://docs.projectdiscovery.io/tools/nuclei/faq">FAQ</a> •
<a href="https://discord.gg/projectdiscovery">Discordに参加</a>
</p>
<p align="center">
<a href="https://github.com/projectdiscovery/nuclei/blob/main/README.md">英語</a> •
<a href="https://github.com/projectdiscovery/nuclei/blob/main/README_CN.md">中国語</a> •
<a href="https://github.com/projectdiscovery/nuclei/blob/main/README_KR.md">韓国語</a> •
<a href="https://github.com/projectdiscovery/nuclei/blob/main/README_ID.md">インドネシア語</a> •
<a href="https://github.com/projectdiscovery/nuclei/blob/main/README_ES.md">スペイン語</a>
</p>
---
Nucleiは、テンプレートに基づいてターゲット間でリクエストを送信するために使用され、偽陽性がゼロであり、多数のホストで高速なスキャンを提供します。Nucleiは、TCP、DNS、HTTP、SSL、ファイル、Whois、Websocket、Headless、Codeなど、さまざまなプロトコルのスキャンを提供します。強力で柔軟なテンプレートを使用して、Nucleiはすべての種類のセキュリティチェックをモデル化するために使用できます。
**300人以上の** セキュリティ研究者およびエンジニアが提供するさまざまなタイプの脆弱性テンプレートを収容する[専用リポジトリ](https://github.com/projectdiscovery/nuclei-templates)を持っています。
## 動作原理
<h3 align="center">
<img src="static/nuclei-flow.jpg" alt="nuclei-flow" width="700px"></a>
</h3>
| :exclamation: **免責事項** |
|---------------------------------|
| **このプロジェクトは積極的に開発されています**。リリースによって重大な変更が発生することがあります。更新する前にリリースの変更ログを確認してください。 |
| このプロジェクトは主にスタンドアロンのCLIツールとして使用されることを目的として構築されました。**Nucleiをサービスとして実行すると、セキュリティリスクが生じる可能性があります。**注意して使用し、追加のセキュリティ対策を講じることをお勧めします。 |
# Nucleiのインストール
Nucleiを正常にインストールするには、**go1.21**が必要です。以下のコマンドを実行して最新バージョンをインストールしてください -
```sh
go install -v github.com/projectdiscovery/nuclei/v3/cmd/nuclei@latest
```
<details>
<summary>Brew</summary>
```sh
brew install nuclei
```
</details>
<details>
<summary>Docker</summary>
```sh
docker pull projectdiscovery/nuclei:latest
```
</details>
**より多くのインストール方法は[こちら](https://docs.projectdiscovery.io/tools/nuclei/install)で見つけることができます。**
<table>
<tr>
<td>
### Nucleiテンプレート
Nucleiは、バージョン[v2.5.2](https://github.com/projectdiscovery/nuclei/releases/tag/v2.5.2)以降、デフォルトでテンプレートの自動ダウンロード/更新をサポートしています。[**Nuclei-Templates**](https://github.com/projectdiscovery/nuclei-templates)プロジェクトは、常に更新されるコミュニティ提供の即時使用可能なテンプレートのリストを提供します。
`update-templates`フラグを使用して、いつでもNucleiテンプレートを更新することができます。Nucleiの[テンプレートガイド](https://docs.projectdiscovery.io/templates/)に従って、個々のワークフローとニーズに合わせた独自のチェックを作成することができます。
YAML DSLの構文リファレンスは[こちら](SYNTAX-REFERENCE.md)で確認できます。
</td>
</tr>
</table>
### 使用方法
```sh
nuclei -h
```
これにより、ツールのヘルプが表示されます。ここには、サポートされているすべてのスイッチがあります。
```console
Nucleiは、広範な設定可能性、大規模な拡張性、および使いやすさに焦点を当てた、
高速でテンプレートベースの脆弱性スキャナーです。
使用法:
./nuclei [flags]
フラグ:
ターゲット:
-u, -target string[] スキャンする対象のURL/ホスト
-l, -list string スキャンする対象のURL/ホストのリストが含まれているファイルへのパス(1行に1つ)
-resume string resume.cfgを使用してスキャンを再開(クラスタリングは無効になります)
-sa, -scan-all-ips DNSレコードに関連付けられているすべてのIPをスキャン
-iv, -ip-version string[] ホスト名のスキャンするIPバージョン(4,6)-(デフォルトは4)
テンプレート:
-nt, -new-templates 最新のnuclei-templatesリリースに追加された新しいテンプレートのみを実行
-ntv, -new-templates-version string[] 特定のバージョンに追加された新しいテンプレートを実行
-as, -automatic-scan wappalyzer技術検出をタグマッピングに使用した自動Webスキャン
-t, -templates string[] 実行するテンプレートまたはテンプレートディレクトリのリスト(カンマ区切り、ファイル)
-turl, -template-url string[] 実行するテンプレートのURLまたはテンプレートURLのリスト(カンマ区切り、ファイル)
-w, -workflows string[] 実行するワークフローまたはワークフローディレクトリのリスト(カンマ区切り、ファイル)
-wurl, -workflow-url string[] 実行するワークフローのURLまたはワークフローURLのリスト(カンマ区切り、ファイル)
-validate Nucleiに渡されたテンプレートを検証
-nss, -no-strict-syntax テンプレートで厳密な構文チェックを無効にする
-td, -template-display テンプレートの内容を表示
-tl 利用可能なすべてのテンプレートをリスト
-sign NUCLEI_SIGNATURE_PRIVATE_KEY環境変数で定義された秘密鍵でテンプレートに署名
-code コードプロトコルベースのテンプレートのロードを有効にする
フィルタリング:
-a, -author string[] 作者に基づいて実行するテンプレート(カンマ区切り、ファイル)
-tags string[] タグに基づいて実行するテンプレート(カンマ区切り、ファイル)
-etags, -exclude-tags string[] タグに基づいて除外するテンプレート(カンマ区切り、ファイル)
-itags, -include-tags string[] デフォルトまたは設定によって除外されている場合でも実行する必要があるタグ
-id, -template-id string[] テンプレートIDに基づいて実行するテンプレート(カンマ区切り、ファイル)
-eid, -exclude-id string[] テンプレートIDに基づいて除外するテンプレート(カンマ区切り、ファイル)
-it, -include-templates string[] デフォルトまたは設定によって除外されている場合でも実行する必要があるテンプレート
-et, -exclude-templates string[] 除外するテンプレートまたはテンプレートディレクトリへのパス(カンマ区切り、ファイル)
-em, -exclude-matchers string[] 結果で除外するテンプレートマッチャー
-s, -severity value[] 重大度に基づいて実行するテンプレート。可能な値:info, low, medium, high, critical, unknown
-es, -exclude-severity value[] 重大度に基づいて除外するテンプレート。可能な値:info, low, medium, high, critical, unknown
-pt, -type value[] プロトコルタイプに基づいて実行するテンプレート。可能な値:dns, file, http, headless, tcp, workflow, ssl, websocket, whois, code, javascript
-ept, -exclude-type value[] プロトコルタイプに基づいて除外するテンプレート。可能な値:dns, file, http, headless, tcp, workflow, ssl, websocket, whois, code, javascript
-tc, -template-condition string[] 式条件に基づいて実行するテンプレート
出力:
-o, -output string 発見された問題/脆弱性を書き込む出力ファイル
-sresp, -store-resp Nucleiを通じて渡されたすべてのリクエスト/レスポンスを出力ディレクトリに保存
-srd, -store-resp-dir string Nucleiを通じて渡されたすべてのリクエスト/レスポンスをカスタムディレクトリに保存(デフォルトは「output」)
-silent 結果のみを表示
-nc, -no-color 出力内容の着色を無効にする(ANSIエスケープコード)
-j, -jsonl JSONL(ines)形式で出力を書き込む
-irr, -include-rr -omit-raw JSON、JSONL、Markdown出力にリクエスト/レスポンスペアを含める(発見のみ)[非推奨 -omit-raw使用](デフォルトはtrue)
-or, -omit-raw JSON、JSONL、Markdown出力でリクエスト/レスポンスペアを省略する(発見のみ)
-ot, -omit-template JSON、JSONL出力でエンコードされたテンプレートを省略
-nm, -no-meta CLI出力で結果のメタデータの印刷を無効にする
-ts, -timestamp CLI出力にタイムスタンプを印刷することを有効にする
-rdb, -report-db string Nucleiレポートデータベース(レポートデータを永続化するために常にこれを使用)
-ms, -matcher-status マッチ失敗のステータスを表示
-me, -markdown-export string Markdown形式で結果をエクスポートするディレクトリ
-se, -sarif-export string SARIF形式で結果をエクスポートするファイル
-je, -json-export string JSON形式で結果をエクスポートするファイル
-jle, -jsonl-export string JSONL(ine)形式で結果をエクスポートするファイル
設定:
-config string Nucleiの設定ファイルへのパス
-fr, -follow-redirects HTTPテンプレートのリダイレクトをフォローすることを有効にする
-fhr, -follow-host-redirects
+3 -2
View File
@@ -23,14 +23,15 @@
<a href="#개발자를-위한">개발자를 위한</a> •
<a href="https://nuclei.projectdiscovery.io/nuclei/get-started/">문서</a> •
<a href="#credits">Credits</a> •
<a href="https://nuclei.projectdiscovery.io/faq/nuclei/">FAQs</a> •
<a href="https://docs.projectdiscovery.io/tools/nuclei/faq">FAQs</a> •
<a href="https://discord.gg/projectdiscovery"> Discord 참가</a>
</p>
<p align="center">
<a href="https://github.com/projectdiscovery/nuclei/blob/main/README.md">English</a> •
<a href="https://github.com/projectdiscovery/nuclei/blob/main/README_CN.md">中文</a> •
<a href="https://github.com/projectdiscovery/nuclei/blob/main/README_KR.md">한국어</a>
<a href="https://github.com/projectdiscovery/nuclei/blob/main/README_KR.md">한국어</a> •
<a href="https://github.com/projectdiscovery/nuclei/blob/main/README_ES.md">스페인어</a>
</p>
---
+722 -19
View File
@@ -379,6 +379,7 @@ Stop execution once first match is found
<div class="dt">
Signature is the request signature method
WARNING: 'signature' will be deprecated and will be removed in a future release. Prefer using 'code' protocol for writing cloud checks
Valid values:
@@ -1372,6 +1373,19 @@ Fuzzing describes schema to fuzz http requests
<div class="dd">
<code>self-contained</code> <i>bool</i>
</div>
<div class="dt">
SelfContained specifies if the request is self-contained.
</div>
<hr />
<div class="dd">
<code>signature</code> <i><a href="#signaturetypeholder">SignatureTypeHolder</a></i>
</div>
@@ -1390,13 +1404,39 @@ Valid values:
<div class="dd">
<code>skip-secret-file</code> <i>bool</i>
</div>
<div class="dt">
SkipSecretFile skips the authentication or authorization configured in the secret file.
</div>
<hr />
<div class="dd">
<code>cookie-reuse</code> <i>bool</i>
</div>
<div class="dt">
CookieReuse is an optional setting that enables cookie reuse for
all requests defined in raw section.
</div>
<hr />
<div class="dd">
<code>disable-cookie</code> <i>bool</i>
</div>
<div class="dt">
DisableCookie is an optional setting that disables cookie reuse for
all requests defined in raw section.
DisableCookie is an optional setting that disables cookie reuse
</div>
@@ -1585,6 +1625,32 @@ DisablePathAutomerge disables merging target url path with raw request path
<hr />
<div class="dd">
<code>pre-condition</code> <i>[]<a href="#matchersmatcher">matchers.Matcher</a></i>
</div>
<div class="dt">
Fuzz PreCondition is matcher-like field to check if fuzzing should be performed on this request or not
</div>
<hr />
<div class="dd">
<code>pre-condition-operator</code> <i>string</i>
</div>
<div class="dt">
FuzzPreConditionOperator is the operator between multiple PreConditions for fuzzing Default is OR
</div>
<hr />
@@ -1747,13 +1813,50 @@ Valid values:
Part is the part of request to fuzz.
query fuzzes the query part of url. More parts will be added later.
Valid values:
- <code>query</code>
- <code>header</code>
- <code>path</code>
- <code>body</code>
- <code>cookie</code>
- <code>request</code>
</div>
<hr />
<div class="dd">
<code>parts</code> <i>[]string</i>
</div>
<div class="dt">
Parts is the list of parts to fuzz. If multiple parts need to be
defined while excluding some, this should be used instead of singular part.
Valid values:
- <code>query</code>
- <code>header</code>
- <code>path</code>
- <code>body</code>
- <code>cookie</code>
- <code>request</code>
</div>
<hr />
@@ -1859,31 +1962,52 @@ values:
<div class="dd">
<code>fuzz</code> <i>[]string</i>
<code>fuzz</code> <i><a href="#sliceormapslice">SliceOrMapSlice</a></i>
</div>
<div class="dt">
Fuzz is the list of payloads to perform substitutions with.
Examples:
```yaml
# Examples of fuzz
fuzz:
- '{{ssrf}}'
- '{{interactsh-url}}'
- example-value
```
description: |
Fuzz is the list of payloads to perform substitutions with.
examples:
- name: Examples of fuzz
value: >
[]string{"{{ssrf}}", "{{interactsh-url}}", "example-value"}
or
x-header: 1
x-header: 2
</div>
<hr />
<div class="dd">
<code>replace-regex</code> <i>string</i>
</div>
<div class="dt">
replace-regex is regex for regex-replace rule type
it is only required for replace-regex rule type
</div>
<hr />
## SliceOrMapSlice
Appears in:
- <code><a href="#fuzzrule">fuzz.Rule</a>.fuzz</code>
@@ -1902,6 +2026,459 @@ Appears in:
## matchers.Matcher
Matcher is used to match a part in the output from a protocol.
Appears in:
- <code><a href="#httprequest">http.Request</a>.pre-condition</code>
<hr />
<div class="dd">
<code>type</code> <i><a href="#matchertypeholder">MatcherTypeHolder</a></i>
</div>
<div class="dt">
Type is the type of the matcher.
</div>
<hr />
<div class="dd">
<code>condition</code> <i>string</i>
</div>
<div class="dt">
Condition is the optional condition between two matcher variables. By default,
the condition is assumed to be OR.
Valid values:
- <code>and</code>
- <code>or</code>
</div>
<hr />
<div class="dd">
<code>part</code> <i>string</i>
</div>
<div class="dt">
Part is the part of the request response to match data from.
Each protocol exposes a lot of different parts which are well
documented in docs for each request type.
Examples:
```yaml
part: body
```
```yaml
part: raw
```
</div>
<hr />
<div class="dd">
<code>negative</code> <i>bool</i>
</div>
<div class="dt">
Negative specifies if the match should be reversed
It will only match if the condition is not true.
</div>
<hr />
<div class="dd">
<code>name</code> <i>string</i>
</div>
<div class="dt">
Name of the matcher. Name should be lowercase and must not contain
spaces or underscores (_).
Examples:
```yaml
name: cookie-matcher
```
</div>
<hr />
<div class="dd">
<code>status</code> <i>[]int</i>
</div>
<div class="dt">
Status are the acceptable status codes for the response.
Examples:
```yaml
status:
- 200
- 302
```
</div>
<hr />
<div class="dd">
<code>size</code> <i>[]int</i>
</div>
<div class="dt">
Size is the acceptable size for the response
Examples:
```yaml
size:
- 3029
- 2042
```
</div>
<hr />
<div class="dd">
<code>words</code> <i>[]string</i>
</div>
<div class="dt">
Words contains word patterns required to be present in the response part.
Examples:
```yaml
# Match for Outlook mail protection domain
words:
- mail.protection.outlook.com
```
```yaml
# Match for application/json in response headers
words:
- application/json
```
</div>
<hr />
<div class="dd">
<code>regex</code> <i>[]string</i>
</div>
<div class="dt">
Regex contains Regular Expression patterns required to be present in the response part.
Examples:
```yaml
# Match for Linkerd Service via Regex
regex:
- (?mi)^Via\\s*?:.*?linkerd.*$
```
```yaml
# Match for Open Redirect via Location header
regex:
- (?m)^(?:Location\\s*?:\\s*?)(?:https?://|//)?(?:[a-zA-Z0-9\\-_\\.@]*)example\\.com.*$
```
</div>
<hr />
<div class="dd">
<code>binary</code> <i>[]string</i>
</div>
<div class="dt">
Binary are the binary patterns required to be present in the response part.
Examples:
```yaml
# Match for Springboot Heapdump Actuator "JAVA PROFILE", "HPROF", "Gunzip magic byte"
binary:
- 4a4156412050524f46494c45
- 4850524f46
- 1f8b080000000000
```
```yaml
# Match for 7zip files
binary:
- 377ABCAF271C
```
</div>
<hr />
<div class="dd">
<code>dsl</code> <i>[]string</i>
</div>
<div class="dt">
DSL are the dsl expressions that will be evaluated as part of nuclei matching rules.
A list of these helper functions are available [here](https://nuclei.projectdiscovery.io/templating-guide/helper-functions/).
Examples:
```yaml
# DSL Matcher for package.json file
dsl:
- contains(body, 'packages') && contains(tolower(all_headers), 'application/octet-stream') && status_code == 200
```
```yaml
# DSL Matcher for missing strict transport security header
dsl:
- '!contains(tolower(all_headers), ''''strict-transport-security'''')'
```
</div>
<hr />
<div class="dd">
<code>xpath</code> <i>[]string</i>
</div>
<div class="dt">
XPath are the xpath queries expressions that will be evaluated against the response part.
Examples:
```yaml
# XPath Matcher to check a title
xpath:
- /html/head/title[contains(text(), 'How to Find XPath')]
```
```yaml
# XPath Matcher for finding links with target="_blank"
xpath:
- //a[@target="_blank"]
```
</div>
<hr />
<div class="dd">
<code>encoding</code> <i>string</i>
</div>
<div class="dt">
Encoding specifies the encoding for the words field if any.
Valid values:
- <code>hex</code>
</div>
<hr />
<div class="dd">
<code>case-insensitive</code> <i>bool</i>
</div>
<div class="dt">
CaseInsensitive enables case-insensitive matches. Default is false.
Valid values:
- <code>false</code>
- <code>true</code>
</div>
<hr />
<div class="dd">
<code>match-all</code> <i>bool</i>
</div>
<div class="dt">
MatchAll enables matching for all matcher values. Default is false.
Valid values:
- <code>false</code>
- <code>true</code>
</div>
<hr />
<div class="dd">
<code>internal</code> <i>bool</i>
</div>
<div class="dt">
description: |
Internal when true hides the matcher from output. Default is false.
It is meant to be used in multiprotocol / flow templates to create internal matcher condition without printing it in output.
or other similar use cases.
values:
- false
- true
</div>
<hr />
## MatcherTypeHolder
MatcherTypeHolder is used to hold internal type of the matcher
Appears in:
- <code><a href="#matchersmatcher">matchers.Matcher</a>.type</code>
<hr />
<div class="dd">
<code></code> <i>MatcherType</i>
</div>
<div class="dt">
Enum Values:
- <code>word</code>
- <code>regex</code>
- <code>binary</code>
- <code>status</code>
- <code>size</code>
- <code>dsl</code>
- <code>xpath</code>
</div>
<hr />
## dns.Request
Request contains a DNS protocol request to be made from a template
@@ -2115,6 +2692,30 @@ Payloads support both key-values combinations where a list
of payloads is provided, or optionally a single file can also
be provided as payload which will be read on run-time.
</div>
<hr />
<div class="dd">
<code>threads</code> <i>int</i>
</div>
<div class="dt">
Threads to use when sending iterating over payloads
Examples:
```yaml
# Send requests using 10 concurrent threads
threads: 10
```
</div>
<hr />
@@ -2199,6 +2800,8 @@ Enum Values:
- <code>TLSA</code>
- <code>ANY</code>
- <code>SRV</code>
</div>
<hr />
@@ -2484,6 +3087,33 @@ Payloads support both key-values combinations where a list
of payloads is provided, or optionally a single file can also
be provided as payload which will be read on run-time.
</div>
<hr />
<div class="dd">
<code>threads</code> <i>int</i>
</div>
<div class="dt">
Threads specifies number of threads to use sending requests. This enables Connection Pooling.
Connection: Close attribute must not be used in request while using threads flag, otherwise
pooling will fail and engine will continue to close connections after requests.
Examples:
```yaml
# Send requests using 10 concurrent threads
threads: 10
```
</div>
<hr />
@@ -2881,6 +3511,19 @@ Fuzzing describes schema to fuzz headless requests
<div class="dd">
<code>cookie-reuse</code> <i>bool</i>
</div>
<div class="dt">
CookieReuse is an optional setting that enables cookie reuse
</div>
<hr />
<div class="dd">
<code>disable-cookie</code> <i>bool</i>
</div>
@@ -3227,6 +3870,53 @@ description: |
<hr />
<div class="dd">
<code>tls_version_enum</code> <i>bool</i>
</div>
<div class="dt">
TLS Versions Enum - false if not specified
Enumerates supported TLS versions
</div>
<hr />
<div class="dd">
<code>tls_cipher_enum</code> <i>bool</i>
</div>
<div class="dt">
TLS Ciphers Enum - false if not specified
Enumerates supported TLS ciphers
</div>
<hr />
<div class="dd">
<code>tls_cipher_types</code> <i>[]string</i>
</div>
<div class="dt">
description: |
TLS Cipher types to enumerate
values:
- "insecure" (default)
- "weak"
- "secure"
- "all"
</div>
<hr />
@@ -3519,6 +4209,19 @@ Engine type
<div class="dd">
<code>pre-condition</code> <i>string</i>
</div>
<div class="dt">
PreCondition is a condition which is evaluated before sending the request.
</div>
<hr />
<div class="dd">
<code>args</code> <i>[]string</i>
</div>
+8 -5
View File
@@ -5,10 +5,11 @@ import (
"encoding/json"
"log"
"os"
"reflect"
"regexp"
"strings"
"github.com/alecthomas/jsonschema"
"github.com/invopop/jsonschema"
"github.com/projectdiscovery/nuclei/v3/pkg/templates"
)
@@ -32,10 +33,12 @@ func main() {
}
// Generate jsonschema
r := &jsonschema.Reflector{
PreferYAMLSchema: true,
YAMLEmbeddedStructs: true,
FullyQualifyTypeNames: true,
r := &jsonschema.Reflector{}
r.Namer = func(r reflect.Type) string {
if r.Kind() == reflect.Slice {
return ""
}
return r.String()
}
jsonschemaData := r.Reflect(&templates.Template{})
+17
View File
@@ -23,6 +23,7 @@ var codeTestCases = []TestCaseInfo{
{Path: "protocols/code/py-nosig.yaml", TestCase: &codePyNoSig{}, DisableOn: isCodeDisabled},
{Path: "protocols/code/py-interactsh.yaml", TestCase: &codeSnippet{}, DisableOn: isCodeDisabled},
{Path: "protocols/code/ps1-snippet.yaml", TestCase: &codeSnippet{}, DisableOn: func() bool { return !osutils.IsWindows() || isCodeDisabled() }},
{Path: "protocols/code/pre-condition.yaml", TestCase: &codePreCondition{}, DisableOn: isCodeDisabled},
}
const (
@@ -94,6 +95,22 @@ func (h *codeSnippet) Execute(filePath string) error {
return expectResultsCount(results, 1)
}
type codePreCondition struct{}
// Execute executes a test case and returns an error if occurred
func (h *codePreCondition) Execute(filePath string) error {
results, err := testutils.RunNucleiArgsWithEnvAndGetResults(debug, getEnvValues(), "-t", filePath, "-u", "input", "-code")
if err != nil {
return err
}
if osutils.IsLinux() {
return expectResultsCount(results, 1)
} else {
return expectResultsCount(results, 0)
}
}
type codeFile struct{}
// Execute executes a test case and returns an error if occurred
+6 -1
View File
@@ -5,7 +5,12 @@ import (
)
var dnsTestCases = []TestCaseInfo{
{Path: "protocols/dns/basic.yaml", TestCase: &dnsBasic{}},
{Path: "protocols/dns/a.yaml", TestCase: &dnsBasic{}},
{Path: "protocols/dns/aaaa.yaml", TestCase: &dnsBasic{}},
{Path: "protocols/dns/cname.yaml", TestCase: &dnsBasic{}},
{Path: "protocols/dns/srv.yaml", TestCase: &dnsBasic{}},
{Path: "protocols/dns/ns.yaml", TestCase: &dnsBasic{}},
{Path: "protocols/dns/txt.yaml", TestCase: &dnsBasic{}},
{Path: "protocols/dns/ptr.yaml", TestCase: &dnsPtr{}},
{Path: "protocols/dns/caa.yaml", TestCase: &dnsCAA{}},
{Path: "protocols/dns/tlsa.yaml", TestCase: &dnsTLSA{}},
+43 -40
View File
@@ -12,13 +12,39 @@ import (
"github.com/projectdiscovery/nuclei/v3/pkg/testutils"
)
const (
targetFile = "fuzz/testData/ginandjuice.proxify.yaml"
)
var fuzzingTestCases = []TestCaseInfo{
{Path: "fuzz/fuzz-mode.yaml", TestCase: &fuzzModeOverride{}},
{Path: "fuzz/fuzz-multi-mode.yaml", TestCase: &fuzzMultipleMode{}},
{Path: "fuzz/fuzz-type.yaml", TestCase: &fuzzTypeOverride{}},
{Path: "fuzz/fuzz-query.yaml", TestCase: &httpFuzzQuery{}},
{Path: "fuzz/fuzz-headless.yaml", TestCase: &HeadlessFuzzingQuery{}},
{Path: "fuzz/fuzz-header-basic.yaml", TestCase: &FuzzHeaderBasic{}},
{Path: "fuzz/fuzz-header-multiple.yaml", TestCase: &FuzzHeaderMultiple{}},
// for fuzzing we should prioritize adding test case related backend
// logic in fuzz playground server instead of adding them here
{Path: "fuzz/fuzz-query-num-replace.yaml", TestCase: &genericFuzzTestCase{expectedResults: 2}},
{Path: "fuzz/fuzz-host-header-injection.yaml", TestCase: &genericFuzzTestCase{expectedResults: 1}},
{Path: "fuzz/fuzz-path-sqli.yaml", TestCase: &genericFuzzTestCase{expectedResults: 1}},
{Path: "fuzz/fuzz-cookie-error-sqli.yaml", TestCase: &genericFuzzTestCase{expectedResults: 1}},
{Path: "fuzz/fuzz-body-json-sqli.yaml", TestCase: &genericFuzzTestCase{expectedResults: 1}},
{Path: "fuzz/fuzz-body-multipart-form-sqli.yaml", TestCase: &genericFuzzTestCase{expectedResults: 1}},
{Path: "fuzz/fuzz-body-params-sqli.yaml", TestCase: &genericFuzzTestCase{expectedResults: 1}},
{Path: "fuzz/fuzz-body-xml-sqli.yaml", TestCase: &genericFuzzTestCase{expectedResults: 1}},
{Path: "fuzz/fuzz-body-generic-sqli.yaml", TestCase: &genericFuzzTestCase{expectedResults: 4}},
}
type genericFuzzTestCase struct {
expectedResults int
}
func (g *genericFuzzTestCase) Execute(filePath string) error {
results, err := testutils.RunNucleiWithArgsAndGetResults(debug, "-t", filePath, "-l", targetFile, "-im", "yaml")
if err != nil {
return err
}
return expectResultsCount(results, g.expectedResults)
}
type httpFuzzQuery struct{}
@@ -34,7 +60,7 @@ func (h *httpFuzzQuery) Execute(filePath string) error {
ts := httptest.NewTLSServer(router)
defer ts.Close()
results, err := testutils.RunNucleiTemplateAndGetResults(filePath, ts.URL+"/?id=example", debug)
results, err := testutils.RunNucleiTemplateAndGetResults(filePath, ts.URL+"/?id=example", debug, "-fuzz")
if err != nil {
return err
}
@@ -53,7 +79,7 @@ func (h *fuzzModeOverride) Execute(filePath string) error {
})
ts := httptest.NewTLSServer(router)
defer ts.Close()
results, err := testutils.RunNucleiTemplateAndGetResults(filePath, ts.URL+"/?id=example&name=nuclei", debug, "-fuzzing-mode", "single", "-jsonl")
results, err := testutils.RunNucleiTemplateAndGetResults(filePath, ts.URL+"/?id=example&name=nuclei", debug, "-fuzzing-mode", "single", "-jsonl", "-fuzz")
if err != nil {
return err
}
@@ -98,7 +124,7 @@ func (h *fuzzTypeOverride) Execute(filePath string) error {
})
ts := httptest.NewTLSServer(router)
defer ts.Close()
results, err := testutils.RunNucleiTemplateAndGetResults(filePath, ts.URL+"?id=example", debug, "-fuzzing-type", "replace", "-jsonl")
results, err := testutils.RunNucleiTemplateAndGetResults(filePath, ts.URL+"?id=example", debug, "-fuzzing-type", "replace", "-jsonl", "-fuzz")
if err != nil {
return err
}
@@ -143,58 +169,35 @@ func (h *HeadlessFuzzingQuery) Execute(filePath string) error {
ts := httptest.NewTLSServer(router)
defer ts.Close()
got, err := testutils.RunNucleiTemplateAndGetResults(filePath, ts.URL+"?url=https://scanme.sh", debug, "-headless")
got, err := testutils.RunNucleiTemplateAndGetResults(filePath, ts.URL+"?url=https://scanme.sh", debug, "-headless", "-fuzz")
if err != nil {
return err
}
return expectResultsCount(got, 2)
}
type FuzzHeaderBasic struct{}
type fuzzMultipleMode struct{}
// Execute executes a test case and returns an error if occurred
func (h *FuzzHeaderBasic) Execute(filePath string) error {
func (h *fuzzMultipleMode) Execute(filePath string) error {
router := httprouter.New()
router.GET("/", func(w http.ResponseWriter, r *http.Request, _ httprouter.Params) {
host := r.Header.Get("Origin")
// redirect to different domain
w.WriteHeader(http.StatusOK)
fmt.Fprintf(w, "<html><body><a href="+host+">Click Here</a></body></html>")
})
ts := httptest.NewTLSServer(router)
defer ts.Close()
got, err := testutils.RunNucleiTemplateAndGetResults(filePath, ts.URL, debug)
if err != nil {
return err
}
return expectResultsCount(got, 1)
}
type FuzzHeaderMultiple struct{}
// Execute executes a test case and returns an error if occurred
func (h *FuzzHeaderMultiple) Execute(filePath string) error {
router := httprouter.New()
router.GET("/", func(w http.ResponseWriter, r *http.Request, _ httprouter.Params) {
host1 := r.Header.Get("Origin")
host2 := r.Header.Get("X-Forwared-For")
fmt.Printf("host1: %s, host2: %s\n", host1, host2)
if host1 == host2 && host2 == "secret.local" {
w.WriteHeader(http.StatusOK)
fmt.Fprintf(w, "welcome! to secret admin panel")
xClientId := r.Header.Get("X-Client-Id")
xSecretId := r.Header.Get("X-Secret-Id")
if xClientId != "nuclei-v3" || xSecretId != "nuclei-v3" {
w.WriteHeader(http.StatusUnauthorized)
return
}
// redirect to different domain
w.WriteHeader(http.StatusForbidden)
w.Header().Set("Content-Type", "text/html")
resp := fmt.Sprintf("<html><body><h1>This is multi-mode fuzzing test: %v <h1></body></html>", xClientId)
fmt.Fprint(w, resp)
})
ts := httptest.NewTLSServer(router)
defer ts.Close()
got, err := testutils.RunNucleiTemplateAndGetResults(filePath, ts.URL, debug)
got, err := testutils.RunNucleiTemplateAndGetResults(filePath, ts.URL+"?url=https://scanme.sh", debug, "-jsonl", "-fuzz")
if err != nil {
return err
}
return expectResultsCount(got, 1)
}
}
+115 -3
View File
@@ -23,6 +23,7 @@ import (
logutil "github.com/projectdiscovery/utils/log"
sliceutil "github.com/projectdiscovery/utils/slice"
stringsutil "github.com/projectdiscovery/utils/strings"
unitutils "github.com/projectdiscovery/utils/unit"
)
var httpTestcases = []TestCaseInfo{
@@ -80,6 +81,57 @@ var httpTestcases = []TestCaseInfo{
{Path: "protocols/http/disable-path-automerge.yaml", TestCase: &httpDisablePathAutomerge{}},
{Path: "protocols/http/http-preprocessor.yaml", TestCase: &httpPreprocessor{}},
{Path: "protocols/http/multi-request.yaml", TestCase: &httpMultiRequest{}},
{Path: "protocols/http/http-matcher-extractor-dy-extractor.yaml", TestCase: &httpMatcherExtractorDynamicExtractor{}},
{Path: "protocols/http/multi-http-var-sharing.yaml", TestCase: &httpMultiVarSharing{}},
{Path: "protocols/http/raw-path-single-slash.yaml", TestCase: &httpRawPathSingleSlash{}},
{Path: "protocols/http/raw-unsafe-path-single-slash.yaml", TestCase: &httpRawUnsafePathSingleSlash{}},
}
type httpMultiVarSharing struct{}
func (h *httpMultiVarSharing) Execute(filePath string) error {
results, err := testutils.RunNucleiTemplateAndGetResults(filePath, "https://scanme.sh", debug)
if err != nil {
return err
}
return expectResultsCount(results, 1)
}
type httpMatcherExtractorDynamicExtractor struct{}
func (h *httpMatcherExtractorDynamicExtractor) Execute(filePath string) error {
router := httprouter.New()
router.GET("/", func(w http.ResponseWriter, r *http.Request, _ httprouter.Params) {
html := `<!DOCTYPE html>
<html lang="en">
<body>
<a href="/domains">Domains</a>
</body>
</html>`
fmt.Fprint(w, html)
})
router.GET("/domains", func(w http.ResponseWriter, r *http.Request, _ httprouter.Params) {
html := `<!DOCTYPE html>
<html lang="en">
<head>
<title>Dynamic Extractor Test</title>
</head>
<body>
<!-- The content of the title tag matches the regex pattern for both the extractor and matcher for 'title' -->
</body>
</html>
`
fmt.Fprint(w, html)
})
ts := httptest.NewServer(router)
defer ts.Close()
results, err := testutils.RunNucleiTemplateAndGetResults(filePath, ts.URL, debug)
if err != nil {
return err
}
return expectResultsCount(results, 1)
}
type httpInteractshRequest struct{}
@@ -458,7 +510,7 @@ func (h *httpPostMultipartBody) Execute(filePath string) error {
var routerErr error
router.POST("/", func(w http.ResponseWriter, r *http.Request, _ httprouter.Params) {
if err := r.ParseMultipartForm(1 * 1024); err != nil {
if err := r.ParseMultipartForm(unitutils.Mega); err != nil {
routerErr = err
return
}
@@ -776,8 +828,18 @@ func (h *httpPaths) Execute(filepath string) error {
}
}
if !reflect.DeepEqual(expected, actual) {
return fmt.Errorf("%8v: %v\n%-8v: %v", "expected", expected, "actual", actual)
if len(expected) > len(actual) {
actualValuesIndex := len(actual) - 1
if actualValuesIndex < 0 {
actualValuesIndex = 0
}
return fmt.Errorf("missing values : %v", expected[actualValuesIndex:])
} else if len(expected) < len(actual) {
return fmt.Errorf("unexpected values : %v", actual[len(expected)-1:])
} else {
if !reflect.DeepEqual(expected, actual) {
return fmt.Errorf("expected: %v\n\nactual: %v", expected, actual)
}
}
return nil
}
@@ -1501,3 +1563,53 @@ func (h *httpMultiRequest) Execute(filePath string) error {
return expectResultsCount(results, 1)
}
type httpRawPathSingleSlash struct{}
func (h *httpRawPathSingleSlash) Execute(filepath string) error {
expectedPath := "/index.php"
results, err := testutils.RunNucleiBinaryAndGetCombinedOutput(debug, []string{"-t", filepath, "-u", "scanme.sh/index.php", "-debug-req"})
if err != nil {
return err
}
var actual string
for _, v := range strings.Split(results, "\n") {
if strings.Contains(v, "GET") {
parts := strings.Fields(v)
if len(parts) == 3 {
actual = parts[1]
}
}
}
if actual != expectedPath {
return fmt.Errorf("expected: %v\n\nactual: %v", expectedPath, actual)
}
return nil
}
type httpRawUnsafePathSingleSlash struct{}
func (h *httpRawUnsafePathSingleSlash) Execute(filepath string) error {
expectedPath := "/index.php"
results, err := testutils.RunNucleiBinaryAndGetCombinedOutput(debug, []string{"-t", filepath, "-u", "scanme.sh/index.php", "-debug-req"})
if err != nil {
return err
}
var actual string
for _, v := range strings.Split(results, "\n") {
if strings.Contains(v, "GET") {
parts := strings.Fields(v)
if len(parts) == 3 {
actual = parts[1]
}
}
}
if actual != expectedPath {
return fmt.Errorf("expected: %v\n\nactual: %v", expectedPath, actual)
}
return nil
}
+21
View File
@@ -9,7 +9,9 @@ import (
"github.com/logrusorgru/aurora"
"github.com/projectdiscovery/gologger"
"github.com/projectdiscovery/nuclei/v3/pkg/testutils"
"github.com/projectdiscovery/nuclei/v3/pkg/testutils/fuzzplayground"
sliceutil "github.com/projectdiscovery/utils/slice"
)
@@ -35,6 +37,7 @@ var (
"dns": dnsTestCases,
"workflow": workflowTestcases,
"loader": loaderTestcases,
"profile-loader": profileLoaderTestcases,
"websocket": websocketTestCases,
"headless": headlessTestcases,
"whois": whoisTestCases,
@@ -53,6 +56,10 @@ var (
"flow": flowTestcases,
"javascript": jsTestcases,
}
// flakyTests are run with a retry count of 3
flakyTests = map[string]bool{
"protocols/http/self-contained-file-input.yaml": true,
}
// For debug purposes
runProtocol = ""
@@ -78,6 +85,18 @@ func main() {
os.Exit(1)
}
// start fuzz playground server
defer fuzzplayground.Cleanup()
server := fuzzplayground.GetPlaygroundServer()
defer server.Close()
go func() {
if err := server.Start("localhost:8082"); err != nil {
if !strings.Contains(err.Error(), "Server closed") {
gologger.Fatal().Msgf("Could not start server: %s\n", err)
}
}
}()
customTestsList := normalizeSplit(customTests)
failedTestTemplatePaths := runTests(customTestsList)
@@ -150,6 +169,8 @@ func runTests(customTemplatePaths []string) []string {
var err error
if proto == "interactsh" || strings.Contains(testCaseInfo.Path, "interactsh") {
failedTemplatePath, err = executeWithRetry(testCaseInfo.TestCase, testCaseInfo.Path, interactshRetryCount)
} else if flakyTests[testCaseInfo.Path] {
failedTemplatePath, err = executeWithRetry(testCaseInfo.TestCase, testCaseInfo.Path, interactshRetryCount)
} else {
failedTemplatePath, err = execute(testCaseInfo.TestCase, testCaseInfo.Path)
}
+5 -3
View File
@@ -1,9 +1,11 @@
package main
import osutils "github.com/projectdiscovery/utils/os"
// All Interactsh related testcases
var interactshTestCases = []TestCaseInfo{
{Path: "protocols/http/interactsh.yaml", TestCase: &httpInteractshRequest{}, DisableOn: func() bool { return false }},
{Path: "protocols/http/interactsh-stop-at-first-match.yaml", TestCase: &httpInteractshStopAtFirstMatchRequest{}, DisableOn: func() bool { return false }}, // disable this test for now
{Path: "protocols/http/default-matcher-condition.yaml", TestCase: &httpDefaultMatcherCondition{}, DisableOn: func() bool { return false }},
{Path: "protocols/http/interactsh.yaml", TestCase: &httpInteractshRequest{}, DisableOn: func() bool { return osutils.IsWindows() || osutils.IsOSX() }},
{Path: "protocols/http/interactsh-stop-at-first-match.yaml", TestCase: &httpInteractshStopAtFirstMatchRequest{}, DisableOn: func() bool { return true }}, // disable this test for now
{Path: "protocols/http/default-matcher-condition.yaml", TestCase: &httpDefaultMatcherCondition{}, DisableOn: func() bool { return true }},
{Path: "protocols/http/interactsh-requests-mc-and.yaml", TestCase: &httpInteractshRequestsWithMCAnd{}},
}
+7 -6
View File
@@ -19,16 +19,16 @@ import (
"github.com/projectdiscovery/nuclei/v3/pkg/catalog/disk"
"github.com/projectdiscovery/nuclei/v3/pkg/catalog/loader"
"github.com/projectdiscovery/nuclei/v3/pkg/core"
"github.com/projectdiscovery/nuclei/v3/pkg/core/inputs"
"github.com/projectdiscovery/nuclei/v3/pkg/input/provider"
parsers "github.com/projectdiscovery/nuclei/v3/pkg/loader/workflow"
"github.com/projectdiscovery/nuclei/v3/pkg/output"
"github.com/projectdiscovery/nuclei/v3/pkg/parsers"
"github.com/projectdiscovery/nuclei/v3/pkg/protocols"
"github.com/projectdiscovery/nuclei/v3/pkg/protocols/common/contextargs"
"github.com/projectdiscovery/nuclei/v3/pkg/protocols/common/hosterrorscache"
"github.com/projectdiscovery/nuclei/v3/pkg/protocols/common/interactsh"
"github.com/projectdiscovery/nuclei/v3/pkg/protocols/common/protocolinit"
"github.com/projectdiscovery/nuclei/v3/pkg/protocols/common/protocolstate"
"github.com/projectdiscovery/nuclei/v3/pkg/reporting"
"github.com/projectdiscovery/nuclei/v3/pkg/templates"
"github.com/projectdiscovery/nuclei/v3/pkg/testutils"
"github.com/projectdiscovery/nuclei/v3/pkg/types"
"github.com/projectdiscovery/ratelimit"
@@ -69,7 +69,7 @@ func executeNucleiAsLibrary(templatePath, templateURL string) ([]string, error)
defer cache.Close()
mockProgress := &testutils.MockProgressClient{}
reportingClient, err := reporting.New(&reporting.Options{}, "")
reportingClient, err := reporting.New(&reporting.Options{}, "", false)
if err != nil {
return nil, err
}
@@ -99,6 +99,7 @@ func executeNucleiAsLibrary(templatePath, templateURL string) ([]string, error)
catalog := disk.NewCatalog(path.Join(home, "nuclei-templates"))
ratelimiter := ratelimit.New(context.Background(), 150, time.Second)
defer ratelimiter.Stop()
executerOpts := protocols.ExecutorOptions{
Output: outputWriter,
Options: defaultOpts,
@@ -110,6 +111,7 @@ func executeNucleiAsLibrary(templatePath, templateURL string) ([]string, error)
HostErrorsCache: cache,
Colorizer: aurora.NewAurora(true),
ResumeCfg: types.NewResumeCfg(),
Parser: templates.NewParser(),
}
engine := core.New(defaultOpts)
engine.SetExecuterOptions(executerOpts)
@@ -126,8 +128,7 @@ func executeNucleiAsLibrary(templatePath, templateURL string) ([]string, error)
}
store.Load()
input := &inputs.SimpleInputProvider{Inputs: []*contextargs.MetaInput{{Input: templateURL}}}
_ = engine.Execute(store.Templates(), input)
_ = engine.Execute(context.Background(), store.Templates(), provider.NewSimpleInputProviderWithUrls(templateURL))
engine.WorkPool().Wait() // Wait for the scan to finish
return results, nil
+16 -2
View File
@@ -172,7 +172,14 @@ func (h *nonExistentTemplateList) Execute(nonExistingTemplateList string) error
ts := httptest.NewServer(router)
defer ts.Close()
_, err := testutils.RunNucleiBareArgsAndGetResults(debug, nil, "-target", ts.URL, "-template-url", ts.URL+"/404")
configFileData := `remote-template-domain: [ "` + ts.Listener.Addr().String() + `" ]`
err := os.WriteFile("test-config.yaml", []byte(configFileData), permissionutil.ConfigFilePermission)
if err != nil {
return err
}
defer os.Remove("test-config.yaml")
_, err = testutils.RunNucleiBareArgsAndGetResults(debug, nil, "-target", ts.URL, "-template-url", ts.URL+"/404", "-config", "test-config.yaml")
if err == nil {
return fmt.Errorf("expected error for nonexisting workflow url")
}
@@ -188,7 +195,14 @@ func (h *nonExistentWorkflowList) Execute(nonExistingWorkflowList string) error
ts := httptest.NewServer(router)
defer ts.Close()
_, err := testutils.RunNucleiBareArgsAndGetResults(debug, nil, "-target", ts.URL, "-workflow-url", ts.URL+"/404")
configFileData := `remote-template-domain: [ "` + ts.Listener.Addr().String() + `" ]`
err := os.WriteFile("test-config.yaml", []byte(configFileData), permissionutil.ConfigFilePermission)
if err != nil {
return err
}
defer os.Remove("test-config.yaml")
_, err = testutils.RunNucleiBareArgsAndGetResults(debug, nil, "-target", ts.URL, "-workflow-url", ts.URL+"/404", "-config", "test-config.yaml")
if err == nil {
return fmt.Errorf("expected error for nonexisting workflow url")
}
+54
View File
@@ -0,0 +1,54 @@
package main
import (
"fmt"
"github.com/projectdiscovery/nuclei/v3/pkg/testutils"
errorutil "github.com/projectdiscovery/utils/errors"
)
var profileLoaderTestcases = []TestCaseInfo{
{Path: "profile-loader/load-with-filename", TestCase: &profileLoaderByRelFile{}},
{Path: "profile-loader/load-with-id", TestCase: &profileLoaderById{}},
{Path: "profile-loader/basic.yml", TestCase: &customProfileLoader{}},
}
type profileLoaderByRelFile struct{}
func (h *profileLoaderByRelFile) Execute(testName string) error {
results, err := testutils.RunNucleiWithArgsAndGetResults(false, "-tl", "-tp", "cloud.yml")
if err != nil {
return errorutil.NewWithErr(err).Msgf("failed to load template with id")
}
if len(results) <= 10 {
return fmt.Errorf("incorrect result: expected more results than %d, got %v", 10, len(results))
}
return nil
}
type profileLoaderById struct{}
func (h *profileLoaderById) Execute(testName string) error {
results, err := testutils.RunNucleiWithArgsAndGetResults(false, "-tl", "-tp", "cloud")
if err != nil {
return errorutil.NewWithErr(err).Msgf("failed to load template with id")
}
if len(results) <= 10 {
return fmt.Errorf("incorrect result: expected more results than %d, got %v", 10, len(results))
}
return nil
}
// this profile with load kevs
type customProfileLoader struct{}
func (h *customProfileLoader) Execute(filepath string) error {
results, err := testutils.RunNucleiWithArgsAndGetResults(false, "-tl", "-tp", filepath)
if err != nil {
return errorutil.NewWithErr(err).Msgf("failed to load template with id")
}
if len(results) < 1 {
return fmt.Errorf("incorrect result: expected more results than %d, got %v", 1, len(results))
}
return nil
}
+21
View File
@@ -13,6 +13,7 @@ var sslTestcases = []TestCaseInfo{
{Path: "protocols/ssl/custom-cipher.yaml", TestCase: &sslCustomCipher{}},
{Path: "protocols/ssl/custom-version.yaml", TestCase: &sslCustomVersion{}},
{Path: "protocols/ssl/ssl-with-vars.yaml", TestCase: &sslWithVars{}},
{Path: "protocols/ssl/multi-req.yaml", TestCase: &sslMultiReq{}},
}
type sslBasic struct{}
@@ -118,3 +119,23 @@ func (h *sslWithVars) Execute(filePath string) error {
return expectResultsCount(results, 1)
}
type sslMultiReq struct{}
func (h *sslMultiReq) Execute(filePath string) error {
ts := testutils.NewTCPServer(&tls.Config{}, defaultStaticPort, func(conn net.Conn) {
defer conn.Close()
data := make([]byte, 4)
if _, err := conn.Read(data); err != nil {
return
}
})
defer ts.Close()
results, err := testutils.RunNucleiTemplateAndGetResults(filePath, ts.URL, debug, "-V")
if err != nil {
return err
}
return expectResultsCount(results, 2)
}
+97 -1
View File
@@ -3,11 +3,15 @@ package main
import (
"fmt"
"io"
"log"
"net/http"
"net/http/httptest"
"strings"
"github.com/julienschmidt/httprouter"
"github.com/projectdiscovery/nuclei/v3/pkg/templates"
"github.com/projectdiscovery/nuclei/v3/pkg/templates/signer"
"github.com/projectdiscovery/nuclei/v3/pkg/testutils"
)
@@ -16,11 +20,40 @@ var workflowTestcases = []TestCaseInfo{
{Path: "workflow/condition-matched.yaml", TestCase: &workflowConditionMatched{}},
{Path: "workflow/condition-unmatched.yaml", TestCase: &workflowConditionUnmatch{}},
{Path: "workflow/matcher-name.yaml", TestCase: &workflowMatcherName{}},
{Path: "workflow/complex-conditions.yaml", TestCase: &workflowComplexConditions{}},
{Path: "workflow/http-value-share-workflow.yaml", TestCase: &workflowHttpKeyValueShare{}},
{Path: "workflow/dns-value-share-workflow.yaml", TestCase: &workflowDnsKeyValueShare{}},
{Path: "workflow/code-value-share-workflow.yaml", TestCase: &workflowCodeKeyValueShare{}, DisableOn: isCodeDisabled}, // isCodeDisabled declared in code.go
{Path: "workflow/multiprotocol-value-share-workflow.yaml", TestCase: &workflowMultiProtocolKeyValueShare{}},
{Path: "workflow/shared-cookie.yaml", TestCase: &workflowSharedCookies{}},
}
func init() {
// sign code templates (unless they are disabled)
if !isCodeDisabled() {
// allow local file access to load content of file references in template
// in order to sign them for testing purposes
templates.TemplateSignerLFA()
// testCertFile and testKeyFile are declared in code.go
tsigner, err := signer.NewTemplateSignerFromFiles(testCertFile, testKeyFile)
if err != nil {
panic(err)
}
// only the code templates are necessary to be signed
var templatesToSign = []string{
"workflow/code-template-1.yaml",
"workflow/code-template-2.yaml",
}
for _, templatePath := range templatesToSign {
if err := templates.SignTemplate(tsigner, templatePath); err != nil {
log.Fatalf("Could not sign template %v got: %s\n", templatePath, err)
}
}
}
}
type workflowBasic struct{}
// Execute executes a test case and returns an error if occurred
@@ -97,6 +130,30 @@ func (h *workflowMatcherName) Execute(filePath string) error {
return expectResultsCount(results, 1)
}
type workflowComplexConditions struct{}
// Execute executes a test case and returns an error if occurred
func (h *workflowComplexConditions) Execute(filePath string) error {
router := httprouter.New()
router.GET("/", func(w http.ResponseWriter, r *http.Request, _ httprouter.Params) {
fmt.Fprintf(w, "This is test matcher text")
})
ts := httptest.NewServer(router)
defer ts.Close()
results, err := testutils.RunNucleiWorkflowAndGetResults(filePath, ts.URL, debug)
if err != nil {
return err
}
for _, result := range results {
if !strings.Contains(result, "test-matcher-3") {
return fmt.Errorf("incorrect result: the \"basic-get-third:test-matcher-3\" and only that should be matched!\nResults:\n\t%s", strings.Join(results, "\n\t"))
}
}
return expectResultsCount(results, 2)
}
type workflowHttpKeyValueShare struct{}
// Execute executes a test case and returns an error if occurred
@@ -133,11 +190,50 @@ func (h *workflowDnsKeyValueShare) Execute(filePath string) error {
return expectResultsCount(results, 1)
}
type workflowCodeKeyValueShare struct{}
// Execute executes a test case and returns an error if occurred
func (h *workflowCodeKeyValueShare) Execute(filePath string) error {
// provide the Certificate File that the code templates are signed with
certEnvVar := signer.CertEnvVarName + "=" + testCertFile
results, err := testutils.RunNucleiArgsWithEnvAndGetResults(debug, []string{certEnvVar}, "-workflows", filePath, "-target", "input", "-code")
if err != nil {
return err
}
return expectResultsCount(results, 1)
}
type workflowMultiProtocolKeyValueShare struct{}
// Execute executes a test case and returns an error if occurred
func (h *workflowMultiProtocolKeyValueShare) Execute(filePath string) error {
router := httprouter.New()
// the response of path1 contains a domain that will be extracted and shared with the second template
router.GET("/path1", func(w http.ResponseWriter, r *http.Request, _ httprouter.Params) {
fmt.Fprintf(w, "href=\"blog.projectdiscovery.io\"")
})
// path2 responds with the value of the "extracted" query parameter, e.g.: /path2?extracted=blog.projectdiscovery.io => blog.projectdiscovery.io
router.GET("/path2", func(w http.ResponseWriter, r *http.Request, _ httprouter.Params) {
fmt.Fprintf(w, "%s", r.URL.Query().Get("extracted"))
})
ts := httptest.NewServer(router)
defer ts.Close()
results, err := testutils.RunNucleiWorkflowAndGetResults(filePath, ts.URL, debug)
if err != nil {
return err
}
return expectResultsCount(results, 2)
}
type workflowSharedCookies struct{}
// Execute executes a test case and returns an error if occurred
func (h *workflowSharedCookies) Execute(filePath string) error {
handleFunc := func(name string, w http.ResponseWriter, r *http.Request, _ httprouter.Params) {
handleFunc := func(name string, w http.ResponseWriter, _ *http.Request, _ httprouter.Params) {
cookie := &http.Cookie{Name: name, Value: name}
http.SetCookie(w, cookie)
}
+28
View File
@@ -0,0 +1,28 @@
// Warning - This is generated code
package {{.SourcePackage}}
import (
"github.com/projectdiscovery/utils/memoize"
{{range .Imports}}
{{.Name}} {{.Path}}
{{end}}
)
{{range .Functions}}
{{ .SignatureWithPrefix "memoized" }} {
hash := "{{ .Name }}" {{range .Params}} + ":" + fmt.Sprint({{.Name}}) {{end}}
v, err, _ := protocolstate.Memoizer.Do(hash, func() (interface{}, error) {
return {{.Name}}({{.ParamsNames}})
})
if err != nil {
return {{.ResultFirstFieldDefaultValue}}, err
}
if value, ok := v.({{.ResultFirstFieldType}}); ok {
return value, nil
}
return {{.ResultFirstFieldDefaultValue}}, errors.New("could not convert cached result")
}
{{end}}
+77
View File
@@ -0,0 +1,77 @@
// this small cli tool is specific for those functions with arbitrary parameters and with result-error tuple as return values
// func(x,y) => result, error
// it works by creating a new memoized version of the functions in the same path as memo.original.file.go
// some parts are specific for nuclei and hardcoded within the template
package main
import (
"flag"
"io/fs"
"log"
"os"
"path/filepath"
"github.com/projectdiscovery/utils/memoize"
stringsutil "github.com/projectdiscovery/utils/strings"
)
var (
srcPath = flag.String("src", "", "nuclei source path")
tplPath = flag.String("tpl", "function.tpl", "template path")
tplSrc []byte
)
func main() {
flag.Parse()
var err error
tplSrc, err = os.ReadFile(*tplPath)
if err != nil {
log.Fatal(err)
}
err = filepath.Walk(*srcPath, walk)
if err != nil {
log.Fatal(err)
}
}
func walk(path string, info fs.FileInfo, err error) error {
if info.IsDir() {
return nil
}
if err != nil {
return err
}
ext := filepath.Ext(path)
base := filepath.Base(path)
if !stringsutil.EqualFoldAny(ext, ".go") {
return nil
}
basePath := filepath.Dir(path)
outPath := filepath.Join(basePath, "memo."+base)
// filename := filepath.Base(path)
data, err := os.ReadFile(path)
if err != nil {
return err
}
if !stringsutil.ContainsAnyI(string(data), "@memo") {
return nil
}
log.Println("processing:", path)
out, err := memoize.Src(string(tplSrc), path, data, "")
if err != nil {
return err
}
if err := os.WriteFile(outPath, out, os.ModePerm); err != nil {
return err
}
return nil
}
+58
View File
@@ -1,3 +1,8 @@
# global allow/deny list. this will affect both exporters
# as well as issue trackers. you can filter trackers with
# a tracker level filter on top of an exporter by setting
# allow-list/deny-list per tracker.
#
#allow-list:
# severity: high, critical
#deny-list:
@@ -17,6 +22,15 @@
# project-name: test-project
# # issue-label is the label of the created issue type
# issue-label: bug
# # allow-list sets a tracker level filter to only create issues for templates with
# # these severity labels or tags (does not affect exporters. set those globally)
# allow-list:
# severity: high, critical
# tags: network
# # deny-list sets a tracker level filter to never create issues for templates with
# # these severity labels or tags (does not affect exporters. set those globally)
# deny-list:
# severity: low
# # duplicate-issue-check flag to enable duplicate tracking issue check.
# duplicate-issue-check: false
#
@@ -32,6 +46,41 @@
# project-name: "1234"
# # issue-label is the label of the created issue type
# issue-label: bug
# # allow-list sets a tracker level filter to only create issues for templates with
# # these severity labels or tags (does not affect exporters. set those globally)
# allow-list:
# severity: high, critical
# tags: network
# # deny-list sets a tracker level filter to never create issues for templates with
# # these severity labels or tags (does not affect exporters. set those globally)
# deny-list:
# severity: low
#
# Gitea contains configuration options for a gitea issue tracker
#gitea:
# # base-url is the optional self-hosted Gitea application url (defaults to https://gitea.com)
# base-url: https://localhost:8443/
# # token is the token for a Gitea account to use
# token: test-token
# # project-owner is the owner (user or org) of the repository
# project-owner: "1234"
# # project-name is the name of the repository
# project-name: "1234"
# # issue-label is a custom label to add to created issues
# issue-label: bug
# # severity-as-label (optional) adds the severity as a label of the created issue
# severity-as-label: true
# # allow-list sets a tracker level filter to only create issues for templates with
# # these severity labels or tags (does not affect exporters. set those globally)
# allow-list:
# severity: high, critical
# tags: network
# # deny-list sets a tracker level filter to never create issues for templates with
# # these severity labels or tags (does not affect exporters. set those globally)
# deny-list:
# severity: low
# # duplicate-issue-check (optional) flag to enable duplicate tracking issue check
# duplicate-issue-check: false
#
# Jira contains configuration options for Jira issue tracker
#jira:
@@ -54,6 +103,15 @@
# # SeverityAsLabel (optional) sends the severity as the label of the created issue
# # User custom fields for Jira Cloud instead
# severity-as-label: true
# # allow-list sets a tracker level filter to only create issues for templates with
# # these severity labels or tags (does not affect exporters. set those globally)
# allow-list:
# severity: high, critical
# tags: network
# # deny-list sets a tracker level filter to never create issues for templates with
# # these severity labels or tags (does not affect exporters. set those globally)
# deny-list:
# severity: low
# # Whatever your final status is that you want to use as a closed ticket - Closed, Done, Remediated, etc
# # When checking for duplicates, the JQL query will filter out status's that match this.
# # If it finds a match _and_ the ticket does have this status, a new one will be created.
+128 -17
View File
@@ -12,8 +12,11 @@ import (
"strings"
"time"
_pdcp "github.com/projectdiscovery/nuclei/v3/internal/pdcp"
"github.com/projectdiscovery/utils/auth/pdcp"
"github.com/projectdiscovery/utils/env"
_ "github.com/projectdiscovery/utils/pprof"
stringsutil "github.com/projectdiscovery/utils/strings"
"github.com/projectdiscovery/goflags"
"github.com/projectdiscovery/gologger"
@@ -21,6 +24,7 @@ import (
"github.com/projectdiscovery/interactsh/pkg/client"
"github.com/projectdiscovery/nuclei/v3/internal/runner"
"github.com/projectdiscovery/nuclei/v3/pkg/catalog/config"
"github.com/projectdiscovery/nuclei/v3/pkg/input/provider"
"github.com/projectdiscovery/nuclei/v3/pkg/installer"
"github.com/projectdiscovery/nuclei/v3/pkg/model/types/severity"
"github.com/projectdiscovery/nuclei/v3/pkg/operators/common/dsl"
@@ -35,16 +39,21 @@ import (
"github.com/projectdiscovery/nuclei/v3/pkg/utils/monitor"
errorutil "github.com/projectdiscovery/utils/errors"
fileutil "github.com/projectdiscovery/utils/file"
unitutils "github.com/projectdiscovery/utils/unit"
updateutils "github.com/projectdiscovery/utils/update"
)
var (
cfgFile string
memProfile string // optional profile file path
options = &types.Options{}
cfgFile string
templateProfile string
memProfile string // optional profile file path
options = &types.Options{}
)
func main() {
// enables CLI specific configs mostly interactive behavior
config.CurrentAppMode = config.AppModeCLI
if err := runner.ConfigureOptions(); err != nil {
gologger.Fatal().Msgf("Could not initialize options: %s\n", err)
}
@@ -134,7 +143,10 @@ func main() {
nucleiRunner.Close()
gologger.Info().Msgf("Creating resume file: %s\n", resumeFileName)
err := nucleiRunner.SaveResumeConfig(resumeFileName)
return errorutil.NewWithErr(err).Msgf("couldn't create crash resume file")
if err != nil {
return errorutil.NewWithErr(err).Msgf("couldn't create crash resume file")
}
return nil
})
}
@@ -180,7 +192,8 @@ func readConfig() *goflags.FlagSet {
// when true updates nuclei binary to latest version
var updateNucleiBinary bool
var pdcpauth bool
var pdcpauth string
var fuzzFlag bool
flagSet := goflags.NewFlagSet()
flagSet.CaseSensitive = true
@@ -192,7 +205,7 @@ on extensive configurability, massive extensibility and ease of use.`)
*/
flagSet.CreateGroup("input", "Target",
flagSet.StringSliceVarP(&options.Targets, "target", "u", nil, "target URLs/hosts to scan", goflags.StringSliceOptions),
flagSet.StringSliceVarP(&options.Targets, "target", "u", nil, "target URLs/hosts to scan", goflags.CommaSeparatedStringSliceOptions),
flagSet.StringVarP(&options.TargetsFilePath, "list", "l", "", "path to file containing a list of target URLs/hosts to scan (one per line)"),
flagSet.StringSliceVarP(&options.ExcludeTargets, "exclude-hosts", "eh", nil, "hosts to exclude to scan from the input list (ip, cidr, hostname)", goflags.FileCommaSeparatedStringSliceOptions),
flagSet.StringVar(&options.Resume, "resume", "", "resume scan using resume.cfg (clustering will be disabled)"),
@@ -200,6 +213,12 @@ on extensive configurability, massive extensibility and ease of use.`)
flagSet.StringSliceVarP(&options.IPVersion, "ip-version", "iv", nil, "IP version to scan of hostname (4,6) - (default 4)", goflags.CommaSeparatedStringSliceOptions),
)
flagSet.CreateGroup("target-format", "Target-Format",
flagSet.StringVarP(&options.InputFileMode, "input-mode", "im", "list", fmt.Sprintf("mode of input file (%v)", provider.SupportedInputFormats())),
flagSet.BoolVarP(&options.FormatUseRequiredOnly, "required-only", "ro", false, "use only required fields in input format when generating requests"),
flagSet.BoolVarP(&options.SkipFormatValidation, "skip-format-validation", "sfv", false, "skip format validation (like missing vars) when parsing input file"),
)
flagSet.CreateGroup("templates", "Templates",
flagSet.BoolVarP(&options.NewTemplates, "new-templates", "nt", false, "run only new templates added in latest nuclei-templates release"),
flagSet.StringSliceVarP(&options.NewTemplatesWithVersion, "new-templates-version", "ntv", nil, "run new templates added in specific version", goflags.CommaSeparatedStringSliceOptions),
@@ -212,9 +231,11 @@ on extensive configurability, massive extensibility and ease of use.`)
flagSet.BoolVarP(&options.NoStrictSyntax, "no-strict-syntax", "nss", false, "disable strict syntax check on templates"),
flagSet.BoolVarP(&options.TemplateDisplay, "template-display", "td", false, "displays the templates content"),
flagSet.BoolVar(&options.TemplateList, "tl", false, "list all available templates"),
flagSet.BoolVar(&options.TagList, "tgl", false, "list all available tags"),
flagSet.StringSliceVarConfigOnly(&options.RemoteTemplateDomainList, "remote-template-domain", []string{"cloud.projectdiscovery.io"}, "allowed domain list to load remote templates from"),
flagSet.BoolVar(&options.SignTemplates, "sign", false, "signs the templates with the private key defined in NUCLEI_SIGNATURE_PRIVATE_KEY env variable"),
flagSet.BoolVar(&options.EnableCodeTemplates, "code", false, "enable loading code protocol-based templates"),
flagSet.BoolVarP(&options.DisableUnsignedTemplates, "disable-unsigned-templates", "dut", false, "disable running unsigned templates or templates with mismatched signature"),
)
flagSet.CreateGroup("filters", "Filtering",
@@ -224,8 +245,8 @@ on extensive configurability, massive extensibility and ease of use.`)
flagSet.StringSliceVarP(&options.IncludeTags, "include-tags", "itags", nil, "tags to be executed even if they are excluded either by default or configuration", goflags.FileNormalizedStringSliceOptions), // TODO show default deny list
flagSet.StringSliceVarP(&options.IncludeIds, "template-id", "id", nil, "templates to run based on template ids (comma-separated, file, allow-wildcard)", goflags.FileNormalizedStringSliceOptions),
flagSet.StringSliceVarP(&options.ExcludeIds, "exclude-id", "eid", nil, "templates to exclude based on template ids (comma-separated, file)", goflags.FileNormalizedStringSliceOptions),
flagSet.StringSliceVarP(&options.IncludeTemplates, "include-templates", "it", nil, "templates to be executed even if they are excluded either by default or configuration", goflags.FileCommaSeparatedStringSliceOptions),
flagSet.StringSliceVarP(&options.ExcludedTemplates, "exclude-templates", "et", nil, "template or template directory to exclude (comma-separated, file)", goflags.FileCommaSeparatedStringSliceOptions),
flagSet.StringSliceVarP(&options.IncludeTemplates, "include-templates", "it", nil, "path to template file or directory to be executed even if they are excluded either by default or configuration", goflags.FileCommaSeparatedStringSliceOptions),
flagSet.StringSliceVarP(&options.ExcludedTemplates, "exclude-templates", "et", nil, "path to template file or directory to exclude (comma-separated, file)", goflags.FileCommaSeparatedStringSliceOptions),
flagSet.StringSliceVarP(&options.ExcludeMatchers, "exclude-matchers", "em", nil, "template matchers to exclude in result", goflags.FileCommaSeparatedStringSliceOptions),
flagSet.VarP(&options.Severities, "severity", "s", fmt.Sprintf("templates to run based on severity. Possible values: %s", severity.GetSupportedSeverities().String())),
flagSet.VarP(&options.ExcludeSeverities, "exclude-severity", "es", fmt.Sprintf("templates to exclude based on severity. Possible values: %s", severity.GetSupportedSeverities().String())),
@@ -252,10 +273,13 @@ on extensive configurability, massive extensibility and ease of use.`)
flagSet.StringVarP(&options.SarifExport, "sarif-export", "se", "", "file to export results in SARIF format"),
flagSet.StringVarP(&options.JSONExport, "json-export", "je", "", "file to export results in JSON format"),
flagSet.StringVarP(&options.JSONLExport, "jsonl-export", "jle", "", "file to export results in JSONL(ine) format"),
flagSet.StringSliceVarP(&options.Redact, "redact", "rd", nil, "redact given list of keys from query parameter, request header and body", goflags.CommaSeparatedStringSliceOptions),
)
flagSet.CreateGroup("configs", "Configurations",
flagSet.StringVar(&cfgFile, "config", "", "path to the nuclei configuration file"),
flagSet.StringVarP(&templateProfile, "profile", "tp", "", "template profile config file to run"),
flagSet.BoolVarP(&options.ListTemplateProfiles, "profile-list", "tpl", false, "list community template profiles"),
flagSet.BoolVarP(&options.FollowRedirects, "follow-redirects", "fr", false, "enable following redirects for http templates"),
flagSet.BoolVarP(&options.FollowHostRedirects, "follow-host-redirects", "fhr", false, "follow redirects on the same host"),
flagSet.IntVarP(&options.MaxRedirects, "max-redirects", "mr", 10, "max number of redirects to follow for http templates"),
@@ -275,17 +299,17 @@ on extensive configurability, massive extensibility and ease of use.`)
flagSet.BoolVarP(&options.ShowMatchLine, "show-match-line", "sml", false, "show match lines for file templates, works with extractors only"),
flagSet.BoolVar(&options.ZTLS, "ztls", false, "use ztls library with autofallback to standard one for tls13 [Deprecated] autofallback to ztls is enabled by default"), //nolint:all
flagSet.StringVar(&options.SNI, "sni", "", "tls sni hostname to use (default: input domain name)"),
flagSet.DurationVarP(&options.DialerTimeout, "dialer-timeout", "dt", 0, "timeout for network requests."),
flagSet.DurationVarP(&options.DialerKeepAlive, "dialer-keep-alive", "dka", 0, "keep-alive duration for network requests."),
flagSet.BoolVarP(&options.AllowLocalFileAccess, "allow-local-file-access", "lfa", false, "allows file (payload) access anywhere on the system"),
flagSet.BoolVarP(&options.RestrictLocalNetworkAccess, "restrict-local-network-access", "lna", false, "blocks connections to the local / private network"),
flagSet.StringVarP(&options.Interface, "interface", "i", "", "network interface to use for network scan"),
flagSet.StringVarP(&options.AttackType, "attack-type", "at", "", "type of payload combinations to perform (batteringram,pitchfork,clusterbomb)"),
flagSet.StringVarP(&options.SourceIP, "source-ip", "sip", "", "source ip address to use for network scan"),
flagSet.IntVarP(&options.ResponseReadSize, "response-size-read", "rsr", 10*1024*1024, "max response size to read in bytes"),
flagSet.IntVarP(&options.ResponseSaveSize, "response-size-save", "rss", 1*1024*1024, "max response size to read in bytes"),
flagSet.IntVarP(&options.ResponseReadSize, "response-size-read", "rsr", 0, "max response size to read in bytes"),
flagSet.IntVarP(&options.ResponseSaveSize, "response-size-save", "rss", unitutils.Mega, "max response size to read in bytes"),
flagSet.CallbackVar(resetCallback, "reset", "reset removes all nuclei configuration and data files (including nuclei-templates)"),
flagSet.BoolVarP(&options.TlsImpersonate, "tls-impersonate", "tlsi", false, "enable experimental client hello (ja3) tls randomization"),
flagSet.StringVarP(&options.HttpApiEndpoint, "http-api-endpoint", "hae", "", "experimental http api endpoint"),
)
flagSet.CreateGroup("interactsh", "interactsh",
@@ -301,6 +325,11 @@ on extensive configurability, massive extensibility and ease of use.`)
flagSet.CreateGroup("fuzzing", "Fuzzing",
flagSet.StringVarP(&options.FuzzingType, "fuzzing-type", "ft", "", "overrides fuzzing type set in template (replace, prefix, postfix, infix)"),
flagSet.StringVarP(&options.FuzzingMode, "fuzzing-mode", "fm", "", "overrides fuzzing mode set in template (multiple, single)"),
flagSet.BoolVar(&fuzzFlag, "fuzz", false, "enable loading fuzzing templates (Deprecated: use -dast instead)"),
flagSet.BoolVar(&options.DAST, "dast", false, "enable / run dast (fuzz) nuclei templates"),
flagSet.BoolVarP(&options.DisplayFuzzPoints, "display-fuzz-points", "dfp", false, "display fuzz points in the output for debugging"),
flagSet.IntVar(&options.FuzzParamFrequency, "fuzz-param-frequency", 10, "frequency of uninteresting parameters for fuzzing before skipping"),
flagSet.StringVarP(&options.FuzzAggressionLevel, "fuzz-aggression", "fa", "low", "fuzzing aggression level controls payload count for fuzz (low, medium, high)"),
)
flagSet.CreateGroup("uncover", "Uncover",
@@ -314,12 +343,15 @@ on extensive configurability, massive extensibility and ease of use.`)
flagSet.CreateGroup("rate-limit", "Rate-Limit",
flagSet.IntVarP(&options.RateLimit, "rate-limit", "rl", 150, "maximum number of requests to send per second"),
flagSet.IntVarP(&options.RateLimitMinute, "rate-limit-minute", "rlm", 0, "maximum number of requests to send per minute"),
flagSet.DurationVarP(&options.RateLimitDuration, "rate-limit-duration", "rld", time.Second, "maximum number of requests to send per second"),
flagSet.IntVarP(&options.RateLimitMinute, "rate-limit-minute", "rlm", 0, "maximum number of requests to send per minute (DEPRECATED)"),
flagSet.IntVarP(&options.BulkSize, "bulk-size", "bs", 25, "maximum number of hosts to be analyzed in parallel per template"),
flagSet.IntVarP(&options.TemplateThreads, "concurrency", "c", 25, "maximum number of templates to be executed in parallel"),
flagSet.IntVarP(&options.HeadlessBulkSize, "headless-bulk-size", "hbs", 10, "maximum number of headless hosts to be analyzed in parallel per template"),
flagSet.IntVarP(&options.HeadlessTemplateThreads, "headless-concurrency", "headc", 10, "maximum number of headless templates to be executed in parallel"),
flagSet.IntVarP(&options.JsConcurrency, "js-concurrency", "jsc", 120, "maximum number of javascript runtimes to be executed in parallel"),
flagSet.IntVarP(&options.PayloadConcurrency, "payload-concurrency", "pc", 25, "max payload concurrency for each template"),
flagSet.IntVarP(&options.ProbeConcurrency, "probe-concurrency", "prc", 50, "http probe concurrency with httpx"),
)
flagSet.CreateGroup("optimization", "Optimizations",
flagSet.IntVar(&options.Timeout, "timeout", 10, "time to wait in seconds before timeout"),
@@ -386,9 +418,16 @@ on extensive configurability, massive extensibility and ease of use.`)
)
flagSet.CreateGroup("cloud", "Cloud",
flagSet.BoolVar(&pdcpauth, "auth", false, "configure projectdiscovery cloud (pdcp) api key"),
flagSet.DynamicVar(&pdcpauth, "auth", "true", "configure projectdiscovery cloud (pdcp) api key"),
flagSet.StringVarP(&options.TeamID, "team-id", "tid", _pdcp.TeamIDEnv, "upload scan results to given team id (optional)"),
flagSet.BoolVarP(&options.EnableCloudUpload, "cloud-upload", "cup", false, "upload scan results to pdcp dashboard"),
flagSet.StringVarP(&options.ScanID, "scan-id", "sid", "", "upload scan results to given scan id"),
flagSet.StringVarP(&options.ScanID, "scan-id", "sid", "", "upload scan results to existing scan id (optional)"),
flagSet.StringVarP(&options.ScanName, "scan-name", "sname", "", "scan name to set (optional)"),
)
flagSet.CreateGroup("Authentication", "Authentication",
flagSet.StringSliceVarP(&options.SecretsFile, "secret-file", "sf", nil, "path to config file containing secrets for nuclei authenticated scan", goflags.CommaSeparatedStringSliceOptions),
flagSet.BoolVarP(&options.PreFetchSecrets, "prefetch-secrets", "ps", false, "prefetch secrets from the secrets file"),
)
flagSet.SetCustomHelpText(`EXAMPLES:
@@ -417,8 +456,23 @@ Additional documentation is available at: https://docs.nuclei.sh/getting-started
goflags.DisableAutoConfigMigration = true
_ = flagSet.Parse()
if pdcpauth {
// when fuzz flag is enabled, set the dast flag to true
if fuzzFlag {
// backwards compatibility for fuzz flag
options.DAST = true
}
// api key hierarchy: cli flag > env var > .pdcp/credential file
if pdcpauth == "true" {
runner.AuthWithPDCP()
} else if len(pdcpauth) == 36 {
ph := pdcp.PDCPCredHandler{}
if _, err := ph.GetCreds(); err == pdcp.ErrNoCreds {
apiServer := env.GetEnvOrDefault("PDCP_API_SERVER", pdcp.DefaultApiServer)
if validatedCreds, err := ph.ValidateAPIKey(pdcpauth, apiServer, config.BinaryName); err == nil {
_ = ph.SaveCreds(validatedCreds)
}
}
}
gologger.DefaultLogger.SetTimestamp(options.Timestamp, levels.LevelDebug)
@@ -456,6 +510,42 @@ Additional documentation is available at: https://docs.nuclei.sh/getting-started
config.DefaultConfig.SetTemplatesDir(options.NewTemplatesDirectory)
}
defaultProfilesPath := filepath.Join(config.DefaultConfig.GetTemplateDir(), "profiles")
if templateProfile != "" {
if filepath.Ext(templateProfile) == "" {
if tp := findProfilePathById(templateProfile, defaultProfilesPath); tp != "" {
templateProfile = tp
} else {
gologger.Fatal().Msgf("'%s' is not a profile-id or profile path", templateProfile)
}
}
if !filepath.IsAbs(templateProfile) {
if filepath.Dir(templateProfile) == "profiles" {
defaultProfilesPath = filepath.Join(config.DefaultConfig.GetTemplateDir())
}
currentDir, err := os.Getwd()
if err == nil && fileutil.FileExists(filepath.Join(currentDir, templateProfile)) {
templateProfile = filepath.Join(currentDir, templateProfile)
} else {
templateProfile = filepath.Join(defaultProfilesPath, templateProfile)
}
}
if !fileutil.FileExists(templateProfile) {
gologger.Fatal().Msgf("given template profile file '%s' does not exist", templateProfile)
}
if err := flagSet.MergeConfigFile(templateProfile); err != nil {
gologger.Fatal().Msgf("Could not read template profile: %s\n", err)
}
}
if len(options.SecretsFile) > 0 {
for _, secretFile := range options.SecretsFile {
if !fileutil.FileExists(secretFile) {
gologger.Fatal().Msgf("given secrets file '%s' does not exist", options.SecretsFile)
}
}
}
cleanupOldResumeFiles()
return flagSet
}
@@ -553,10 +643,10 @@ Note: Make sure you have backup of your custom nuclei-templates before proceedin
gologger.Fatal().Msgf("could not read response: %s", err)
}
resp = strings.TrimSpace(resp)
if strings.EqualFold(resp, "y") || strings.EqualFold(resp, "yes") {
if stringsutil.EqualFoldAny(resp, "y", "yes") {
break
}
if strings.EqualFold(resp, "n") || strings.EqualFold(resp, "no") || resp == "" {
if stringsutil.EqualFoldAny(resp, "n", "no", "") {
fmt.Println("Exiting...")
os.Exit(0)
}
@@ -573,6 +663,27 @@ Note: Make sure you have backup of your custom nuclei-templates before proceedin
os.Exit(0)
}
func findProfilePathById(profileId, templatesDir string) string {
var profilePath string
err := filepath.WalkDir(templatesDir, func(iterItem string, d fs.DirEntry, err error) error {
ext := filepath.Ext(iterItem)
isYaml := ext == extensions.YAML || ext == extensions.YML
if err != nil || d.IsDir() || !isYaml {
// skip non yaml files
return nil
}
if strings.TrimSuffix(filepath.Base(iterItem), ext) == profileId {
profilePath = iterItem
return fmt.Errorf("FOUND")
}
return nil
})
if err != nil && err.Error() != "FOUND" {
gologger.Error().Msgf("%s\n", err)
}
return profilePath
}
func init() {
// print stacktrace of errors in debug mode
if strings.EqualFold(os.Getenv("DEBUG"), "true") {
+18
View File
@@ -0,0 +1,18 @@
id: basic-dns-a-example
info:
name: Test DNS A Query Template
author: pdteam
severity: info
dns:
- name: "{{FQDN}}"
type: SRV
class: inet
recursion: true
retries: 3
matchers:
- type: word
part: all
words:
- "SRV"
+40
View File
@@ -0,0 +1,40 @@
package main
import (
"flag"
"github.com/projectdiscovery/nuclei/v3/pkg/scan/charts"
)
var (
dir string
address string
output string
)
func main() {
flag.StringVar(&dir, "dir", "", "directory to scan")
flag.StringVar(&address, "address", ":9000", "address to run the server on")
flag.StringVar(&output, "output", "", "output filename of generated html file")
flag.Parse()
if dir == "" {
flag.Usage()
return
}
server, err := charts.NewScanEventsCharts(dir)
if err != nil {
panic(err)
}
server.PrintInfo()
if output != "" {
if err = server.GenerateHTML(output); err != nil {
panic(err)
}
return
}
server.Start(address)
}
+6 -6
View File
@@ -162,7 +162,7 @@ func process(opts options) error {
var updated bool // if max-requests is updated
dataString, updated, err = parseAndAddMaxRequests(templateCatalog, path, dataString)
if err != nil {
gologger.Info().Label("max-request").Msgf(logErrMsg(path, err, opts.debug, errFile))
gologger.Info().Label("max-request").Msg(logErrMsg(path, err, opts.debug, errFile))
} else {
if updated {
gologger.Info().Label("max-request").Msgf("✅ updated template: %s\n", path)
@@ -231,7 +231,7 @@ func logErrMsg(path string, err error, debug bool, errFile *os.File) string {
return msg
}
// enhanceTemplateData enhances template data using templateman
// enhanceTemplate enhances template data using templateman
// ref: https://github.com/projectdiscovery/templateman/blob/main/templateman-rest-api/README.md#enhance-api
func enhanceTemplate(data string) (string, bool, error) {
resp, err := retryablehttp.DefaultClient().Post(fmt.Sprintf("%s/enhance", tmBaseUrl), "application/x-yaml", strings.NewReader(data))
@@ -255,7 +255,7 @@ func enhanceTemplate(data string) (string, bool, error) {
return data, false, errorutil.New("validation failed").WithTag("validate")
}
if templateResp.Error.Name != "" {
return data, false, errorutil.New(templateResp.Error.Name)
return data, false, errorutil.New("%s", templateResp.Error.Name)
}
if strings.TrimSpace(templateResp.Enhanced) == "" && !templateResp.Lint {
if templateResp.LintError.Reason != "" {
@@ -266,7 +266,7 @@ func enhanceTemplate(data string) (string, bool, error) {
return data, false, errorutil.New("template enhance failed")
}
// formatTemplateData formats template data using templateman format api
// formatTemplate formats template data using templateman format api
func formatTemplate(data string) (string, bool, error) {
resp, err := retryablehttp.DefaultClient().Post(fmt.Sprintf("%s/format", tmBaseUrl), "application/x-yaml", strings.NewReader(data))
if err != nil {
@@ -289,7 +289,7 @@ func formatTemplate(data string) (string, bool, error) {
return data, false, errorutil.New("validation failed").WithTag("validate")
}
if templateResp.Error.Name != "" {
return data, false, errorutil.New(templateResp.Error.Name)
return data, false, errorutil.New("%s", templateResp.Error.Name)
}
if strings.TrimSpace(templateResp.Updated) == "" && !templateResp.Lint {
if templateResp.LintError.Reason != "" {
@@ -345,7 +345,7 @@ func validateTemplate(data string) (bool, error) {
return false, errorutil.New("validation failed").WithTag("validate")
}
if validateResp.Error.Name != "" {
return false, errorutil.New(validateResp.Error.Name)
return false, errorutil.New("%s", validateResp.Error.Name)
}
return false, errorutil.New("template validation failed")
}
+17 -84
View File
@@ -1,94 +1,27 @@
package main
import (
"fmt"
"io"
"os/exec"
"strconv"
"strings"
"flag"
"github.com/labstack/echo/v4"
"github.com/labstack/echo/v4/middleware"
"github.com/projectdiscovery/retryablehttp-go"
_ "github.com/mattn/go-sqlite3"
"github.com/projectdiscovery/gologger"
"github.com/projectdiscovery/nuclei/v3/pkg/testutils/fuzzplayground"
)
var (
addr string
)
func main() {
e := echo.New()
e.Use(middleware.Recover())
e.Use(middleware.Logger())
flag.StringVar(&addr, "addr", "localhost:8082", "playground server address")
flag.Parse()
e.GET("/", indexHandler)
e.GET("/info", infoHandler)
e.GET("/redirect", redirectHandler)
e.GET("/request", requestHandler)
e.GET("/email", emailHandler)
e.GET("/permissions", permissionsHandler)
if err := e.Start("localhost:8082"); err != nil {
panic(err)
defer fuzzplayground.Cleanup()
server := fuzzplayground.GetPlaygroundServer()
defer server.Close()
// Start the server
if err := server.Start(addr); err != nil {
gologger.Fatal().Msgf("Could not start server: %s\n", err)
}
}
var bodyTemplate = `<html>
<head>
<title>Fuzz Playground</title>
</head>
<body>
%s
</body>
</html>`
func indexHandler(ctx echo.Context) error {
return ctx.HTML(200, fmt.Sprintf(bodyTemplate, `<h1>Fuzzing Playground</h1><hr>
<ul>
<li><a href="/info?name=test&another=value&random=data">Info Page XSS</a></li>
<li><a href="/redirect?redirect_url=/info?name=redirected_from_url">Redirect Page OpenRedirect</a></li>
<li><a href="/request?url=https://example.com">Request Page SSRF</a></li>
<li><a href="/email?text=important_user">Email Page SSTI</a></li>
<li><a href="/permissions?cmd=whoami">Permissions Page CMDI</a></li>
</ul>
`))
}
func infoHandler(ctx echo.Context) error {
return ctx.HTML(200, fmt.Sprintf(bodyTemplate, fmt.Sprintf("Name of user: %s%s%s", ctx.QueryParam("name"), ctx.QueryParam("another"), ctx.QueryParam("random"))))
}
func redirectHandler(ctx echo.Context) error {
url := ctx.QueryParam("redirect_url")
return ctx.Redirect(302, url)
}
func requestHandler(ctx echo.Context) error {
url := ctx.QueryParam("url")
data, err := retryablehttp.DefaultClient().Get(url)
if err != nil {
return ctx.HTML(500, err.Error())
}
defer data.Body.Close()
body, _ := io.ReadAll(data.Body)
return ctx.HTML(200, fmt.Sprintf(bodyTemplate, string(body)))
}
func emailHandler(ctx echo.Context) error {
text := ctx.QueryParam("text")
if strings.Contains(text, "{{") {
trimmed := strings.SplitN(strings.Trim(text[strings.Index(text, "{"):], "{}"), "*", 2)
if len(trimmed) < 2 {
return ctx.HTML(500, "invalid template")
}
first, _ := strconv.Atoi(trimmed[0])
second, _ := strconv.Atoi(trimmed[1])
text = strconv.Itoa(first * second)
}
return ctx.HTML(200, fmt.Sprintf(bodyTemplate, fmt.Sprintf("Text: %s", text)))
}
func permissionsHandler(ctx echo.Context) error {
command := ctx.QueryParam("cmd")
fields := strings.Fields(command)
cmd := exec.Command(fields[0], fields[1:]...)
data, _ := cmd.CombinedOutput()
return ctx.HTML(200, fmt.Sprintf(bodyTemplate, string(data)))
}
+18 -3
View File
@@ -1,18 +1,32 @@
package main
import (
"context"
nuclei "github.com/projectdiscovery/nuclei/v3/lib"
"github.com/remeh/sizedwaitgroup"
"github.com/projectdiscovery/nuclei/v3/pkg/installer"
syncutil "github.com/projectdiscovery/utils/sync"
)
func main() {
ctx := context.Background()
// when running nuclei in parallel for first time it is a good practice to make sure
// templates exists first
tm := installer.TemplateManager{}
if err := tm.FreshInstallIfNotExists(); err != nil {
panic(err)
}
// create nuclei engine with options
ne, err := nuclei.NewThreadSafeNucleiEngine()
ne, err := nuclei.NewThreadSafeNucleiEngineCtx(ctx)
if err != nil {
panic(err)
}
// setup sizedWaitgroup to handle concurrency
sg := sizedwaitgroup.New(10)
sg, err := syncutil.New(syncutil.WithSize(10))
if err != nil {
panic(err)
}
// scan 1 = run dns templates on scanme.sh
sg.Add()
@@ -21,6 +35,7 @@ func main() {
err = ne.ExecuteNucleiWithOpts([]string{"scanme.sh"},
nuclei.WithTemplateFilters(nuclei.TemplateFilters{ProtocolTypes: "dns"}),
nuclei.WithHeaders([]string{"X-Bug-Bounty: pdteam"}),
nuclei.EnablePassiveMode(),
)
if err != nil {
panic(err)
+6 -2
View File
@@ -1,9 +1,13 @@
package main
import nuclei "github.com/projectdiscovery/nuclei/v3/lib"
import (
"context"
nuclei "github.com/projectdiscovery/nuclei/v3/lib"
)
func main() {
ne, err := nuclei.NewNucleiEngine(
ne, err := nuclei.NewNucleiEngineCtx(context.Background(),
nuclei.WithTemplateFilters(nuclei.TemplateFilters{Tags: []string{"oast"}}),
nuclei.EnableStatsWithOpts(nuclei.StatsOptions{MetricServerPort: 6064}), // optionally enable metrics server for better observability
)
+104
View File
@@ -0,0 +1,104 @@
package main
import (
"log"
"sync"
"time"
nuclei "github.com/projectdiscovery/nuclei/v3/lib"
"github.com/projectdiscovery/nuclei/v3/pkg/templates/types"
)
func main() {
ne, err := initializeNucleiEngine()
if err != nil {
panic(err)
}
defer ne.Close()
ne.LoadTargets([]string{"http://honey.scanme.sh"}, false)
var wg sync.WaitGroup
wg.Add(3)
go testRateLimit(&wg, ne)
go testThreadsAndBulkSize(&wg, ne)
go testPayloadConcurrency(&wg, ne)
err = ne.ExecuteWithCallback(nil)
if err != nil {
panic(err)
}
wg.Wait()
}
func initializeNucleiEngine() (*nuclei.NucleiEngine, error) {
return nuclei.NewNucleiEngine(
nuclei.WithTemplateFilters(nuclei.TemplateFilters{Tags: []string{"oast"}}),
nuclei.EnableStatsWithOpts(nuclei.StatsOptions{MetricServerPort: 6064}),
nuclei.WithGlobalRateLimit(1, time.Second),
nuclei.WithConcurrency(nuclei.Concurrency{
TemplateConcurrency: 1,
HostConcurrency: 1,
HeadlessHostConcurrency: 1,
HeadlessTemplateConcurrency: 1,
JavascriptTemplateConcurrency: 1,
TemplatePayloadConcurrency: 1,
ProbeConcurrency: 1,
}),
)
}
func testRateLimit(wg *sync.WaitGroup, ne *nuclei.NucleiEngine) {
defer wg.Done()
verifyRateLimit(ne, 1, 5000)
}
func testThreadsAndBulkSize(wg *sync.WaitGroup, ne *nuclei.NucleiEngine) {
defer wg.Done()
initialTemplateThreads, initialBulkSize := 1, 1
verifyThreadsAndBulkSize(ne, initialTemplateThreads, initialBulkSize, 25, 25)
}
func testPayloadConcurrency(wg *sync.WaitGroup, ne *nuclei.NucleiEngine) {
defer wg.Done()
verifyPayloadConcurrency(ne, 1, 500)
}
func verifyRateLimit(ne *nuclei.NucleiEngine, initialRate, finalRate int) {
if ne.GetExecuterOptions().RateLimiter.GetLimit() != uint(initialRate) {
panic("wrong initial rate limit")
}
time.Sleep(5 * time.Second)
ne.Options().RateLimit = finalRate
time.Sleep(20 * time.Second)
if ne.GetExecuterOptions().RateLimiter.GetLimit() != uint(finalRate) {
panic("wrong final rate limit")
}
}
func verifyThreadsAndBulkSize(ne *nuclei.NucleiEngine, initialThreads, initialBulk, finalThreads, finalBulk int) {
if ne.Options().TemplateThreads != initialThreads || ne.Options().BulkSize != initialBulk {
panic("wrong initial standard concurrency")
}
time.Sleep(5 * time.Second)
ne.Options().TemplateThreads = finalThreads
ne.Options().BulkSize = finalBulk
time.Sleep(20 * time.Second)
if ne.Engine().GetWorkPool().InputPool(types.HTTPProtocol).Size != finalBulk || ne.Engine().WorkPool().Default.Size != finalThreads {
log.Fatal("wrong final concurrency", ne.Engine().WorkPool().Default.Size, finalThreads, ne.Engine().GetWorkPool().InputPool(types.HTTPProtocol).Size, finalBulk)
}
}
func verifyPayloadConcurrency(ne *nuclei.NucleiEngine, initialPayloadConcurrency, finalPayloadConcurrency int) {
if ne.Options().PayloadConcurrency != initialPayloadConcurrency {
panic("wrong initial payload concurrency")
}
time.Sleep(5 * time.Second)
ne.Options().PayloadConcurrency = finalPayloadConcurrency
time.Sleep(20 * time.Second)
if ne.GetExecuterOptions().GetThreadsForNPayloadRequests(100, 0) != finalPayloadConcurrency {
panic("wrong final payload concurrency")
}
}
+115 -93
View File
@@ -4,112 +4,118 @@ go 1.21
require (
github.com/Knetic/govaluate v3.0.1-0.20171022003610-9aa49832a739+incompatible
github.com/alecthomas/jsonschema v0.0.0-20211022214203-8b29eab41725
github.com/andygrunwald/go-jira v1.16.0
github.com/antchfx/htmlquery v1.3.0
github.com/bluele/gcache v0.0.2
github.com/corpix/uarand v0.2.0
github.com/go-playground/validator/v10 v10.14.1
github.com/go-rod/rod v0.114.0
github.com/gobwas/ws v1.2.1
github.com/google/go-github v17.0.0+incompatible
github.com/invopop/jsonschema v0.12.0
github.com/itchyny/gojq v0.12.13
github.com/json-iterator/go v1.1.12
github.com/julienschmidt/httprouter v1.3.0
github.com/logrusorgru/aurora v2.0.3+incompatible
github.com/miekg/dns v1.1.57
github.com/miekg/dns v1.1.62
github.com/olekukonko/tablewriter v0.0.5
github.com/pkg/errors v0.9.1
github.com/projectdiscovery/clistats v0.0.20
github.com/projectdiscovery/fastdialer v0.0.57
github.com/projectdiscovery/hmap v0.0.36
github.com/projectdiscovery/interactsh v1.1.8
github.com/projectdiscovery/rawhttp v0.1.35
github.com/projectdiscovery/retryabledns v1.0.53
github.com/projectdiscovery/retryablehttp-go v1.0.44
github.com/projectdiscovery/clistats v0.1.0
github.com/projectdiscovery/fastdialer v0.2.5
github.com/projectdiscovery/hmap v0.0.55
github.com/projectdiscovery/interactsh v1.2.0
github.com/projectdiscovery/rawhttp v0.1.60
github.com/projectdiscovery/retryabledns v1.0.72
github.com/projectdiscovery/retryablehttp-go v1.0.74
github.com/projectdiscovery/yamldoc-go v1.0.4
github.com/remeh/sizedwaitgroup v1.0.0
github.com/rs/xid v1.5.0
github.com/segmentio/ksuid v1.0.4
github.com/shirou/gopsutil/v3 v3.23.7 // indirect
github.com/shirou/gopsutil/v3 v3.24.2 // indirect
github.com/spaolacci/murmur3 v1.1.0 // indirect
github.com/spf13/cast v1.5.1
github.com/syndtr/goleveldb v1.0.0
github.com/valyala/fasttemplate v1.2.2
github.com/weppos/publicsuffix-go v0.30.2-0.20230730094716-a20f9abcc222
github.com/xanzy/go-gitlab v0.84.0
github.com/weppos/publicsuffix-go v0.30.2
github.com/xanzy/go-gitlab v0.107.0
go.uber.org/multierr v1.11.0
golang.org/x/net v0.20.0
golang.org/x/oauth2 v0.11.0
golang.org/x/text v0.14.0
golang.org/x/net v0.28.0
golang.org/x/oauth2 v0.22.0
golang.org/x/text v0.17.0
gopkg.in/yaml.v2 v2.4.0
moul.io/http2curl v1.0.0
)
require (
github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.3.0
code.gitea.io/sdk/gitea v0.17.0
github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.6.0
github.com/Azure/azure-sdk-for-go/sdk/storage/azblob v1.1.0
github.com/DataDog/gostackparse v0.6.0
github.com/Masterminds/semver/v3 v3.2.1
github.com/Mzack9999/gcache v0.0.0-20230410081825-519e28eab057
github.com/antchfx/xmlquery v1.3.15
github.com/antchfx/xmlquery v1.3.17
github.com/asaskevich/govalidator v0.0.0-20230301143203-a9d515a09cc2
github.com/aws/aws-sdk-go-v2 v1.19.0
github.com/aws/aws-sdk-go-v2/config v1.18.28
github.com/aws/aws-sdk-go-v2/credentials v1.13.27
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/cespare/xxhash v1.1.0
github.com/charmbracelet/glamour v0.6.0
github.com/denisenkom/go-mssqldb v0.12.3
github.com/clbanning/mxj/v2 v2.7.0
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/dop251/goja v0.0.0-20240220182346-e401ed450204
github.com/fatih/structs v1.1.0
github.com/getkin/kin-openapi v0.126.0
github.com/go-git/go-git/v5 v5.11.0
github.com/go-ldap/ldap/v3 v3.4.5
github.com/go-pg/pg v8.0.7+incompatible
github.com/go-sql-driver/mysql v1.7.1
github.com/h2non/filetype v1.1.3
github.com/invopop/yaml v0.3.1
github.com/labstack/echo/v4 v4.10.2
github.com/lib/pq v1.10.1
github.com/leslie-qiwa/flat v0.0.0-20230424180412-f9d1cf014baa
github.com/lib/pq v1.10.9
github.com/mattn/go-sqlite3 v1.14.22
github.com/mholt/archiver v3.1.1+incompatible
github.com/microsoft/go-mssqldb v1.6.0
github.com/ory/dockertest/v3 v3.10.0
github.com/praetorian-inc/fingerprintx v1.1.9
github.com/projectdiscovery/dsl v0.0.41
github.com/projectdiscovery/dsl v0.1.8
github.com/projectdiscovery/fasttemplate v0.0.2
github.com/projectdiscovery/go-smb2 v0.0.0-20240129202741-052cc450c6cb
github.com/projectdiscovery/goflags v0.1.36
github.com/projectdiscovery/gologger v1.1.12
github.com/projectdiscovery/goflags v0.1.65-0.20240824151034-33df02005a23
github.com/projectdiscovery/gologger v1.1.19
github.com/projectdiscovery/gostruct v0.0.2
github.com/projectdiscovery/gozero v0.0.1
github.com/projectdiscovery/httpx v1.3.8
github.com/projectdiscovery/mapcidr v1.1.16
github.com/projectdiscovery/gozero v0.0.2
github.com/projectdiscovery/httpx v1.6.7
github.com/projectdiscovery/mapcidr v1.1.34
github.com/projectdiscovery/n3iwf v0.0.0-20230523120440-b8cd232ff1f5
github.com/projectdiscovery/ratelimit v0.0.26
github.com/projectdiscovery/ratelimit v0.0.49
github.com/projectdiscovery/rdap v0.9.1-0.20221108103045-9865884d1917
github.com/projectdiscovery/sarif v0.0.1
github.com/projectdiscovery/tlsx v1.1.6
github.com/projectdiscovery/uncover v1.0.7
github.com/projectdiscovery/utils v0.0.76
github.com/projectdiscovery/wappalyzergo v0.0.109
github.com/projectdiscovery/uncover v1.0.9
github.com/projectdiscovery/useragent v0.0.65
github.com/projectdiscovery/utils v0.2.6
github.com/projectdiscovery/wappalyzergo v0.1.14
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/stretchr/testify v1.8.4
github.com/seh-msft/burpxml v1.0.1
github.com/stretchr/testify v1.9.0
github.com/tarunKoyalwar/goleak v0.0.0-20240429141123-0efa90dbdcf9
github.com/zmap/zgrab2 v0.1.8-0.20230806160807-97ba87c0e706
golang.org/x/term v0.16.0
gopkg.in/src-d/go-git.v4 v4.13.1
golang.org/x/term v0.23.0
gopkg.in/yaml.v3 v3.0.1
moul.io/http2curl v1.0.0
)
require (
aead.dev/minisign v0.2.0 // indirect
dario.cat/mergo v1.0.0 // indirect
github.com/Azure/azure-sdk-for-go/sdk/azcore v1.7.0 // indirect
github.com/Azure/azure-sdk-for-go/sdk/internal v1.3.0 // indirect
github.com/Azure/azure-sdk-for-go/sdk/azcore v1.11.1 // indirect
github.com/Azure/azure-sdk-for-go/sdk/internal v1.8.0 // indirect
github.com/Azure/go-ansiterm v0.0.0-20230124172434-306776ec8161 // indirect
github.com/Azure/go-ntlmssp v0.0.0-20221128193559-754e69321358 // indirect
github.com/AzureAD/microsoft-authentication-library-for-go v1.0.0 // indirect
github.com/AzureAD/microsoft-authentication-library-for-go v1.2.2 // indirect
github.com/Nvveen/Gotty v0.0.0-20120604004816-cd527374f1e5 // indirect
github.com/VividCortex/ewma v1.2.0 // indirect
github.com/andybalholm/brotli v1.1.0 // indirect
@@ -119,81 +125,95 @@ require (
github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.1.30 // indirect
github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.14.4 // indirect
github.com/aymanbagabas/go-osc52/v2 v2.0.1 // indirect
github.com/bits-and-blooms/bitset v1.8.0 // indirect
github.com/bahlo/generic-list-go v0.2.0 // indirect
github.com/bits-and-blooms/bitset v1.13.0 // indirect
github.com/bits-and-blooms/bloom/v3 v3.5.0 // indirect
github.com/buger/jsonparser v1.1.1 // indirect
github.com/bytedance/sonic v1.9.1 // indirect
github.com/cenkalti/backoff/v4 v4.2.1 // indirect
github.com/cespare/xxhash/v2 v2.2.0 // indirect
github.com/cheggaaa/pb/v3 v3.1.4 // indirect
github.com/chenzhuoyu/base64x v0.0.0-20221115062448-fe3a3abad311 // indirect
github.com/cloudflare/cfssl v1.6.4 // indirect
github.com/cloudflare/circl v1.3.7 // indirect
github.com/cloudflare/circl v1.3.8 // indirect
github.com/containerd/continuity v0.4.2 // indirect
github.com/cyphar/filepath-securejoin v0.2.4 // indirect
github.com/denisbrodbeck/machineid v1.0.1 // indirect
github.com/davidmz/go-pageant v1.0.2 // indirect
github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f // indirect
github.com/dlclark/regexp2 v1.10.0 // indirect
github.com/dlclark/regexp2 v1.11.0 // indirect
github.com/docker/cli v24.0.5+incompatible // indirect
github.com/docker/docker v24.0.7+incompatible // indirect
github.com/docker/docker v24.0.9+incompatible // indirect
github.com/docker/go-connections v0.4.0 // indirect
github.com/fatih/color v1.15.0 // indirect
github.com/fatih/color v1.16.0 // indirect
github.com/free5gc/util v1.0.5-0.20230511064842-2e120956883b // indirect
github.com/gabriel-vasile/mimetype v1.4.2 // indirect
github.com/gaissmai/bart v0.9.5 // indirect
github.com/geoffgarside/ber v1.1.0 // indirect
github.com/gin-contrib/sse v0.1.0 // indirect
github.com/gin-gonic/gin v1.9.1 // indirect
github.com/go-asn1-ber/asn1-ber v1.5.4 // indirect
github.com/go-sourcemap/sourcemap v2.1.3+incompatible // indirect
github.com/go-fed/httpsig v1.1.0 // indirect
github.com/go-openapi/jsonpointer v0.21.0 // indirect
github.com/go-openapi/swag v0.23.0 // indirect
github.com/go-sourcemap/sourcemap v2.1.4+incompatible // indirect
github.com/goccy/go-json v0.10.2 // indirect
github.com/gogo/protobuf v1.3.2 // indirect
github.com/golang-sql/civil v0.0.0-20190719163853-cb61b32ac6fe // indirect
github.com/golang-jwt/jwt/v5 v5.2.1 // indirect
github.com/golang-sql/civil v0.0.0-20220223132316-b832511892a9 // indirect
github.com/golang-sql/sqlexp v0.1.0 // indirect
github.com/google/certificate-transparency-go v1.1.4 // indirect
github.com/google/go-github/v30 v30.1.0 // indirect
github.com/google/pprof v0.0.0-20230821062121-407c9e7a662f // indirect
github.com/google/pprof v0.0.0-20240227163752-401108e1b7e7 // indirect
github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510 // indirect
github.com/hashicorp/go-uuid v1.0.2 // indirect
github.com/hashicorp/go-uuid v1.0.3 // indirect
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/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/jcmturner/gofork v1.7.6 // indirect
github.com/jcmturner/rpc/v2 v2.0.3 // 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/klauspost/compress v1.17.4 // indirect
github.com/klauspost/pgzip v1.2.5 // indirect
github.com/klauspost/compress v1.17.8 // indirect
github.com/klauspost/pgzip v1.2.6 // indirect
github.com/kylelemons/godebug v1.1.0 // indirect
github.com/logrusorgru/aurora/v4 v4.0.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/mholt/archiver/v3 v3.5.1 // indirect
github.com/minio/selfupdate v0.6.1-0.20230907112617-f11e74f84ca7 // 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/opencontainers/runc v1.1.12 // indirect
github.com/pelletier/go-toml/v2 v2.0.8 // indirect
github.com/pierrec/lz4/v4 v4.1.2 // indirect
github.com/perimeterx/marshmallow v1.1.5 // indirect
github.com/pierrec/lz4/v4 v4.1.21 // 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.6 // indirect
github.com/projectdiscovery/cdncheck v1.0.9 // indirect
github.com/pkg/browser v0.0.0-20240102092130-5ac0b6a4141c // indirect
github.com/projectdiscovery/asnmap v1.1.1 // indirect
github.com/projectdiscovery/cdncheck v1.1.0 // indirect
github.com/projectdiscovery/freeport v0.0.5 // indirect
github.com/quic-go/quic-go v0.40.1 // indirect
github.com/refraction-networking/utls v1.6.1 // indirect
github.com/projectdiscovery/ldapserver v1.0.2-0.20240219154113-dcc758ebc0cb // indirect
github.com/projectdiscovery/machineid v0.0.0-20240226150047-2e2c51e35983 // indirect
github.com/refraction-networking/utls v1.6.7 // indirect
github.com/sashabaranov/go-openai v1.15.3 // indirect
github.com/shirou/gopsutil v3.21.11+incompatible // indirect
github.com/shoenig/go-m1cpu v0.1.6 // indirect
github.com/sirupsen/logrus v1.9.3 // indirect
github.com/skeema/knownhosts v1.2.1 // indirect
github.com/smartystreets/assertions v1.0.0 // indirect
github.com/tidwall/btree v1.7.0 // indirect
github.com/tidwall/buntdb v1.3.0 // indirect
github.com/tidwall/gjson v1.17.0 // indirect
github.com/tidwall/buntdb v1.3.1 // indirect
github.com/tidwall/gjson v1.17.3 // indirect
github.com/tidwall/grect v0.1.4 // indirect
github.com/tidwall/match v1.1.1 // indirect
github.com/tidwall/pretty v1.2.1 // indirect
@@ -202,6 +222,7 @@ require (
github.com/tim-ywliu/nested-logrus-formatter v1.3.2 // indirect
github.com/twitchyliquid64/golang-asm v0.15.1 // indirect
github.com/ugorji/go/codec v1.2.11 // indirect
github.com/wk8/go-ordered-map/v2 v2.1.8 // indirect
github.com/xeipuuv/gojsonpointer v0.0.0-20190905194746-02993c407bfb // indirect
github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 // indirect
github.com/xeipuuv/gojsonschema v1.2.0 // indirect
@@ -209,8 +230,11 @@ require (
github.com/ysmood/got v0.34.1 // indirect
github.com/yuin/goldmark v1.5.4 // indirect
github.com/yuin/goldmark-emoji v1.0.1 // indirect
github.com/zcalusic/sysinfo v1.0.2 // indirect
github.com/zeebo/blake3 v0.2.3 // indirect
go.uber.org/goleak v1.3.0 // indirect
golang.org/x/arch v0.3.0 // indirect
golang.org/x/sync v0.8.0 // indirect
gopkg.in/djherbis/times.v1 v1.3.0 // indirect
mellium.im/sasl v0.3.1 // indirect
)
@@ -218,13 +242,12 @@ require (
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/akrylysov/pogreb v0.10.2 // indirect
github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751 // indirect
github.com/alecthomas/units v0.0.0-20211218093645-b94a6e3cc137 // indirect
github.com/andybalholm/cascadia v1.3.2 // indirect
github.com/antchfx/xpath v1.2.3
github.com/antchfx/xpath v1.2.4
github.com/aymerick/douceur v0.2.0 // indirect
github.com/caddyserver/certmagic v0.19.2 // indirect
github.com/cnf/structhash v0.0.0-20201127153200-e1b16c1ebc08 // indirect
@@ -239,64 +262,59 @@ require (
github.com/gobwas/pool v0.2.1 // indirect
github.com/golang-jwt/jwt/v4 v4.5.0 // indirect
github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect
github.com/golang/protobuf v1.5.3 // indirect
github.com/golang/snappy v0.0.4 // indirect
github.com/google/go-querystring v1.1.0 // indirect
github.com/google/uuid v1.3.1 // indirect
github.com/google/uuid v1.6.0 // indirect
github.com/gorilla/css v1.0.1 // indirect
github.com/hashicorp/go-cleanhttp v0.5.2 // indirect
github.com/hashicorp/go-retryablehttp v0.7.2 // indirect
github.com/hashicorp/go-retryablehttp v0.7.7 // indirect
github.com/hdm/jarm-go v0.0.7 // indirect
github.com/iancoleman/orderedmap v0.0.0-20190318233801-ac98e3ecb4b0 // indirect
github.com/itchyny/timefmt-go v0.1.5 // indirect
github.com/klauspost/cpuid/v2 v2.2.5 // indirect
github.com/leodido/go-urn v1.2.4 // indirect
github.com/libdns/libdns v0.2.1 // indirect
github.com/lor00x/goldap v0.0.0-20180618054307-a546dffdd1a3 // indirect
github.com/lufia/plan9stats v0.0.0-20211012122336-39d0f177ccd0 // indirect
github.com/mattn/go-isatty v0.0.19 // indirect
github.com/mattn/go-runewidth v0.0.14 // indirect
github.com/mattn/go-isatty v0.0.20 // indirect
github.com/mattn/go-runewidth v0.0.15 // indirect
github.com/mholt/acmez v1.2.0 // indirect
github.com/microcosm-cc/bluemonday v1.0.26 // indirect
github.com/microcosm-cc/bluemonday v1.0.27 // indirect
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
github.com/modern-go/reflect2 v1.0.2 // indirect
github.com/pmezard/go-difflib v1.0.0 // indirect
github.com/power-devops/perfstat v0.0.0-20210106213030-5aafc221ea8c // indirect
github.com/projectdiscovery/blackrock v0.0.1 // indirect
github.com/projectdiscovery/networkpolicy v0.0.7
github.com/rivo/uniseg v0.4.4 // indirect
github.com/projectdiscovery/networkpolicy v0.0.9
github.com/rivo/uniseg v0.4.6 // indirect
github.com/saintfish/chardet v0.0.0-20230101081208-5e3ef4b5456d // indirect
github.com/tklauser/go-sysconf v0.3.11 // indirect
github.com/tklauser/numcpus v0.6.0 // indirect
github.com/tklauser/go-sysconf v0.3.12 // indirect
github.com/tklauser/numcpus v0.6.1 // indirect
github.com/trivago/tgo v1.0.7
github.com/ulikunitz/xz v0.5.11 // indirect
github.com/ulule/deepcopier v0.0.0-20200430083143-45decc6639b6 // indirect
github.com/ulikunitz/xz v0.5.12 // indirect
github.com/valyala/bytebufferpool v1.0.0 // indirect
github.com/yl2chen/cidranger v1.0.2 // indirect
github.com/ysmood/goob v0.4.0 // indirect
github.com/ysmood/gson v0.7.3 // indirect
github.com/ysmood/leakless v0.8.0 // indirect
github.com/yusufpapurcu/wmi v1.2.3 // indirect
github.com/yusufpapurcu/wmi v1.2.4 // indirect
github.com/zmap/rc2 v0.0.0-20190804163417-abaa70531248 // indirect
github.com/zmap/zcrypto v0.0.0-20231219022726-a1f61fb1661c // indirect
go.etcd.io/bbolt v1.3.8 // indirect
github.com/zmap/zcrypto v0.0.0-20240512203510-0fef58d9a9db // indirect
go.etcd.io/bbolt v1.3.10 // indirect
go.uber.org/zap v1.25.0 // indirect
goftp.io/server/v2 v2.0.1 // indirect
golang.org/x/crypto v0.18.0 // indirect
golang.org/x/exp v0.0.0-20240112132812-db7319d0e0e3
golang.org/x/mod v0.14.0 // indirect
golang.org/x/sys v0.16.0 // indirect
golang.org/x/time v0.3.0 // indirect
golang.org/x/tools v0.17.0 // indirect
google.golang.org/appengine v1.6.7 // indirect
google.golang.org/protobuf v1.31.0 // indirect
golang.org/x/crypto v0.26.0 // indirect
golang.org/x/exp v0.0.0-20240823005443-9b4947da3948
golang.org/x/mod v0.20.0 // indirect
golang.org/x/sys v0.24.0 // indirect
golang.org/x/time v0.6.0 // indirect
golang.org/x/tools v0.24.0
google.golang.org/protobuf v1.34.2 // indirect
gopkg.in/alecthomas/kingpin.v2 v2.2.6 // indirect
gopkg.in/corvus-ch/zbase32.v1 v1.0.0 // indirect
)
require (
github.com/Microsoft/go-winio v0.6.1 // indirect
github.com/ProtonMail/go-crypto v0.0.0-20230828082145-3c4c8a2d2371 // indirect
github.com/ProtonMail/go-crypto v1.1.0-alpha.0-proton // indirect
github.com/alecthomas/chroma v0.10.0
github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.13.5 // indirect
github.com/aws/aws-sdk-go-v2/internal/configsources v1.1.35 // indirect
@@ -309,19 +327,23 @@ require (
github.com/aws/smithy-go v1.13.5 // indirect
github.com/dop251/goja_nodejs v0.0.0-20230821135201-94e508132562
github.com/emirpasic/gods v1.18.1 // indirect
github.com/go-echarts/go-echarts/v2 v2.3.3
github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 // indirect
github.com/go-git/go-billy/v5 v5.5.0 // indirect
github.com/golang-jwt/jwt v3.2.2+incompatible // indirect
github.com/imdario/mergo v0.3.16 // indirect
github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99 // indirect
github.com/jcmturner/gokrb5/v8 v8.4.4
github.com/kevinburke/ssh_config v1.2.0 // indirect
github.com/labstack/gommon v0.4.0 // indirect
github.com/mattn/go-colorable v0.1.13 // indirect
github.com/nwaples/rardecode v1.1.3 // indirect
github.com/pierrec/lz4 v2.6.1+incompatible // indirect
github.com/sergi/go-diff v1.2.0 // indirect
github.com/src-d/gcfg v1.4.0 // indirect
github.com/xanzy/ssh-agent v0.3.3 // indirect
github.com/xi2/xz v0.0.0-20171230120015-48954b6210f8 // indirect
gopkg.in/warnings.v0 v0.1.2 // indirect
)
// https://go.dev/ref/mod#go-mod-file-retract
retract v3.2.0 // retract due to broken js protocol issue
+259 -231
View File
File diff suppressed because it is too large. Load diff
@@ -4,10 +4,13 @@ info:
name: Test Flow Iterate One Value Flow
author: pdteam
severity: info
description: |
If length of template.extracted variable is not know, i.e it could be an array of 1 or more values, then iterate function
should be used to iterate over values because nuclei by default converts array to string if it has only 1 value.
flow: |
http(1)
for(let value of template.extracted){
for(let value of iterate(template.extracted)){
set("value", value)
http(2)
}
@@ -0,0 +1,39 @@
id: fuzz-body-generic
info:
name: fuzzing error sqli payloads in http req body
author: pdteam
severity: info
description: |
This template attempts to find SQL injection vulnerabilities by fuzzing http body
It automatically handles and parses json,xml,multipart form and x-www-form-urlencoded data
and performs fuzzing on the value of every key
http:
- pre-condition:
- type: dsl
dsl:
- method != "GET"
- method != "HEAD"
- contains(path, "/user") # for scope of integration test
condition: and
payloads:
injection:
- "'"
- "\""
- ";"
fuzzing:
- part: body
type: postfix
mode: single
fuzz:
- '{{injection}}'
stop-at-first-match: true
matchers:
- type: word
words:
- "unrecognized token:"
- "null"
@@ -0,0 +1,40 @@
id: json-body-error-sqli
info:
name: fuzzing error sqli payloads in json body
author: pdteam
severity: info
description: |
This template attempts to find SQL injection vulnerabilities by fuzzing http body of json type.
This is achieved by performing [ruleType](example: postfix) on value of json key
Note: this is example template, and payloads/matchers need to be modified appropriately.
http:
- pre-condition:
- type: dsl
dsl:
- method != "GET"
- method != "HEAD"
- contains(content_type, "application/json")
- contains(path, "/user") # for scope of integration test
condition: and
payloads:
injection:
- "'"
- "\""
- ";"
fuzzing:
- part: body
type: postfix
mode: single
fuzz:
- '{{injection}}'
stop-at-first-match: true
matchers:
- type: word
words:
- "unrecognized token:"
- "null"
@@ -0,0 +1,41 @@
id: body-multipart-error-sqli
info:
name: fuzzing error sqli payloads in body of multipart form data
author: pdteam
severity: info
description: |
This template attempts to find SQL injection vulnerabilities by fuzzing http body of multipart form data (file upload, etc.)
This is achieved by performing [ruleType](example: postfix) on value of body form key
Note: this is example template, and payloads/matchers need to be modified appropriately.
http:
- pre-condition:
- type: dsl
dsl:
- method != "GET"
- method != "HEAD"
- contains(content_type, "multipart/form-data")
- contains(path, "/user") # for scope of integration test
condition: and
payloads:
injection:
- "'"
- "\""
- ";"
fuzzing:
- part: body
type: postfix
mode: single
fuzz:
- '{{injection}}'
stop-at-first-match: true
matchers:
- type: word
words:
- "unrecognized token:"
- "null"
- "SELECTs to the left and right of UNION do not have the same number of result columns"
@@ -0,0 +1,41 @@
id: body-params-error-sqli
info:
name: fuzzing error sqli payloads in body with params
author: pdteam
severity: info
description: |
This template attempts to find SQL injection vulnerabilities by fuzzing http body of x-www-form-urlencoded data
This is achieved by performing [ruleType](example: postfix) on value of body key
Note: this is example template, and payloads/matchers need to be modified appropriately.
http:
- pre-condition:
- type: dsl
dsl:
- method != "GET"
- method != "HEAD"
- contains(content_type, "application/x-www-form-urlencoded")
- contains(path, "/user") # for scope of integration test
condition: and
payloads:
injection:
- "'"
- "\""
- ";"
fuzzing:
- part: body
type: postfix
mode: single
fuzz:
- '{{injection}}'
stop-at-first-match: true
matchers:
- type: word
words:
- "unrecognized token:"
- "null"
- "SELECTs to the left and right of UNION do not have the same number of result columns"
@@ -0,0 +1,40 @@
id: xml-body-error-sqli
info:
name: fuzzing error sqli payloads in xml body
author: pdteam
severity: info
description: |
This template attempts to find SQL injection vulnerabilities by fuzzing http body of xml type.
This is achieved by performing [ruleType](example: postfix) on value of xml key
Note: this is example template, and payloads/matchers need to be modified appropriately.
http:
- pre-condition:
- type: dsl
dsl:
- method != "GET"
- method != "HEAD"
- contains(content_type, "application/xml")
- contains(path, "/user") # for scope of integration test
condition: and
payloads:
injection:
- "'"
- "\""
- ";"
fuzzing:
- part: body
type: postfix
mode: single
fuzz:
- '{{injection}}'
stop-at-first-match: true
matchers:
- type: word
words:
- "unrecognized token:"
- "null"
@@ -0,0 +1,59 @@
id: cookie-fuzzing-error-sqli
info:
name: fuzzing error sqli payloads in cookie
author: pdteam
severity: info
description: |
This template attempts to find SQL injection vulnerabilities by fuzzing http cookies with SQL injection payloads.
Note: this is example template, and payloads/matchers need to be modified appropriately.
http:
- pre-condition:
- type: dsl
dsl:
- 'method == "GET"'
- len(cookie) > 0
condition: and
payloads:
sqli:
- "'"
- ''
- '`'
- '``'
- ','
- '"'
- ""
- /
- //
- \
- \\
- ;
- -- or #
- '" OR 1 = 1 -- -'
- ' OR '' = '
- '='
- 'LIKE'
- "'=0--+"
- OR 1=1
- "' OR 'x'='x"
- "' AND id IS NULL; --"
- "'''''''''''''UNION SELECT '2"
- '%00'
fuzzing:
- part: cookie
type: postfix
mode: single
fuzz:
- '{{sqli}}'
stop-at-first-match: true
matchers:
- type: word
words:
- "unrecognized token:"
- "syntax error"
- "null"
- "SELECTs to the left and right of UNION do not have the same number of result columns"
@@ -1,49 +0,0 @@
id: fuzz-header-basic
info:
name: fuzz header basic
author: pdteam
severity: info
description: |
In this template we check for any reflection when fuzzing Origin header
variables:
first: "{{rand_int(10000, 99999)}}"
http:
- raw:
- |
GET /?x=aaa&y=bbb HTTP/1.1
Host: {{Hostname}}
Origin: https://example.com
X-Fuzz-Header: 1337
Cookie: z=aaa; bb=aaa
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_4) AppleWebKit/537.36 (KHTML, like Gecko)
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
Accept-Language: en-US,en;q=0.9
Connection: close
payloads:
reflection:
- "'\"><{{first}}"
fuzzing:
- part: headers
type: replace
mode: single
keys: ["Origin"]
fuzz:
- "{{reflection}}"
stop-at-first-match: true
matchers-condition: and
matchers:
- type: word
part: body
words:
- "{{reflection}}"
- type: word
part: header
words:
- "text/html"
@@ -1,41 +0,0 @@
id: fuzz-header-multiple
info:
name: fuzz header multiple
author: pdteam
severity: info
description: |
In this template we fuzz multiple headers with single payload
http:
- raw:
- |
GET /?x=aaa&y=bbb HTTP/1.1
Host: {{Hostname}}
Origin: https://example.com
X-Forwared-For: 1337
Cookie: z=aaa; bb=aaa
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_4) AppleWebKit/537.36 (KHTML, like Gecko)
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
Accept-Language: en-US,en;q=0.9
Connection: close
payloads:
reflection:
- "secret.local"
fuzzing:
- part: headers
type: replace
mode: multiple
keys: ["Origin", "X-Forwared-For"]
fuzz:
- "{{reflection}}"
stop-at-first-match: true
matchers-condition: and
matchers:
- type: word
part: body
words:
- "admin"
@@ -0,0 +1,43 @@
id: host-header-injection
info:
name: Host Header Injection
author: pdteam
severity: info
description: Host header injection
variables:
domain: "oast.fun"
http:
- pre-condition:
- type: dsl
dsl:
- 'method == "GET"'
- 'contains(path,"/host-header-lab")' # for integration testing only
condition: and
fuzzing:
- part: header
type: replace
mode: single
fuzz:
X-Forwarded-For: "{{domain}}"
X-Forwarded-Host: "{{domain}}"
Forwarded: "{{domain}}"
X-Real-IP: "{{domain}}"
X-Original-URL: "{{domain}}"
X-Rewrite-URL: "{{domain}}"
Host: "{{domain}}"
# " Host": "{{domain}}" # space before host (not supported yet due to lack of unsafe mode)
matchers:
- type: status
status:
- 200
- type: word
part: body
words:
- "Interactsh"
matchers-condition: and
+1 -1
View File
@@ -5,7 +5,7 @@ info:
author: pdteam
severity: info
requests:
http:
- method: GET
path:
- "{{BaseURL}}"
@@ -0,0 +1,27 @@
id: fuzz-multi-mode-test
info:
name: multi-mode fuzzing test
author: pdteam
severity: info
http:
- payloads:
inject:
- nuclei-v1
- nuclei-v2
- nuclei-v3
fuzzing:
- part: header
type: replace
mode: multiple
fuzz:
X-Client-Id: "{{inject}}"
X-Secret-Id: "{{inject}}"
matchers-condition: or
matchers:
- type: word
words:
- "nuclei-v3"
@@ -0,0 +1,39 @@
id: path-based-sqli
info:
name: Path Based SQLi
author: pdteam
severity: info
description: |
This template attempts to find SQL injection vulnerabilities on path based sqli and replacing numerical values with fuzzing payloads.
ex: /admin/user/55/profile , /user/15/action/update, /posts/15, /blog/100/data, /page/51/ etc these types of paths are filtered and
replaced with sqli path payloads.
Note: this is example template, and payloads/matchers need to be modified appropriately.
http:
- pre-condition:
- type: dsl
dsl:
- 'method == "GET"'
condition: and
payloads:
pathsqli:
- '%20OR%20True'
fuzzing:
- part: path
type: postfix
mode: single
fuzz:
- '{{pathsqli}}'
matchers:
- type: status
status:
- 200
- type: word
words:
- "admin"
matchers-condition: and
@@ -0,0 +1,39 @@
id: fuzz-query-num
info:
name: Fuzz Query Param For IDOR
author: pdteam
severity: info
description: Query Value Fuzzing using Fuzzing Rules
http:
- pre-condition:
- type: dsl
dsl:
- 'len(query) > 0'
# below filter is related to integration testing
- type: word
part: path
words:
- /blog/post
pre-condition-operator: and
payloads:
nums:
- 200
- 201
fuzzing:
- part: query
type: replace
mode: multiple
values:
- "^[0-9]+$" # only if value is number
fuzz:
- '{{nums}}'
matchers:
- type: status
status:
- 200
+1 -1
View File
@@ -5,7 +5,7 @@ info:
author: pdteam
severity: info
requests:
http:
- method: GET
path:
- "{{BaseURL}}"
+1 -1
View File
@@ -5,7 +5,7 @@ info:
author: pdteam
severity: info
requests:
http:
- method: GET
path:
- "{{BaseURL}}"
@@ -0,0 +1,535 @@
timestamp: 2024-02-20T19:24:13+05:30
url: http://127.0.0.1:8082/blog/post?postId=3&source=proxify
request:
header:
Accept-Encoding: gzip
Connection: close
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 11_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36
host: 127.0.0.1:8082
method: GET
path: /blog/post
scheme: https
raw: |+
GET /blog/post?postId=3&source=proxify HTTP/1.1
Host: 127.0.0.1:8082
Accept-Encoding: gzip
Connection: close
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 11_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36
response:
header:
Content-Encoding: gzip
Content-Type: text/html; charset=utf-8
Date: Tue, 20 Feb 2024 13:54:13 GMT
Set-Cookie: AWSALB=9l3X2bRs5JVQp5cO8o7xLckrdo3FZIQzbS0ga0n4ctfDApb/nn0K6AiSLLAMbG7CCDHqKOj9kQdyj6T2RzBDULszJ+2Oy8KcyuOKhFsCGVTVabnJTkVwhyXLciFt; Expires=Tue, 27 Feb 2024 13:54:13 GMT; Path=/, AWSALBCORS=9l3X2bRs5JVQp5cO8o7xLckrdo3FZIQzbS0ga0n4ctfDApb/nn0K6AiSLLAMbG7CCDHqKOj9kQdyj6T2RzBDULszJ+2Oy8KcyuOKhFsCGVTVabnJTkVwhyXLciFt; Expires=Tue, 27 Feb 2024 13:54:13 GMT; Path=/; SameSite=None; Secure, session=ymwLa8dKmWjLl43BBpQnrp5LkFZraYkp; Secure; HttpOnly; SameSite=None
X-Backend: ea6c1d8c-a8e5-4bef-b8db-879bbb13cf62
X-Frame-Options: SAMEORIGIN
raw: |+
HTTP/1.1 200 OK
Connection: close
Content-Encoding: gzip
Content-Type: text/html; charset=utf-8
Date: Tue, 20 Feb 2024 13:54:13 GMT
Set-Cookie: AWSALB=9l3X2bRs5JVQp5cO8o7xLckrdo3FZIQzbS0ga0n4ctfDApb/nn0K6AiSLLAMbG7CCDHqKOj9kQdyj6T2RzBDULszJ+2Oy8KcyuOKhFsCGVTVabnJTkVwhyXLciFt; Expires=Tue, 27 Feb 2024 13:54:13 GMT; Path=/
Set-Cookie: AWSALBCORS=9l3X2bRs5JVQp5cO8o7xLckrdo3FZIQzbS0ga0n4ctfDApb/nn0K6AiSLLAMbG7CCDHqKOj9kQdyj6T2RzBDULszJ+2Oy8KcyuOKhFsCGVTVabnJTkVwhyXLciFt; Expires=Tue, 27 Feb 2024 13:54:13 GMT; Path=/; SameSite=None; Secure
Set-Cookie: session=ymwLa8dKmWjLl43BBpQnrp5LkFZraYkp; Secure; HttpOnly; SameSite=None
X-Backend: ea6c1d8c-a8e5-4bef-b8db-879bbb13cf62
X-Frame-Options: SAMEORIGIN
---
timestamp: 2024-02-20T19:24:13+05:30
url: http://127.0.0.1:8082/reset-password
request:
header:
Accept-Encoding: gzip
Connection: close
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 11_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36
host: 127.0.0.1:8082
method: GET
path: /blog/post
scheme: https
raw: |+
POST /reset-password HTTP/1.1
Host: 127.0.0.1:8082
X-Forwarded-For: 127.0.0.1:8082
Accept-Encoding: gzip
Connection: close
Content-Type: application/json
Content-Length: 23
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 11_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36
{"password":"12345678"}
response:
header:
Content-Encoding: gzip
Content-Type: text/html; charset=utf-8
Date: Tue, 20 Feb 2024 13:54:13 GMT
Set-Cookie: AWSALB=9l3X2bRs5JVQp5cO8o7xLckrdo3FZIQzbS0ga0n4ctfDApb/nn0K6AiSLLAMbG7CCDHqKOj9kQdyj6T2RzBDULszJ+2Oy8KcyuOKhFsCGVTVabnJTkVwhyXLciFt; Expires=Tue, 27 Feb 2024 13:54:13 GMT; Path=/, AWSALBCORS=9l3X2bRs5JVQp5cO8o7xLckrdo3FZIQzbS0ga0n4ctfDApb/nn0K6AiSLLAMbG7CCDHqKOj9kQdyj6T2RzBDULszJ+2Oy8KcyuOKhFsCGVTVabnJTkVwhyXLciFt; Expires=Tue, 27 Feb 2024 13:54:13 GMT; Path=/; SameSite=None; Secure, session=ymwLa8dKmWjLl43BBpQnrp5LkFZraYkp; Secure; HttpOnly; SameSite=None
X-Backend: ea6c1d8c-a8e5-4bef-b8db-879bbb13cf62
X-Frame-Options: SAMEORIGIN
raw: |+
HTTP/1.1 200 OK
Connection: close
Content-Encoding: gzip
Content-Type: text/html; charset=utf-8
Date: Tue, 20 Feb 2024 13:54:13 GMT
Set-Cookie: AWSALB=9l3X2bRs5JVQp5cO8o7xLckrdo3FZIQzbS0ga0n4ctfDApb/nn0K6AiSLLAMbG7CCDHqKOj9kQdyj6T2RzBDULszJ+2Oy8KcyuOKhFsCGVTVabnJTkVwhyXLciFt; Expires=Tue, 27 Feb 2024 13:54:13 GMT; Path=/
Set-Cookie: AWSALBCORS=9l3X2bRs5JVQp5cO8o7xLckrdo3FZIQzbS0ga0n4ctfDApb/nn0K6AiSLLAMbG7CCDHqKOj9kQdyj6T2RzBDULszJ+2Oy8KcyuOKhFsCGVTVabnJTkVwhyXLciFt; Expires=Tue, 27 Feb 2024 13:54:13 GMT; Path=/; SameSite=None; Secure
Set-Cookie: session=ymwLa8dKmWjLl43BBpQnrp5LkFZraYkp; Secure; HttpOnly; SameSite=None
X-Backend: ea6c1d8c-a8e5-4bef-b8db-879bbb13cf62
X-Frame-Options: SAMEORIGIN
---
timestamp: 2024-02-20T19:24:13+06:30
url: http://127.0.0.1:8082/user/55/profile
request:
header:
Accept-Encoding: gzip
Connection: close
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 11_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36
host: 127.0.0.1:8082
method: GET
path: /blog/post
scheme: https
raw: |+
GET /user/55/profile HTTP/1.1
Host: 127.0.0.1:8082
Accept-Encoding: gzip
Connection: close
Content-Type: application/json
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 11_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36
response:
header:
Content-Type: application/json; charset=UTF-8
Date: Tue, 27 Feb 2024 18:46:44 GMT
raw: |+
HTTP/1.1 200 OK
Content-Type: application/json; charset=UTF-8
Date: Tue, 27 Feb 2024 18:46:44 GMT
Content-Length: 47
{"ID":75,"Name":"user","Age":30,"Role":"user"}
---
timestamp: 2024-02-20T23:25:13+06:30
url: http://127.0.0.1:8082/user
request:
header:
Accept-Encoding: gzip
Connection: close
Content-Type: application/json
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 11_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36
host: 127.0.0.1:8082
method: POST
path: /user
scheme: http
raw: |+
POST /user HTTP/1.1
Host: localhost:8082
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 11_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36
Accept: */*
Content-Length: 32
Connection: close
Content-Type: application/json
{"id": 7 , "name": "pdteam"}
response:
header:
Content-Type: text/plain; charset=UTF-8
Date: Tue, 27 Feb 2024 18:46:44 GMT
raw: |+
HTTP/1.1 200 OK
Content-Type: text/plain; charset=UTF-8
Date: Wed, 28 Feb 2024 13:58:52 GMT
Content-Length: 25
User updated successfully
---
timestamp: 2024-02-20T23:26:13+06:30
url: http://127.0.0.1:8082/user
request:
header:
Accept-Encoding: gzip
Connection: close
Content-Type: application/x-www-form-urlencoded
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 11_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36
host: 127.0.0.1:8082
method: POST
path: /user
scheme: http
raw: |+
POST /user HTTP/1.1
Host: localhost:8082
User-Agent: curl/8.1.2
Accept: */*
Content-Length: 20
Connection: close
Content-Type: application/x-www-form-urlencoded
id=7&name=pdteam
response:
header:
Content-Type: text/plain; charset=UTF-8
Date: Tue, 27 Feb 2024 18:46:44 GMT
raw: |+
HTTP/1.1 200 OK
Content-Type: text/plain; charset=UTF-8
Date: Wed, 28 Feb 2024 13:58:52 GMT
Content-Length: 25
User updated successfully
---
timestamp: 2024-02-20T23:26:13+06:30
url: http://127.0.0.1:8082/user
request:
header:
Accept-Encoding: gzip
Connection: close
Content-Type: multipart/form-data
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 11_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36
host: 127.0.0.1:8082
method: POST
path: /user
scheme: http
raw: |+
POST /user HTTP/1.1
Host: localhost:8082
User-Agent: curl/8.1.2
Accept: */*
Content-Length: 226
Connection: close
Content-Type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW
------WebKitFormBoundary7MA4YWxkTrZu0gW
Content-Disposition: form-data; name="id"
7
------WebKitFormBoundary7MA4YWxkTrZu0gW
Content-Disposition: form-data; name="name"
pdteam
------WebKitFormBoundary7MA4YWxkTrZu0gW--
response:
header:
Content-Type: text/plain; charset=UTF-8
Date: Tue, 27 Feb 2024 18:46:44 GMT
raw: |+
HTTP/1.1 200 OK
Content-Type: text/plain; charset=UTF-8
Date: Wed, 28 Feb 2024 13:58:52 GMT
Content-Length: 25
User updated successfully
---
---
timestamp: 2024-02-20T19:25:13+06:30
url: http://127.0.0.1:8082/blog/posts
request:
header:
Accept-Encoding: gzip
Connection: close
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 11_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36
host: 127.0.0.1:8082
Cookie: session=ymwLa8dKmWjLl43BBpQnrp5LkFZraYkp; lang=en
method: GET
path: /blog/posts
scheme: http
raw: |+
GET /blog/posts HTTP/1.1
Host: 127.0.0.1:8082
Accept-Encoding: gzip
Cookie: session=ymwLa8dKmWjLl43BBpQnrp5LkFZraYkp; lang=en
Connection: close
Content-Type: application/json
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 11_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36
response:
header:
Content-Type: application/json; charset=UTF-8
Date: Tue, 27 Feb 2024 18:46:44 GMT
raw: |+
HTTP/1.1 200 OK
Content-Type: application/json; charset=UTF-8
Date: Wed, 28 Feb 2024 13:58:52 GMT
Content-Length: 218
[{"ID":1,"Title":"The Joy of Programming","Content":"Programming is like painting a canvas with logic.","Lang":"en"},{"ID":2,"Title":"A Journey Through Code","Content":"Every line of code tells a story.","Lang":"en"}]
---
timestamp: 2024-02-20T23:26:13+06:30
url: http://127.0.0.1:8082/user
request:
header:
Accept-Encoding: gzip
Connection: close
Content-Type: application/xml
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 11_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36
host: 127.0.0.1:8082
method: POST
path: /user
scheme: http
raw: |+
POST /user HTTP/1.1
Host: localhost:8082
User-Agent: curl/8.1.2
Accept: */*
Content-Length: 76
Connection: close
Content-Type: application/xml
<?xml version="1.0"?>
<user>
<id>7</id>
<name>pdteam</name>
</user>
response:
header:
Content-Type: text/plain; charset=UTF-8
Date: Tue, 27 Feb 2024 18:46:44 GMT
raw: |+
HTTP/1.1 200 OK
Content-Type: text/plain; charset=UTF-8
Date: Wed, 28 Feb 2024 13:58:52 GMT
Content-Length: 25
User updated successfully
---
timestamp: 2024-02-20T19:24:13+05:32
url: http://127.0.0.1:8082/host-header-lab
request:
header:
Accept-Encoding: gzip
Authorization: Bearer 3x4mpl3t0k3n
Connection: close
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 11_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36
host: 127.0.0.1:8082
method: POST
path: /catalog/product
scheme: https
raw: |+
GET /host-header-lab HTTP/1.1
Host: 127.0.0.1:8082
Authorization: Bearer 3x4mpl3t0k3n
Accept-Encoding: gzip
Connection: close
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 11_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36
response:
header:
Content-Encoding: gzip
Content-Type: text/html; charset=utf-8
Date: Tue, 20 Feb 2024 13:54:13 GMT
Set-Cookie: AWSALB=Rzm8ZSSL/yQq1mG1SdGmWAahqexWvOcjIhlNKm0wBnk4jvY3Hdy3mRc+NKoMRNJ2RW+FNbtRk7DX+itnfzjMvKNpwtLWWAafxeKybc+v351g0MsLycRNQF5fG78y; Expires=Tue, 27 Feb 2024 13:54:13 GMT; Path=/, AWSALBCORS=Rzm8ZSSL/yQq1mG1SdGmWAahqexWvOcjIhlNKm0wBnk4jvY3Hdy3mRc+NKoMRNJ2RW+FNbtRk7DX+itnfzjMvKNpwtLWWAafxeKybc+v351g0MsLycRNQF5fG78y; Expires=Tue, 27 Feb 2024 13:54:13 GMT; Path=/; SameSite=None; Secure, session=fFcCUjmQguQy820Y8xrnRypp3KBWSPk6; Secure; HttpOnly; SameSite=None
X-Backend: 2235790d-f089-4324-8ac0-f64cc96f2460
X-Frame-Options: SAMEORIGIN
body: |
<!DOCTYPE html>
<html>
<head>
<link href=/resources/labheader/css/scanMeHeader.css rel=stylesheet>
<link href=/resources/css/labsScanme.css rel=stylesheet>
<meta name="viewport" content="width=device-width, user-scalable=no">
<script src="/resources/js/react.development.js"></script>
<script src="/resources/js/react-dom.development.js"></script>
<script type="text/javascript" src="/resources/js/angular_1-7-7.js"></script>
<title>Fruit Overlays - Product - Gin &amp; Juice Shop</title>
</head>
<body ng-app>
<div id="scanMeHeader">
<section class="header-description">
<p>
This is a deliberately vulnerable web application designed for testing web&nbsp;vulnerability&nbsp;scanners.
<span class="link" onmouseenter="window.__x1 = 1" onmouseover="window.__x2 = 1" onmousemove="window.__x3 = 1" onmousedown="window.__x4 = 1" onmouseup="if (window.__x1 && window.__x2 && window.__x3 && window.__x4) location = atob('L3Z1bG5lcmFiaWxpdGllcw==')" onmouseleave="delete window.__x1; delete window.__x2; delete window.__x3; delete window.__x4">Put your scanner to the test!</span>
</p>
</section>
<section class='scanMeBanner'>
<div class=container>
<a href='/'>
<div class=scanme-logo></div>
</a>
<div class=title-container>
<nav>
<ul class="navigation-header-links primary-links">
<li>
<a class="button selected" href="/catalog">Products</a>
</li>
<li>
<a class="button" href="/blog">Blog</a>
</li>
<li>
<a class="button" href="/about">Our story</a>
</li>
</ul>
<ul class="navigation-header-links secondary-links">
<li>
<a class="account-icon" href="/my-account"><svg><use href="/resources/images/icon-account.svg#account-icon"></use></svg></a>
<ul>
<li>
<a class="button" href="/my-account">Log in</a>
</li>
<li>
<a class="button" href="/my-account">My account</a>
</li>
</ul>
</li>
<li>
<a class="cart-icon" href="/catalog/cart"><span>0</span><svg><use href="/resources/images/icon-cart.svg#cart-icon"></use></svg></a>
</li>
<li class="nav-toggle"><a class="nav-trigger"><span></span><span></span><span></span></a></li>
</ul>
</nav>
</div>
</div>
</section>
</div>
<div theme="ecommerce-product">
<section class="maincontainer">
<div class="container is-page">
<header class="notification-header">
</header>
<ul class="breadcrumbs">
<li><a href="/">Home</a></li>
<li><a href="/catalog">Products</a></li>
<li>Fruit Overlays</li>
</ul>
<section class="product">
<div>
<img class="product-image" src="/image/scanme/productcatalog/products/10.png">
</div>
<div>
<h3>Fruit Overlays</h3>
<img class="product-image" src="/image/scanme/productcatalog/products/10.png">
<span class="price-rating">
<span class="price">
$92.79
</span>
<img src="/resources/images/rating3.png">
</span>
<span class="description">
<label>Description:</label>
<p>When it comes to hospitality presentation is key, and nothing looks better than a well-dressed drink. We know gin fans like plenty of fruit in their glasses, some a bit more than they really need, but hey ho, each to their own. But what about fruit not inside your glass, but classily arranged over your glass? In comes Fruitus overlayus, the best way to jazz up any party. The possible colour combinations are endless, just picture that! All you need is a nice selection of small fruits, or maybe even use our Fruit Curliwurlier to add a dash of even more drama, and we will do the rest. This one is a real winner at our Christmas and New year’s outings, give it a go and turn some heads.</p>
<p>CONTENTS: 12 cocktail sticks.</p>
<p>HOW TO USE: Let your creative juices flow (Pun intended), and spend some time working on your colour coordination, try not to think too much about it, just do it! Pick up one of the Fruitus overlayus sticks and carefully slide the fruit along until there is a small space on either end of the stick. Balance the stick across the rim of the glass. Ta-Da! Your first fruit overlay. Keep going until you have as many overlays as you need. You can always purchase more at any time with a discount on bulk buys.</p>
</span>
<span class="stock-check">
<form id="stockCheckForm" action="/catalog/product/stock" method="POST">
<input required type="hidden" name="productId" value="3">
<select name="storeId">
<option value="1" >London</option>
<option value="2" >Paris</option>
<option value="3" >Milan</option>
</select>
<button type="submit" class="button">Check stock</button>
</form>
<span id="stockCheckResult"></span>
<script src="/resources/js/xmlStockCheckPayload.js"></script>
<script src="/resources/js/stockCheck.js"></script>
</span>
<span class="cart-button">
<form id=addToCartForm action=/catalog/cart method=POST>
<input required type=hidden name=productId value=3>
<input required type=hidden name=redir value=PRODUCT>
<select class='product-quantity' required name=quantity>
<option value="1" selected>1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
<option value="13">13</option>
<option value="14">14</option>
<option value="15">15</option>
</select>
<button type=submit class=button>Add to cart</button>
</form>
</span>
<span class="view-cart-button">
<a class="button" href="/catalog/cart">View cart</a>
</span>
</div>
</section>
</div>
</section>
<div class="footer-wrapper">
<section class="footer">
<div class="footer-left"></div>
<div class="footer-center">
<h2>Never miss a deal - subscribe now</h2>
<p>Join our worldwide community of gin and juice fanatics, for exclusive news on our latest deals, new releases, collaborations, and more.</p>
<script src='/resources/js/subscribeNow.js'></script>
<div id="subscribe" class="form" data-method="post" data-action="/catalog/subscribe">
<input required type=email name=email placeholder="Email address">
<input required type="hidden" name="csrf" value="ALUrIPu21ygHSGadxsA8u70XnVcY4V4k">
<button class="button" type=submit>Subscribe</button>
</div>
<dialog id="coupon-dialog">
<div class="coupon-wrapper">
<button class="close-button" onclick="closeCouponDialog(event)"></button>
<div class="coupon-info">
<h1>20% off everything</h1>
<div class="coupon-input">
<h3 id="copyable-coupon">Coupon not found</h3>
<button id="copy-coupon-button" class="copy-button" onclick="copyCoupon(event)"></button>
<div id="coupon-copied-tick" class="coupon-copied-tick hidden"></div>
</div>
<p>Apply this coupon to your Shopping Cart before placing your order.</p>
</div>
</div>
</dialog>
<div class="footer-copyright">
<div class="portswigger-logo"></div>
<div>© 2023 PortSwigger Ltd.</div>
</div>
</div>
<div class="footer-right"></div>
</section>
<section class="footer-lower">
<div class="footerNavigation">
<div class="socialLinks">
</div>
<nav>
<ul class="navigation-header-links primary-links">
<li>
<a class="button selected" href="/catalog">Products</a>
</li>
<li>
<a class="button" href="/blog">Blog</a>
</li>
<li>
<a class="button" href="/about">Our story</a>
</li>
</ul>
</nav>
</div>
</section>
</div>
</div>
<script src='/resources/footer/js/scanme.js'></script>
</body>
</html>
raw: |+
HTTP/1.1 200 OK
Connection: close
Content-Encoding: gzip
Content-Type: text/html; charset=utf-8
Date: Tue, 20 Feb 2024 13:54:13 GMT
Set-Cookie: AWSALB=Rzm8ZSSL/yQq1mG1SdGmWAahqexWvOcjIhlNKm0wBnk4jvY3Hdy3mRc+NKoMRNJ2RW+FNbtRk7DX+itnfzjMvKNpwtLWWAafxeKybc+v351g0MsLycRNQF5fG78y; Expires=Tue, 27 Feb 2024 13:54:13 GMT; Path=/
Set-Cookie: AWSALBCORS=Rzm8ZSSL/yQq1mG1SdGmWAahqexWvOcjIhlNKm0wBnk4jvY3Hdy3mRc+NKoMRNJ2RW+FNbtRk7DX+itnfzjMvKNpwtLWWAafxeKybc+v351g0MsLycRNQF5fG78y; Expires=Tue, 27 Feb 2024 13:54:13 GMT; Path=/; SameSite=None; Secure
Set-Cookie: session=fFcCUjmQguQy820Y8xrnRypp3KBWSPk6; Secure; HttpOnly; SameSite=None
X-Backend: 2235790d-f089-4324-8ac0-f64cc96f2460
X-Frame-Options: SAMEORIGIN
@@ -5,7 +5,7 @@ info:
author: pdteam
severity: info
requests:
http:
- method: GET
path:
- "{{BaseURL}}"
+1 -1
View File
@@ -5,7 +5,7 @@ info:
author: pdteam
severity: info
requests:
http:
- method: GET
path:
- "{{BaseURL}}"
@@ -6,7 +6,7 @@ info:
severity: info
tags: fuzz
requests:
http:
- method: GET
path:
- "{{BaseURL}}"
+1 -1
View File
@@ -5,7 +5,7 @@ info:
author: pdteam
severity: info
requests:
http:
- method: GET
path:
- "{{BaseURL}}"
+1 -1
View File
@@ -5,7 +5,7 @@ info:
author: pdteam
severity: info
requests:
http:
- method: GET
path:
- "{{BaseURL}}"
@@ -0,0 +1,2 @@
tags:
- kev
@@ -0,0 +1,26 @@
id: pre-condition-code
info:
name: example code template
author: pdteam
severity: info
self-contained: true
variables:
OAST: "{{interactsh-url}}"
code:
- pre-condition: IsLinux()
engine:
- sh
- bash
source: |
echo "$OAST" | base64
matchers:
- type: dsl
dsl:
- true
# digest: 4a0a0047304502200307590191cb7c766b6c21e5777d345bdddf7adf9d6da8f7d336d585d9ac4a8b022100fd30fb0c7722778eb3d861d60e721d805925b8d8df2b979ef2104c35ec57d5cb:4a3eb6b4988d95847d4203be25ed1d46
@@ -20,4 +20,4 @@ code:
- type: word
words:
- "hello from input baz"
# digest: 4a0a00473045022100b290a0c40f27573f0de9a950be13457a9bf59ade1ff2f497bf01a3b526e5db750220761942acffd6d27e2714ddaa1c73c699ccd7de48839f08cff1d6a9456bc8ff1f:4a3eb6b4988d95847d4203be25ed1d46
# digest: 4a0a0047304502203fe1d7d52bc2a41886d576a90c82c3be42078baaa4b46e1f3d8519665d6f88b202210081feb82c41150c5b218e226fc4f299ded19f42ba01ef34ba60b0634b4ea6ee12:4a3eb6b4988d95847d4203be25ed1d46
@@ -18,4 +18,4 @@ code:
- type: word
words:
- "hello from input"
# digest: 490a004630440220335663a6a4db720ee6276ab7179a87a6be0b4030771ec5ee82ecf6982342113602200a2570db7eb9721f6ceb1a89543fc436ee62b30d1b720c75ea3834ed3d2b64f3:4a3eb6b4988d95847d4203be25ed1d46
# digest: 4b0a00483046022100afb5ebff14a40e7f9b679ffc4d93ce7849e33eb398ebb47f2e757cd24831f9dd02210089ffa21b2763e99ebce95dfc5b91e1e62da4ccdc9d2ad5c48584fa350ba335af:4a3eb6b4988d95847d4203be25ed1d46
@@ -26,4 +26,4 @@ code:
part: interactsh_protocol
words:
- "http"
# digest: 490a004630440220400892730a62fa1bbb1064e4d88eea760dbf8f01c6b630ff0f5b126fd1952839022025a6d52e730c1f1cfcbd440e6269f93489db3a77cb2a27d0f47522c0819dc8d3:4a3eb6b4988d95847d4203be25ed1d46
# digest: 4b0a00483046022100939f83e74d43932a5bd792b1fd2c100eec2df60f2b2a8dd56b5c8ef5faa92b17022100f93031b0de373af7d78e623968ea5a2d67c4561ef70e3e6da15aef7e5c853115:4a3eb6b4988d95847d4203be25ed1d46
@@ -21,4 +21,4 @@ code:
- type: word
words:
- "hello from input"
# digest: 490a0046304402206b14abdc0d5fc13466f5c292da9fb2a19d1b2c5e683cc052037fe367b372f82b02202c00b9acbd8106a769eb411794c567d3019433671397bf909e16b286105ed69e:4a3eb6b4988d95847d4203be25ed1d46
# digest: 4a0a00473045022100b8e676ce0c57b60c233a0203539dec20457bbb5f1790d351a5d45405b6668b2602204b1f2fa18e7db099f05329009597ceb2d9b7337562c1a676e8d50ea2f1c6fcbe:4a3eb6b4988d95847d4203be25ed1d46
@@ -1,7 +1,7 @@
id: basic-dns-example
id: dns-a-query-example
info:
name: Test DNS Template
name: Test DNS A Query Template
author: pdteam
severity: info
@@ -14,4 +14,4 @@ dns:
matchers:
- type: word
words:
- "1.1.1.1"
- "1.1.1.1"
+17
View File
@@ -0,0 +1,17 @@
id: dns-aaaa-query-example
info:
name: Test DNS AAAA Query Template
author: pdteam
severity: info
dns:
- name: "{{FQDN}}"
type: AAAA
class: inet
recursion: true
retries: 3
matchers:
- type: word
words:
- "2606:4700:4700::1001"
@@ -0,0 +1,18 @@
id: dns-cname-query-example
info:
name: Test DNS CNAME Query Template
author: pdteam
severity: info
dns:
- name: "{{FQDN}}"
type: CNAME
class: inet
recursion: true
retries: 3
matchers:
- type: word
part: all
words:
- "CNAME"
+18
View File
@@ -0,0 +1,18 @@
id: dns-ns-query-example
info:
name: Test DNS NS Query Template
author: pdteam
severity: info
dns:
- name: "{{FQDN}}"
type: NS
class: inet
recursion: true
retries: 3
matchers:
- type: word
part: all
words:
- "NS"
+18
View File
@@ -0,0 +1,18 @@
id: dns-a-query-example
info:
name: Test DNS SRV Query Template
author: pdteam
severity: info
dns:
- name: "{{FQDN}}"
type: SRV
class: inet
recursion: true
retries: 3
matchers:
- type: word
part: all
words:
- "SRV"
+18
View File
@@ -0,0 +1,18 @@
id: dns-txt-query-example
info:
name: Test DNS TXT Query Template
author: pdteam
severity: info
dns:
- name: "{{FQDN}}"
type: TXT
class: inet
recursion: true
retries: 3
matchers:
- type: word
part: all
words:
- "TXT"
@@ -5,7 +5,7 @@ info:
author: pdteam
severity: info
requests:
http:
- raw:
- |
@timeout: 5s
@@ -5,7 +5,7 @@ info:
author: pdteam
severity: info
requests:
http:
- method: GET
path:
- "{{BaseURL}}"
@@ -5,7 +5,7 @@ info:
author: pdteam
severity: info
requests:
http:
- method: GET
path:
- "{{BaseURL}}"
@@ -8,7 +8,7 @@ info:
constants:
test: test-in-template
requests:
http:
- method: GET
path:
- "{{BaseURL}}?p={{test}}"
@@ -5,7 +5,7 @@ info:
author: pdteam
severity: info
requests:
http:
- method: GET
path:
- "{{BaseURL}}/?a={{test}}&b={{values}}"
@@ -5,7 +5,7 @@ info:
author: pdteam
severity: info
requests:
http:
- raw:
- |
GET /?action=curltest&url={{interactsh-url}} HTTP/1.1
@@ -5,7 +5,7 @@ info:
author: pdteam
severity: info
requests:
http:
- method: GET
path:
- "{{BaseURL}}"
@@ -5,7 +5,7 @@ info:
author: pdteam
severity: info
requests:
http:
- raw:
# Note for the integration test: dsl expression should not contain commas
- |
@@ -5,7 +5,7 @@ info:
author: pd-team
severity: info
requests:
http:
-
path:
- "{{BaseURL}}"
@@ -5,7 +5,7 @@ info:
author: pdteam
severity: info
requests:
http:
- method: GET
path:
- "{{BaseURL}}"
@@ -5,7 +5,7 @@ info:
author: pdteam
severity: info
requests:
http:
- method: GET
path:
- "{{BaseURL}}"
@@ -5,7 +5,7 @@ info:
author: pdteam
severity: info
requests:
http:
- method: GET
path:
- "{{BaseURL}}"
@@ -5,7 +5,7 @@ info:
author: pdteam
severity: info
requests:
http:
- method: GET
path:
- "{{BaseURL}}"
@@ -5,7 +5,7 @@ info:
author: pdteam
severity: info
requests:
http:
- raw:
- |
@tls-sni:request.host
@@ -5,7 +5,7 @@ info:
author: pdteam
severity: info
requests:
http:
- method: GET
path:
- "{{BaseURL}}?test=nuclei"
@@ -5,7 +5,7 @@ info:
author: pdteam
severity: info
requests:
http:
- method: GET
path:
- "{{BaseURL}}"
@@ -5,7 +5,7 @@ info:
author: pdteam
severity: info
requests:
http:
- method: GET
path:
- "{{BaseURL}}"
@@ -5,7 +5,7 @@ info:
author: pdteam
severity: info
requests:
http:
- raw:
- |+
GET / HTTP/1.1
Loaded 100 of 567 files, more files were not shown because too many files have changed in this diff. Show more