mirror of https://github.com/daffainfo/nuclei.git
adds default ztls fallback support for tls errors (#3909)
* bump fastdialer * make -ztls flag as no-op and deprecate * bump fastdialer version from main branch * dep update --------- Co-authored-by: sandeep <8293321+ehsandeep@users.noreply.github.com>dev
parent
3dca03163c
commit
5e284879d3
|
@ -201,7 +201,7 @@ on extensive configurability, massive extensibility and ease of use.`)
|
|||
flagSet.StringVarP(&options.ClientKeyFile, "client-key", "ck", "", "client key file (PEM-encoded) used for authenticating against scanned hosts"),
|
||||
flagSet.StringVarP(&options.ClientCAFile, "client-ca", "ca", "", "client certificate authority file (PEM-encoded) used for authenticating against scanned hosts"),
|
||||
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"),
|
||||
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.BoolVar(&options.Sandbox, "sandbox", false, "sandbox nuclei for safe templates execution"),
|
||||
flagSet.StringVarP(&options.Interface, "interface", "i", "", "network interface to use for network scan"),
|
||||
|
|
|
@ -21,7 +21,7 @@ require (
|
|||
github.com/olekukonko/tablewriter v0.0.5
|
||||
github.com/pkg/errors v0.9.1
|
||||
github.com/projectdiscovery/clistats v0.0.19
|
||||
github.com/projectdiscovery/fastdialer v0.0.32
|
||||
github.com/projectdiscovery/fastdialer v0.0.33
|
||||
github.com/projectdiscovery/hmap v0.0.13
|
||||
github.com/projectdiscovery/interactsh v1.1.4
|
||||
github.com/projectdiscovery/rawhttp v0.1.16
|
||||
|
|
|
@ -397,8 +397,8 @@ github.com/projectdiscovery/clistats v0.0.19 h1:SA/qRHbmS9VEbVEPzX/ka01hZDYATL9Z
|
|||
github.com/projectdiscovery/clistats v0.0.19/go.mod h1:NQDAW/O7cK9xBIgk46kJjwGRkjSg5JkB8E4DvuxXr+c=
|
||||
github.com/projectdiscovery/dsl v0.0.12 h1:F3S94FKyakMMtRNuob+HbW0XmibBE3zwWBw+b10x2gg=
|
||||
github.com/projectdiscovery/dsl v0.0.12/go.mod h1:UQxYzKD9oy/xs86rHMfCcVb+JoPJ8qUhxm9AejdsvFw=
|
||||
github.com/projectdiscovery/fastdialer v0.0.32 h1:2sMAXLUcdyHMmXh46PkoRRewBBjZBMiraawSHDT/fjs=
|
||||
github.com/projectdiscovery/fastdialer v0.0.32/go.mod h1:ttLvt0xnpNQAStYYQ6ElIBHfSXHuPEiXBkLH/OLbYlc=
|
||||
github.com/projectdiscovery/fastdialer v0.0.33 h1:FKXZjJme5nhgnnRL0Y4KjZ5YXKg03dX5ZJYFJV3LOwU=
|
||||
github.com/projectdiscovery/fastdialer v0.0.33/go.mod h1:8Xw7r4kiHO1C1/wTnMrwUwQG6KIKCaPoeT5XLoJptMo=
|
||||
github.com/projectdiscovery/fasttemplate v0.0.2 h1:h2cISk5xDhlJEinlBQS6RRx0vOlOirB2y3Yu4PJzpiA=
|
||||
github.com/projectdiscovery/fasttemplate v0.0.2/go.mod h1:XYWWVMxnItd+r0GbjA1GCsUopMw1/XusuQxdyAIHMCw=
|
||||
github.com/projectdiscovery/freeport v0.0.5 h1:jnd3Oqsl4S8n0KuFkE5Hm8WGDP24ITBvmyw5pFTHS8Q=
|
||||
|
|
|
@ -95,8 +95,8 @@ func Init(options *types.Options) error {
|
|||
opts.Deny = append(networkpolicy.DefaultIPv4DenylistRanges, networkpolicy.DefaultIPv6DenylistRanges...)
|
||||
}
|
||||
opts.WithDialerHistory = true
|
||||
opts.WithZTLS = options.ZTLS
|
||||
opts.SNIName = options.SNI
|
||||
// fastdialer now by default fallbacks to ztls when there are tls related errors
|
||||
dialer, err := fastdialer.NewDialer(opts)
|
||||
if err != nil {
|
||||
return errors.Wrap(err, "could not create dialer")
|
||||
|
|
|
@ -112,10 +112,6 @@ func (request *Request) Compile(options *protocols.ExecutorOptions) error {
|
|||
case request.ScanMode == "openssl" && !openssl.IsAvailable():
|
||||
// if openssl is not installed instead of failing "auto" scanmode is used
|
||||
request.ScanMode = "auto"
|
||||
|
||||
case options.Options.ZTLS && request.ScanMode == "ctls":
|
||||
// only override if scanmode in template is "ctls" since auto internally uses ztls as fallback
|
||||
request.ScanMode = "ztls"
|
||||
}
|
||||
|
||||
tlsxOptions := &clients.Options{
|
||||
|
|
|
@ -277,7 +277,7 @@ type Options struct {
|
|||
ClientKeyFile string
|
||||
// ClientCAFile client certificate authority file (PEM-encoded) used for authenticating against scanned hosts
|
||||
ClientCAFile string
|
||||
// Use ZTLS library
|
||||
// Deprecated: Use ZTLS library
|
||||
ZTLS bool
|
||||
// Sandbox enables sandboxed nuclei template execution
|
||||
Sandbox bool
|
||||
|
|
Loading…
Reference in New Issue