Documentation
¶
Index ¶
Constants ¶
View Source
const ( ModuleID = "cache-poisoned-dos" ModuleName = "Cache-Poisoned Denial of Service (CPDoS)" ModuleShort = "Detects CPDoS where a shared cache stores an origin error response and replays it to other users" )
Variables ¶
Functions ¶
This section is empty.
Types ¶
type Module ¶
type Module struct {
modkit.BaseActiveModule
// contains filtered or unexported fields
}
Module implements the Cache-Poisoned Denial of Service active scanner.
func (*Module) CanProcess ¶
func (m *Module) CanProcess(ctx *httpmsg.HttpRequestResponse) bool
CanProcess restricts CPDoS to GET requests — cache-poisoned errors only matter for cacheable GET resources — layered on the base media/method eligibility checks.
func (*Module) ScanPerRequest ¶
func (m *Module) ScanPerRequest( ctx *httpmsg.HttpRequestResponse, httpClient *http.Requester, scanCtx *modkit.ScanContext, ) ([]*output.ResultEvent, error)
ScanPerRequest tests the endpoint for CPDoS via cacheable origin errors (HMO/HHO).
Click to show internal directories.
Click to hide internal directories.