httpfuzz
httpfuzz copied to clipboard
Extra \r\n\r\n added before body
httpfuzz adds an extra \r\n\r\n before the body of a request.
I believe this is because function RequestFromFile() includes the \n\n or \r\n\r\n sequence that was read from the --seed-request file in req.Body. Then when the request is sent, the http lib adds another \r\n\r\n before this body.
A quick fix would look like:
diff --git a/parser.go b/parser.go
index ae7b290..41ce2d5 100644
--- a/parser.go
+++ b/parser.go
@@ -51,7 +51,11 @@ func RequestFromFile(filename string) (*Request, error) {
bodyOffset = bytes.Index(diskRequestBytes, []byte("\r\n\r\n"))
if bodyOffset == -1 {
return nil, fmt.Errorf("invalid HTTP request provided")
+ } else {
+ bodyOffset += 4
}
+ } else {
+ bodyOffset += 2
}
diskBodyBytes := diskRequestBytes[bodyOffset:]
Thanks for this report. I'm gonna check it out a bit more. I made a branch with your suggested fix so I'll test and get back to this