Skip to content

Commit a9718d3

Browse files
set headers for fuzzing request (#5988)
Co-authored-by: sandeep <[email protected]>
1 parent 1874d5b commit a9718d3

File tree

1 file changed

+8
-0
lines changed

1 file changed

+8
-0
lines changed

pkg/protocols/http/request_fuzz.go

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,7 @@ func (request *Request) executeFuzzingRule(input *contextargs.Context, previous
6262
if err != nil {
6363
return errors.Wrap(err, "fuzz: could not build request obtained from target file")
6464
}
65+
request.addHeadersToRequest(baseRequest)
6566
input.MetaInput.Input = baseRequest.URL.String()
6667
// execute with one value first to checks its applicability
6768
err = request.executeAllFuzzingRules(input, previous, baseRequest, callback)
@@ -94,6 +95,7 @@ func (request *Request) executeFuzzingRule(input *contextargs.Context, previous
9495
}
9596
userAgent := useragent.PickRandom()
9697
baseRequest.Header.Set("User-Agent", userAgent.Raw)
98+
request.addHeadersToRequest(baseRequest)
9799

98100
// execute with one value first to checks its applicability
99101
err = request.executeAllFuzzingRules(inputx, previous, baseRequest, callback)
@@ -112,6 +114,12 @@ func (request *Request) executeFuzzingRule(input *contextargs.Context, previous
112114
return nil
113115
}
114116

117+
func (request *Request) addHeadersToRequest(baseRequest *retryablehttp.Request) {
118+
for k, v := range request.Headers {
119+
baseRequest.Header.Set(k, v)
120+
}
121+
}
122+
115123
// executeAllFuzzingRules executes all fuzzing rules defined in template for a given base request
116124
func (request *Request) executeAllFuzzingRules(input *contextargs.Context, values map[string]interface{}, baseRequest *retryablehttp.Request, callback protocols.OutputEventCallback) error {
117125
applicable := false

0 commit comments

Comments
 (0)