Documentation
¶
Index ¶
Constants ¶
View Source
const ( ModuleID = "response-header-injection" ModuleName = "HTTP Response Header Injection" ModuleShort = "Detects HTTP response header injection via CRLF in parameters" )
Variables ¶
View Source
var ( ModuleDesc = `` /* 619-byte string literal not displayed */ ModuleConfirmation = "Confirmed when an injected canary value with CRLF sequences appears as a new header line in the HTTP response" ModuleSeverity = severity.Medium ModuleConfidence = severity.Certain ModuleTags = []string{"crlf", "injection", "header", "response-splitting", "moderate"} )
Functions ¶
This section is empty.
Types ¶
type Module ¶
type Module struct {
modkit.BaseActiveModule
// contains filtered or unexported fields
}
func (*Module) ConfirmsResultByBodyDifferential ¶ added in v0.5.3
func (m *Module) ConfirmsResultByBodyDifferential(result *output.ResultEvent) bool
ConfirmsResultByBodyDifferential opts results into the executor's body-differential re-confirmation, except those of the Set-Cookie techniques: the differential strips Set-Cookie lines as per-request noise, so an injected cookie never counts as introduced content and a real finding would be dropped. The X-Injected header and body-break techniques leave the canary on a line the differential keeps.
func (*Module) ScanPerInsertionPoint ¶
func (m *Module) ScanPerInsertionPoint( ctx *httpmsg.HttpRequestResponse, ip httpmsg.InsertionPoint, httpClient *http.Requester, scanCtx *modkit.ScanContext, ) ([]*output.ResultEvent, error)
Click to show internal directories.
Click to hide internal directories.