mirror of
https://github.com/mariocandela/beelzebub.git
synced 2025-07-01 18:47:26 -04:00
* Changed Event struct, field headers from string to map[string][]string * Add integration test for http Headers
This commit is contained in:
@ -67,8 +67,11 @@ func (suite *IntegrationTestSuite) TestInvokeHTTPHoneypot() {
|
|||||||
response, err := resty.New().R().
|
response, err := resty.New().R().
|
||||||
Get(suite.httpHoneypotHost + "/index.php")
|
Get(suite.httpHoneypotHost + "/index.php")
|
||||||
|
|
||||||
|
response.Header().Del("Date")
|
||||||
|
|
||||||
suite.Require().NoError(err)
|
suite.Require().NoError(err)
|
||||||
suite.Equal(http.StatusOK, response.StatusCode())
|
suite.Equal(http.StatusOK, response.StatusCode())
|
||||||
|
suite.Equal(http.Header{"Content-Length": []string{"15"}, "Content-Type": []string{"text/html"}, "Server": []string{"Apache/2.4.53 (Debian)"}, "X-Powered-By": []string{"PHP/7.4.29"}}, response.Header())
|
||||||
suite.Equal("mocked response", string(response.Body()))
|
suite.Equal("mocked response", string(response.Body()))
|
||||||
|
|
||||||
response, err = resty.New().R().
|
response, err = resty.New().R().
|
||||||
|
@ -117,7 +117,7 @@ func traceRequest(request *http.Request, tr tracer.Tracer, HoneypotDescription s
|
|||||||
HostHTTPRequest: request.Host,
|
HostHTTPRequest: request.Host,
|
||||||
UserAgent: request.UserAgent(),
|
UserAgent: request.UserAgent(),
|
||||||
Cookies: mapCookiesToString(request.Cookies()),
|
Cookies: mapCookiesToString(request.Cookies()),
|
||||||
Headers: mapHeaderToString(request.Header),
|
Headers: request.Header,
|
||||||
Status: tracer.Stateless.String(),
|
Status: tracer.Stateless.String(),
|
||||||
RemoteAddr: request.RemoteAddr,
|
RemoteAddr: request.RemoteAddr,
|
||||||
SourceIp: host,
|
SourceIp: host,
|
||||||
@ -133,18 +133,6 @@ func traceRequest(request *http.Request, tr tracer.Tracer, HoneypotDescription s
|
|||||||
tr.TraceEvent(event)
|
tr.TraceEvent(event)
|
||||||
}
|
}
|
||||||
|
|
||||||
func mapHeaderToString(headers http.Header) string {
|
|
||||||
headersString := ""
|
|
||||||
|
|
||||||
for key := range headers {
|
|
||||||
for _, values := range headers[key] {
|
|
||||||
headersString += fmt.Sprintf("[Key: %s, values: %s],", key, values)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return headersString
|
|
||||||
}
|
|
||||||
|
|
||||||
func mapCookiesToString(cookies []*http.Cookie) string {
|
func mapCookiesToString(cookies []*http.Cookie) string {
|
||||||
cookiesString := ""
|
cookiesString := ""
|
||||||
|
|
||||||
|
@ -27,7 +27,7 @@ type Event struct {
|
|||||||
User string
|
User string
|
||||||
Password string
|
Password string
|
||||||
Client string
|
Client string
|
||||||
Headers string
|
Headers map[string][]string
|
||||||
Cookies string
|
Cookies string
|
||||||
UserAgent string
|
UserAgent string
|
||||||
HostHTTPRequest string
|
HostHTTPRequest string
|
||||||
|
Reference in New Issue
Block a user