session_fixation

package
v0.5.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 3, 2026 License: MIT Imports: 11 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ModuleID    = "session-fixation"
	ModuleName  = "Session Fixation (permissive session)"
	ModuleShort = "Detects a permissive session mechanism that adopts an attacker-supplied session ID"
)

Variables

View Source
var (
	ModuleDesc = `` /* 513-byte string literal not displayed */

	ModuleConfirmation = "" /* 179-byte string literal not displayed */
	ModuleSeverity     = severity.Medium
	ModuleConfidence   = severity.Firm
	ModuleTags         = []string{"session", "auth", "session-fixation", "moderate"}
)

Functions

This section is empty.

Types

type Module

type Module struct {
	modkit.BaseActiveModule
	// contains filtered or unexported fields
}

Module implements the Session Fixation active scanner.

func New

func New() *Module

New creates a new Session Fixation module.

func (*Module) ScanPerRequest

func (m *Module) ScanPerRequest(
	ctx *httpmsg.HttpRequestResponse,
	httpClient *http.Requester,
	scanCtx *modkit.ScanContext,
) ([]*output.ResultEvent, error)

ScanPerRequest tests whether the host explicitly adopts an attacker-chosen session value. Silence is not adoption: a server may ignore an unknown cookie and serve an anonymous response without issuing a replacement. We therefore require the server to Set-Cookie the exact supplied value on two independent probes. This is a candidate unless the observed request is itself a successful authentication transition, in which case preservation through login confirms the fixation condition.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL