mirror of https://github.com/daffainfo/nuclei.git
Use template path in output request
parent
933ed2429d
commit
463c1c0142
|
@ -28,7 +28,7 @@ func (request *Request) ExecuteWithResults(input string, metadata /*TODO review
|
|||
// Compile each request for the template based on the URL
|
||||
compiledRequest, err := request.Make(domain)
|
||||
if err != nil {
|
||||
request.options.Output.Request(request.options.TemplateID, domain, "dns", err)
|
||||
request.options.Output.Request(request.options.TemplatePath, domain, "dns", err)
|
||||
request.options.Progress.IncrementFailedRequestsBy(1)
|
||||
return errors.Wrap(err, "could not build request")
|
||||
}
|
||||
|
@ -46,7 +46,7 @@ func (request *Request) ExecuteWithResults(input string, metadata /*TODO review
|
|||
// Send the request to the target servers
|
||||
resp, err := request.dnsClient.Do(compiledRequest)
|
||||
if err != nil {
|
||||
request.options.Output.Request(request.options.TemplateID, domain, "dns", err)
|
||||
request.options.Output.Request(request.options.TemplatePath, domain, "dns", err)
|
||||
request.options.Progress.IncrementFailedRequestsBy(1)
|
||||
}
|
||||
if resp == nil {
|
||||
|
@ -54,7 +54,7 @@ func (request *Request) ExecuteWithResults(input string, metadata /*TODO review
|
|||
}
|
||||
request.options.Progress.IncrementRequests()
|
||||
|
||||
request.options.Output.Request(request.options.TemplateID, domain, "dns", err)
|
||||
request.options.Output.Request(request.options.TemplatePath, domain, "dns", err)
|
||||
gologger.Verbose().Msgf("[%s] Sent DNS request to %s", request.options.TemplateID, domain)
|
||||
|
||||
outputEvent := request.responseToDSLMap(compiledRequest, resp, input, input)
|
||||
|
|
|
@ -69,7 +69,7 @@ func (request *Request) ExecuteWithResults(input string, metadata /*TODO review
|
|||
})
|
||||
wg.Wait()
|
||||
if err != nil {
|
||||
request.options.Output.Request(request.options.TemplateID, input, "file", err)
|
||||
request.options.Output.Request(request.options.TemplatePath, input, "file", err)
|
||||
request.options.Progress.IncrementFailedRequestsBy(1)
|
||||
return errors.Wrap(err, "could not send file request")
|
||||
}
|
||||
|
|
|
@ -20,7 +20,7 @@ var _ protocols.Request = &Request{}
|
|||
func (request *Request) ExecuteWithResults(input string, metadata, previous output.InternalEvent /*TODO review unused parameter*/, callback protocols.OutputEventCallback) error {
|
||||
instance, err := request.options.Browser.NewInstance()
|
||||
if err != nil {
|
||||
request.options.Output.Request(request.options.TemplateID, input, "headless", err)
|
||||
request.options.Output.Request(request.options.TemplatePath, input, "headless", err)
|
||||
request.options.Progress.IncrementFailedRequestsBy(1)
|
||||
return errors.Wrap(err, "could get html element")
|
||||
}
|
||||
|
@ -28,19 +28,19 @@ func (request *Request) ExecuteWithResults(input string, metadata, previous outp
|
|||
|
||||
parsed, err := url.Parse(input)
|
||||
if err != nil {
|
||||
request.options.Output.Request(request.options.TemplateID, input, "headless", err)
|
||||
request.options.Output.Request(request.options.TemplatePath, input, "headless", err)
|
||||
request.options.Progress.IncrementFailedRequestsBy(1)
|
||||
return errors.Wrap(err, "could get html element")
|
||||
}
|
||||
out, page, err := instance.Run(parsed, request.Steps, time.Duration(request.options.Options.PageTimeout)*time.Second)
|
||||
if err != nil {
|
||||
request.options.Output.Request(request.options.TemplateID, input, "headless", err)
|
||||
request.options.Output.Request(request.options.TemplatePath, input, "headless", err)
|
||||
request.options.Progress.IncrementFailedRequestsBy(1)
|
||||
return errors.Wrap(err, "could get html element")
|
||||
}
|
||||
defer page.Close()
|
||||
|
||||
request.options.Output.Request(request.options.TemplateID, input, "headless", nil)
|
||||
request.options.Output.Request(request.options.TemplatePath, input, "headless", nil)
|
||||
request.options.Progress.IncrementRequests()
|
||||
gologger.Verbose().Msgf("Sent Headless request to %s", input)
|
||||
|
||||
|
|
|
@ -356,7 +356,7 @@ func (request *Request) executeRequest(reqURL string, generatedRequest *generate
|
|||
_, _ = io.CopyN(ioutil.Discard, resp.Body, drainReqSize)
|
||||
resp.Body.Close()
|
||||
}
|
||||
request.options.Output.Request(request.options.TemplateID, formedURL, "http", err)
|
||||
request.options.Output.Request(request.options.TemplatePath, formedURL, "http", err)
|
||||
request.options.Progress.IncrementErrorsBy(1)
|
||||
|
||||
// If we have interactsh markers and request times out, still send
|
||||
|
@ -394,7 +394,7 @@ func (request *Request) executeRequest(reqURL string, generatedRequest *generate
|
|||
}
|
||||
|
||||
gologger.Verbose().Msgf("[%s] Sent HTTP request to %s", request.options.TemplateID, formedURL)
|
||||
request.options.Output.Request(request.options.TemplateID, formedURL, "http", err)
|
||||
request.options.Output.Request(request.options.TemplatePath, formedURL, "http", err)
|
||||
|
||||
duration := time.Since(timeStart)
|
||||
|
||||
|
|
|
@ -36,7 +36,7 @@ func (request *Request) ExecuteWithResults(input string, metadata /*TODO review
|
|||
address, err = getAddress(input)
|
||||
}
|
||||
if err != nil {
|
||||
request.options.Output.Request(request.options.TemplateID, input, "network", err)
|
||||
request.options.Output.Request(request.options.TemplatePath, input, "network", err)
|
||||
request.options.Progress.IncrementFailedRequestsBy(1)
|
||||
return errors.Wrap(err, "could not get address from url")
|
||||
}
|
||||
|
@ -65,7 +65,7 @@ func (request *Request) ExecuteWithResults(input string, metadata /*TODO review
|
|||
func (request *Request) executeAddress(actualAddress, address, input string, shouldUseTLS bool, previous output.InternalEvent, callback protocols.OutputEventCallback) error {
|
||||
if !strings.Contains(actualAddress, ":") {
|
||||
err := errors.New("no port provided in network protocol request")
|
||||
request.options.Output.Request(request.options.TemplateID, address, "network", err)
|
||||
request.options.Output.Request(request.options.TemplatePath, address, "network", err)
|
||||
request.options.Progress.IncrementFailedRequestsBy(1)
|
||||
return err
|
||||
}
|
||||
|
@ -113,7 +113,7 @@ func (request *Request) executeRequestWithPayloads(actualAddress, address, input
|
|||
conn, err = request.dialer.Dial(context.Background(), "tcp", actualAddress)
|
||||
}
|
||||
if err != nil {
|
||||
request.options.Output.Request(request.options.TemplateID, address, "network", err)
|
||||
request.options.Output.Request(request.options.TemplatePath, address, "network", err)
|
||||
request.options.Progress.IncrementFailedRequestsBy(1)
|
||||
return errors.Wrap(err, "could not connect to server request")
|
||||
}
|
||||
|
@ -143,7 +143,7 @@ func (request *Request) executeRequestWithPayloads(actualAddress, address, input
|
|||
data = []byte(input.Data)
|
||||
}
|
||||
if err != nil {
|
||||
request.options.Output.Request(request.options.TemplateID, address, "network", err)
|
||||
request.options.Output.Request(request.options.TemplatePath, address, "network", err)
|
||||
request.options.Progress.IncrementFailedRequestsBy(1)
|
||||
return errors.Wrap(err, "could not write request to server")
|
||||
}
|
||||
|
@ -151,7 +151,7 @@ func (request *Request) executeRequestWithPayloads(actualAddress, address, input
|
|||
|
||||
finalData, dataErr := expressions.EvaluateByte(data, payloads)
|
||||
if dataErr != nil {
|
||||
request.options.Output.Request(request.options.TemplateID, address, "network", dataErr)
|
||||
request.options.Output.Request(request.options.TemplatePath, address, "network", dataErr)
|
||||
request.options.Progress.IncrementFailedRequestsBy(1)
|
||||
return errors.Wrap(dataErr, "could not evaluate template expressions")
|
||||
}
|
||||
|
@ -162,7 +162,7 @@ func (request *Request) executeRequestWithPayloads(actualAddress, address, input
|
|||
return nil
|
||||
}
|
||||
if _, err := conn.Write(finalData); err != nil {
|
||||
request.options.Output.Request(request.options.TemplateID, address, "network", err)
|
||||
request.options.Output.Request(request.options.TemplatePath, address, "network", err)
|
||||
request.options.Progress.IncrementFailedRequestsBy(1)
|
||||
return errors.Wrap(err, "could not write request to server")
|
||||
}
|
||||
|
@ -194,7 +194,7 @@ func (request *Request) executeRequestWithPayloads(actualAddress, address, input
|
|||
gologger.Print().Msgf("%s\nHex: %s", requestOutput, hex.EncodeToString([]byte(requestOutput)))
|
||||
}
|
||||
|
||||
request.options.Output.Request(request.options.TemplateID, actualAddress, "network", err)
|
||||
request.options.Output.Request(request.options.TemplatePath, actualAddress, "network", err)
|
||||
gologger.Verbose().Msgf("Sent TCP request to %s", actualAddress)
|
||||
|
||||
bufferSize := 1024
|
||||
|
@ -225,7 +225,7 @@ func (request *Request) executeRequestWithPayloads(actualAddress, address, input
|
|||
buf := make([]byte, bufferSize)
|
||||
nBuf, err := conn.Read(buf)
|
||||
if err != nil && !os.IsTimeout(err) {
|
||||
request.options.Output.Request(request.options.TemplateID, address, "network", err)
|
||||
request.options.Output.Request(request.options.TemplatePath, address, "network", err)
|
||||
closeTimer(readInterval)
|
||||
return errors.Wrap(err, "could not read from server")
|
||||
}
|
||||
|
@ -238,7 +238,7 @@ func (request *Request) executeRequestWithPayloads(actualAddress, address, input
|
|||
final = make([]byte, bufferSize)
|
||||
n, err = conn.Read(final)
|
||||
if err != nil && err != io.EOF {
|
||||
request.options.Output.Request(request.options.TemplateID, address, "network", err)
|
||||
request.options.Output.Request(request.options.TemplatePath, address, "network", err)
|
||||
return errors.Wrap(err, "could not read from server")
|
||||
}
|
||||
responseBuilder.Write(final[:n])
|
||||
|
|
|
@ -91,7 +91,7 @@ func (request *Request) ExecuteWithResults(input string, metadata /*TODO review
|
|||
})
|
||||
wg.Wait()
|
||||
if err != nil {
|
||||
request.options.Output.Request(request.options.TemplateID, input, "file", err)
|
||||
request.options.Output.Request(request.options.TemplatePath, input, "file", err)
|
||||
request.options.Progress.IncrementFailedRequestsBy(1)
|
||||
return errors.Wrap(err, "could not send file request")
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue