mirror of
https://github.com/projectdiscovery/nuclei.git
synced 2025-12-17 22:45:28 +00:00
Replacing rdap with fixed fork (#2819)
* Replacing rdap with pd fixed fork * mod tidy * updating rdap commit ref * reworking rdap client pool * removing unused code
This commit is contained in:
parent
a36d42a993
commit
6ac669eb43
@ -72,11 +72,11 @@ require (
|
|||||||
github.com/labstack/echo/v4 v4.9.1
|
github.com/labstack/echo/v4 v4.9.1
|
||||||
github.com/mholt/archiver v3.1.1+incompatible
|
github.com/mholt/archiver v3.1.1+incompatible
|
||||||
github.com/mitchellh/go-homedir v1.1.0
|
github.com/mitchellh/go-homedir v1.1.0
|
||||||
github.com/openrdap/rdap v0.9.1-0.20191017185644-af93e7ef17b7
|
|
||||||
github.com/projectdiscovery/fasttemplate v0.0.2
|
github.com/projectdiscovery/fasttemplate v0.0.2
|
||||||
github.com/projectdiscovery/goflags v0.1.3
|
github.com/projectdiscovery/goflags v0.1.3
|
||||||
github.com/projectdiscovery/nvd v1.0.9
|
github.com/projectdiscovery/nvd v1.0.9
|
||||||
github.com/projectdiscovery/ratelimit v0.0.0-20221004232058-7b82379157fa
|
github.com/projectdiscovery/ratelimit v0.0.0-20221004232058-7b82379157fa
|
||||||
|
github.com/projectdiscovery/rdap v0.9.1-0.20221108103045-9865884d1917
|
||||||
github.com/projectdiscovery/tlsx v0.0.9
|
github.com/projectdiscovery/tlsx v0.0.9
|
||||||
github.com/projectdiscovery/utils v0.0.1
|
github.com/projectdiscovery/utils v0.0.1
|
||||||
github.com/projectdiscovery/wappalyzergo v0.0.67
|
github.com/projectdiscovery/wappalyzergo v0.0.67
|
||||||
|
|||||||
@ -571,8 +571,6 @@ github.com/onsi/gomega v1.10.5/go.mod h1:gza4q3jKQJijlu05nKWRCW/GavJumGt8aNRxWg7
|
|||||||
github.com/onsi/gomega v1.16.0 h1:6gjqkI8iiRHMvdccRJM8rVKjCWk6ZIm6FTm3ddIe4/c=
|
github.com/onsi/gomega v1.16.0 h1:6gjqkI8iiRHMvdccRJM8rVKjCWk6ZIm6FTm3ddIe4/c=
|
||||||
github.com/onsi/gomega v1.16.0/go.mod h1:HnhC7FXeEQY45zxNK3PPoIUhzk/80Xly9PcubAlGdZY=
|
github.com/onsi/gomega v1.16.0/go.mod h1:HnhC7FXeEQY45zxNK3PPoIUhzk/80Xly9PcubAlGdZY=
|
||||||
github.com/op/go-logging v0.0.0-20160315200505-970db520ece7/go.mod h1:HzydrMdWErDVzsI23lYNej1Htcns9BCg93Dk0bBINWk=
|
github.com/op/go-logging v0.0.0-20160315200505-970db520ece7/go.mod h1:HzydrMdWErDVzsI23lYNej1Htcns9BCg93Dk0bBINWk=
|
||||||
github.com/openrdap/rdap v0.9.1-0.20191017185644-af93e7ef17b7 h1:3Xn/CN6GVY+7mVuGgt5bfp0F9JwcWqnvwfb23Jf8Vxg=
|
|
||||||
github.com/openrdap/rdap v0.9.1-0.20191017185644-af93e7ef17b7/go.mod h1:inRbqVxN7ri77yTJY3ZtGtKegIFa3Qnarh7Xp9P7LgY=
|
|
||||||
github.com/owenrumney/go-sarif v1.0.11/go.mod h1:hTBFbxU7GuVRUvwMx+eStp9M/Oun4xHCS3vqpPvket8=
|
github.com/owenrumney/go-sarif v1.0.11/go.mod h1:hTBFbxU7GuVRUvwMx+eStp9M/Oun4xHCS3vqpPvket8=
|
||||||
github.com/owenrumney/go-sarif v1.1.1/go.mod h1:dNDiPlF04ESR/6fHlPyq7gHKmrM0sHUvAGjsoh8ZH0U=
|
github.com/owenrumney/go-sarif v1.1.1/go.mod h1:dNDiPlF04ESR/6fHlPyq7gHKmrM0sHUvAGjsoh8ZH0U=
|
||||||
github.com/owenrumney/go-sarif/v2 v2.1.2 h1:PMDK7tXShJ9zsB7bfvlpADH5NEw1dfA9xwU8Xtdj73U=
|
github.com/owenrumney/go-sarif/v2 v2.1.2 h1:PMDK7tXShJ9zsB7bfvlpADH5NEw1dfA9xwU8Xtdj73U=
|
||||||
@ -658,6 +656,8 @@ github.com/projectdiscovery/ratelimit v0.0.0-20221004232058-7b82379157fa/go.mod
|
|||||||
github.com/projectdiscovery/rawhttp v0.0.7/go.mod h1:PQERZAhAv7yxI/hR6hdDPgK1WTU56l204BweXrBec+0=
|
github.com/projectdiscovery/rawhttp v0.0.7/go.mod h1:PQERZAhAv7yxI/hR6hdDPgK1WTU56l204BweXrBec+0=
|
||||||
github.com/projectdiscovery/rawhttp v0.1.2 h1:fCK42+qc5qYR4Dj/BVoukQ182h4n/w0dRcGVO92T7eI=
|
github.com/projectdiscovery/rawhttp v0.1.2 h1:fCK42+qc5qYR4Dj/BVoukQ182h4n/w0dRcGVO92T7eI=
|
||||||
github.com/projectdiscovery/rawhttp v0.1.2/go.mod h1:Q5PDAmKzjAjweEp0CQr9301nyxCOkzA9ImK6qLjgk+8=
|
github.com/projectdiscovery/rawhttp v0.1.2/go.mod h1:Q5PDAmKzjAjweEp0CQr9301nyxCOkzA9ImK6qLjgk+8=
|
||||||
|
github.com/projectdiscovery/rdap v0.9.1-0.20221108103045-9865884d1917 h1:m03X4gBVSorSzvmm0bFa7gDV4QNSOWPL/fgZ4kTXBxk=
|
||||||
|
github.com/projectdiscovery/rdap v0.9.1-0.20221108103045-9865884d1917/go.mod h1:JxXtZC9e195awe7EynrcnBJmFoad/BNDzW9mzFkK8Sg=
|
||||||
github.com/projectdiscovery/retryabledns v1.0.11/go.mod h1:4sMC8HZyF01HXukRleSQYwz4870bwgb4+hTSXTMrkf4=
|
github.com/projectdiscovery/retryabledns v1.0.11/go.mod h1:4sMC8HZyF01HXukRleSQYwz4870bwgb4+hTSXTMrkf4=
|
||||||
github.com/projectdiscovery/retryabledns v1.0.12/go.mod h1:4sMC8HZyF01HXukRleSQYwz4870bwgb4+hTSXTMrkf4=
|
github.com/projectdiscovery/retryabledns v1.0.12/go.mod h1:4sMC8HZyF01HXukRleSQYwz4870bwgb4+hTSXTMrkf4=
|
||||||
github.com/projectdiscovery/retryabledns v1.0.13-0.20210916165024-76c5b76fd59a/go.mod h1:tXaLDs4n3pRZHwfa8mdXpUWe/AYDNK3HlWDjldhRbjI=
|
github.com/projectdiscovery/retryabledns v1.0.13-0.20210916165024-76c5b76fd59a/go.mod h1:tXaLDs4n3pRZHwfa8mdXpUWe/AYDNK3HlWDjldhRbjI=
|
||||||
|
|||||||
@ -8,6 +8,7 @@ import (
|
|||||||
"github.com/projectdiscovery/nuclei/v2/pkg/protocols/http/httpclientpool"
|
"github.com/projectdiscovery/nuclei/v2/pkg/protocols/http/httpclientpool"
|
||||||
"github.com/projectdiscovery/nuclei/v2/pkg/protocols/http/signerpool"
|
"github.com/projectdiscovery/nuclei/v2/pkg/protocols/http/signerpool"
|
||||||
"github.com/projectdiscovery/nuclei/v2/pkg/protocols/network/networkclientpool"
|
"github.com/projectdiscovery/nuclei/v2/pkg/protocols/network/networkclientpool"
|
||||||
|
"github.com/projectdiscovery/nuclei/v2/pkg/protocols/whois/rdapclientpool"
|
||||||
"github.com/projectdiscovery/nuclei/v2/pkg/types"
|
"github.com/projectdiscovery/nuclei/v2/pkg/types"
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -27,7 +28,13 @@ func Init(options *types.Options) error {
|
|||||||
if err := signerpool.Init(options); err != nil {
|
if err := signerpool.Init(options); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
return networkclientpool.Init(options)
|
if err := networkclientpool.Init(options); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
if err := rdapclientpool.Init(options); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
var userAgents = []string{
|
var userAgents = []string{
|
||||||
|
|||||||
38
v2/pkg/protocols/whois/rdapclientpool/clientpool.go
Normal file
38
v2/pkg/protocols/whois/rdapclientpool/clientpool.go
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
package rdapclientpool
|
||||||
|
|
||||||
|
import (
|
||||||
|
"github.com/projectdiscovery/gologger"
|
||||||
|
"github.com/projectdiscovery/nuclei/v2/pkg/types"
|
||||||
|
"github.com/projectdiscovery/rdap"
|
||||||
|
)
|
||||||
|
|
||||||
|
var normalClient *rdap.Client
|
||||||
|
|
||||||
|
// Init initializes the client pool implementation
|
||||||
|
func Init(options *types.Options) error {
|
||||||
|
// Don't create clients if already created in the past.
|
||||||
|
if normalClient != nil {
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
normalClient = &rdap.Client{}
|
||||||
|
if options.Verbose || options.Debug || options.DebugRequests || options.DebugResponse {
|
||||||
|
normalClient.Verbose = func(text string) {
|
||||||
|
gologger.Debug().Msgf("rdap: %s", text)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
// Configuration contains the custom configuration options for a client - placeholder
|
||||||
|
type Configuration struct{}
|
||||||
|
|
||||||
|
// Hash returns the hash of the configuration to allow client pooling - placeholder
|
||||||
|
func (c *Configuration) Hash() string {
|
||||||
|
return ""
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get creates or gets a client for the protocol based on custom configuration
|
||||||
|
func Get(options *types.Options, configuration *Configuration) (*rdap.Client, error) {
|
||||||
|
return normalClient, nil
|
||||||
|
}
|
||||||
@ -6,8 +6,8 @@ import (
|
|||||||
"time"
|
"time"
|
||||||
|
|
||||||
jsoniter "github.com/json-iterator/go"
|
jsoniter "github.com/json-iterator/go"
|
||||||
"github.com/openrdap/rdap"
|
|
||||||
"github.com/pkg/errors"
|
"github.com/pkg/errors"
|
||||||
|
"github.com/projectdiscovery/rdap"
|
||||||
|
|
||||||
"github.com/projectdiscovery/gologger"
|
"github.com/projectdiscovery/gologger"
|
||||||
"github.com/projectdiscovery/nuclei/v2/pkg/operators"
|
"github.com/projectdiscovery/nuclei/v2/pkg/operators"
|
||||||
@ -20,6 +20,7 @@ import (
|
|||||||
"github.com/projectdiscovery/nuclei/v2/pkg/protocols/common/helpers/responsehighlighter"
|
"github.com/projectdiscovery/nuclei/v2/pkg/protocols/common/helpers/responsehighlighter"
|
||||||
"github.com/projectdiscovery/nuclei/v2/pkg/protocols/common/replacer"
|
"github.com/projectdiscovery/nuclei/v2/pkg/protocols/common/replacer"
|
||||||
"github.com/projectdiscovery/nuclei/v2/pkg/protocols/common/utils/vardump"
|
"github.com/projectdiscovery/nuclei/v2/pkg/protocols/common/utils/vardump"
|
||||||
|
"github.com/projectdiscovery/nuclei/v2/pkg/protocols/whois/rdapclientpool"
|
||||||
templateTypes "github.com/projectdiscovery/nuclei/v2/pkg/templates/types"
|
templateTypes "github.com/projectdiscovery/nuclei/v2/pkg/templates/types"
|
||||||
"github.com/projectdiscovery/nuclei/v2/pkg/types"
|
"github.com/projectdiscovery/nuclei/v2/pkg/types"
|
||||||
)
|
)
|
||||||
@ -57,12 +58,7 @@ func (request *Request) Compile(options *protocols.ExecuterOptions) error {
|
|||||||
}
|
}
|
||||||
|
|
||||||
request.options = options
|
request.options = options
|
||||||
request.client = &rdap.Client{}
|
request.client, _ = rdapclientpool.Get(options.Options, nil)
|
||||||
if request.options.Options.Verbose || request.options.Options.Debug || request.options.Options.DebugRequests {
|
|
||||||
request.client.Verbose = func(text string) {
|
|
||||||
gologger.Debug().Msgf("rdap: %s", text)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if len(request.Matchers) > 0 || len(request.Extractors) > 0 {
|
if len(request.Matchers) > 0 || len(request.Extractors) > 0 {
|
||||||
compiled := &request.Operators
|
compiled := &request.Operators
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user