Overview
This plugin detects when payloads appear in the response HTML (reflection). While not proof of XSS, reflection is often a precursor to exploitation—it shows that input is not properly sanitized.Reflection vs Execution
| Detection | Confidence | What It Proves |
|---|---|---|
| Reflection | Medium | Payload appears in HTML |
| Execution (XSS) | High | JavaScript actually ran |
- Reflection catches more potential issues
- Execution confirms exploitability
Installation
Configuration
Options
| Option | Type | Default | Description |
|---|---|---|---|
enabled | boolean | true | Enable reflection detection |
minPayloadLength | number | 4 | Skip payloads shorter than this |
detectBody | boolean | true | Detect reflection in HTML body |
detectScript | boolean | true | Detect reflection in script context |
detectAttribute | boolean | true | Detect reflection in attributes |
bodySeverity | string | "low" | Severity for body reflection |
scriptSeverity | string | "medium" | Severity for script reflection |
attributeSeverity | string | "medium" | Severity for attribute reflection |
dangerousPatterns | string[] | See below | Patterns that increase severity |
Default Dangerous Patterns
Context Detection
The plugin analyzes where the reflection occurs:Body Context
Script Context
Attribute Context
Example Findings
Body Reflection
Script Reflection with Dangerous Pattern
Reducing False Positives
Minimum Payload Length
Short payloads like1 or test may appear naturally in the page:
