fuzz_endpoint
Fuzz captured HTTP requests by replacing a placeholder with payloads and comparing responses to a baseline, flagging anomalies such as unexpected status codes, response length changes, and latency spikes.
Instructions
Fuzz a captured HTTP request by injecting payloads and detecting anomalies.
REQUIRES: approved=true (human must approve high-volume fuzzing). PREREQUISITE: Get flow_id from a captured request that contains the target_pattern string.
HOW IT WORKS:
Takes the captured request and replaces target_pattern with each payload
Sends all modified requests (concurrently for speed)
Measures a baseline from the original request
Flags anomalies: unexpected status codes, unusual response lengths, latency spikes, error keywords
SETUP: Insert "FUZZ" into the target field before capturing:
For URL parameter fuzzing: browser_go("https://target.com/api?id=FUZZ")
For body fuzzing: use replay_flow with replacements first to insert FUZZ, then fuzz
Args: flow_id: The base flow to fuzz. Its URL/headers/body MUST contain the target_pattern string. payloads: List of strings to inject. Example: ["' OR 1=1--", "alert(1)", "../../../etc/passwd"] target_pattern: The placeholder string to replace with each payload (default: "FUZZ") concurrency: Number of simultaneous requests (default 5). Higher = faster but more aggressive. approved: MUST be true. Set this ONLY after the human user has explicitly approved this action.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| flow_id | Yes | ||
| approved | No | ||
| payloads | Yes | ||
| concurrency | No | ||
| target_pattern | No | FUZZ |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |