60 Commits

Author SHA1 Message Date
Tarun Koyalwar
63150a8ee4
add stop-at-first-match for headless protocol (#3034)
* headless: adds stop-at-first-match

* GH workflow fix

* misc fix

* headless use spm option

Co-authored-by: sandeep <8293321+ehsandeep@users.noreply.github.com>
2022-12-19 19:52:17 +05:30
Ice3man
363ffb75db
Added probing for URL + input based on protocol (#2614)
* Added workflow names based condition

* Added conditional filtering to workflow executor

* Replaced names with single name stringslice

* Added probing for URL + input based on protocol

* Remove debug comments

* Fixed typo

* Fixed failing tests

* Fixed workflow matcher condition + tests

* Fixed workflow item name

* Switch to if-else

* Fixed review comment strict

* Increase bulk size

* Added default port for SSL protocol + misc changes

* Fixed failing tests

* Fixed misc changes to executer

* Fixed failing self-contained and offlinehttp tests

* Fixed atomic increment operation

* misc update

* Fixed failing builds

Co-authored-by: sandeep <8293321+ehsandeep@users.noreply.github.com>
2022-10-20 17:23:00 +05:30
LuitelSamikshya
cb0da81a14 ratelimit library 2022-10-12 22:04:37 -05:00
Mzack9999
781e4e6105
Shared Execution Context Prototype (#2576)
* renaming var

* Introducing shared execution context prototype

* fixing field name

* adding shared values propagation

* adding shared context lock

* add slice values normalization

* adding integration tests

* adding metadata support for dns

* adding multi-protocol context sharing test

* removing debug test files

* moving contextargs around

* adding comments

* refactoring code

- getter/setter for complex types
- using pointers to avoid heap allocations
2022-10-03 15:42:20 +05:30
Mzack9999
99c14f4c9c
implementation of rate limiter with bucket refill and unrestricted token burst (#2536)
* implementation of rate limiter with interval burst

* fixing import path

* fixing syntax

* adding tests

* fixing lint errors

* adding support for context

* moving rate limiter earlier to avoid hitting timeout
2022-09-19 17:09:28 +05:30
Dani Goland
8670c8b20d
Modified "xpath" extractor to support XML XPath in addition to HTML XPath (#2471)
* Modified "xpath" extractor to support XML XPath in addition to HTML XPath

* Updated function docs
2022-08-22 15:27:32 +05:30
Ice3man
67d5769cd9
Added initial catalog interface implementation (#2318)
* Added initial catalog interface implementation

* Added OpenFile to Catalog + disk catalog implementation

* Fixed merge issues

Co-authored-by: sandeep <sandeep@projectdiscovery.io>
2022-08-10 11:05:58 -07:00
Mike Rheinheimer
9efba05e0c
expose hosterrorscache.Cache as an interface (#2291)
* expose hosterrorscache as an interface, change signature to capture the error reason

* use the hosterrorscache.CacheInterface as struct field so users of Nuclei embedded can provide their own cache implementation

Co-authored-by: Mike Rheinheimer <mrheinheimer@atlassian.com>
2022-07-19 02:05:53 +05:30
Ice3man
7875b06fc8
Added exclude-matchers support for template & matchers (#2218)
* Added exclude-matchers support for template & matchers

* Fixed panics due to typo

* Added support for only template ID + misc cleanup
2022-06-24 23:09:27 +05:30
Sandeep Singh
d3b4a86d2a
Merge pull request #1785 from projectdiscovery/variables-introduction
Added variables for nuclei + refactor variable handling
2022-04-21 17:59:01 +05:30
Mzack9999
72c5c399ec adding support for dsl extractors 2022-04-20 11:32:13 +02:00
Ice3man
a0ece302d1 Moved variables to template level + misc 2022-03-31 00:54:35 +05:30
Ice3man
24326389a4
Added interactsh additional variables support (#1468)
* Added interactsh additional variables support

* Added support for interact server rotation

* Misc fixes to interact related modules

* Fixed a crash with interactsh

* Perform deduplication of output extract data before printing
2022-01-13 13:22:43 +05:30
mzack
1f878192ec Merge branch 'dev' into issue-614-scan-resume 2021-12-23 13:15:47 +01:00
mzack
2140ffa382 Adding stop-resume support 2021-11-29 14:38:45 +01:00
Sajad Parra
f60e93aae1 add template level stop at first match option 2021-11-29 16:01:06 +05:30
forgedhallpass
47340f06b0 refactor: uniformly sorted imports 2021-11-25 17:09:20 +02:00
Ice3man543
ce7534112a Fixed linter issues 2021-11-08 16:10:04 +05:30
Ice3man543
d772dedef1 Make default part for new protocols to response 2021-11-08 16:01:45 +05:30
Ice3man543
8ad3ebcd05 Made code changes as per review comments 2021-11-05 03:01:41 +05:30
Ice3man543
390ca8b3c6 Merge from dev 2021-11-03 18:58:00 +05:30
Ice3man543
a10b79d7a8 merge from engine-refactor and dev 2021-10-29 18:26:06 +05:30
Ice3man543
d124dbacc7 Moved all important execution stuff to engine 2021-10-28 17:20:07 +05:30
Ice3man543
c16c93fe7c refactor the modules to core 2021-10-27 16:50:36 +05:30
Ice3man
f25c7c3a1d
Merge branch 'dev' into more-protocols 2021-10-20 21:29:28 +05:30
forgedhallpass
b5c161d267 [feature] Add coloring to debug information #999
* extracted common MakeResultEvent logic and added the MakeResultEventItem method to the Request interface
2021-10-06 21:54:52 +03:00
forgedhallpass
08cd7a4ba7 [feature] Add coloring to debug information #999
* extracted common logic and made sure that all requests implement the same interface
2021-10-01 16:52:38 +03:00
forgedhallpass
4be6b3cc96 [feature] Add coloring to debug information #999 [WIP]
TODO:
* if there are multiple matchers, make sure the response is only displayed once, with all the matching values colored
* remove code duplication from the request.go files
2021-09-29 19:43:46 +03:00
Ice3man543
f6e9acf06f More work on other protocol additions 2021-09-23 18:30:44 +05:30
forgedhallpass
0ce33927c7 Typo fixes. 2021-09-07 17:31:46 +03:00
sandeep
a41d52c35d Merge branch 'dev' of https://github.com/projectdiscovery/nuclei into host-max-errors 2021-08-17 17:54:38 +05:30
Ice3man543
f216c6f6b3 Added HostErrorsCache for tracking failed hosts 2021-08-16 21:24:37 +05:30
forgedhallpass
5a495e1e99 RES-84 # Improve Nuclei CLI interface (WIP)
* Integration of the previous logic to 2.4.0
* Unit and ITs passing
* refactored the template matching logic
2021-07-15 13:41:41 +03:00
forgedhallpass
ed1dc103fe RES-84 # Improve Nuclei CLI interface (WIP)
* Merge from parent

# Conflicts:
#	v2/cmd/nuclei/main.go
#	v2/internal/runner/config.go
#	v2/internal/runner/templates.go
#	v2/internal/runner/update.go
#	v2/pkg/templates/compile.go
#	v2/pkg/templates/compile_test.go
#	v2/pkg/types/types.go
2021-07-12 17:20:01 +03:00
Ice3man543
4c594627a9 Started work on interact.sh support 2021-04-16 16:56:41 +05:30
Ice3man543
f6a480f0b4 Added disk exporters + changed some reporting modules around 2021-03-22 14:03:05 +05:30
Ice3man543
589778d9d2 Moved internal/progress to pkg, used interface 2021-03-09 17:19:03 +05:30
Ice3man543
8512b684c5 Lint errors fix 2021-02-26 13:13:11 +05:30
Ice3man
58237f103a
Add headless chrome based templates support (#562) 2021-02-21 16:31:34 +05:30
Ice3man
8b8adb7b46
Merge branch 'dev' into issue-tracker-integration 2021-02-08 01:51:37 +05:30
Ice3man543
ec86542b87 Added offline http response processing feature 2021-02-06 00:36:43 +05:30
Ice3man543
f2c20dda12 More tests + tag based execution + misc 2021-02-04 01:09:29 +05:30
Ice3man543
038b4aa5c2 Added jira+github+gitlab issue tracker integration to nuclei 2021-02-02 12:10:47 +05:30
Ice3man543
827fd99f01 Added multi-request condition support 2021-01-16 14:10:24 +05:30
Ice3man543
370ded871c Added support for output streaming in nuclei 2021-01-01 19:36:21 +05:30
Ice3man543
c42536f5e8 Added catalogue + template-workflow running + misc 2020-12-29 18:02:45 +05:30
Ice3man543
62603b7d5f Making nuclei overall compatible with new changes + bug fixes 2020-12-29 15:38:14 +05:30
Ice3man543
aefa2717f7 Added payload validation + misc 2020-12-29 12:08:46 +05:30
Ice3man543
fc83142917 Misc work on making http protocol runnable 2020-12-29 01:30:07 +05:30
Ice3man543
164a67353b MIsc 2020-12-26 02:09:16 +05:30