api-mitmproxy
Interactive HTTPS proxy for API security testing with traffic interception, modification, and replay capabilities. Supports HTTP/1, HTTP/2, HTTP/3, WebSockets,…
Fast web fuzzer for DAST testing with directory enumeration, parameter fuzzing, and virtual host discovery. Written in Go for high-performance HTTP fuzzing with extensive filtering capabilities. Supports multiple fuzzing modes (clusterbomb, pitchfork, sniper) and recursive
$ npx -y skills add AgentSecOps/SecOpsAgentKit --skill dast-ffuf --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/dast-ffufContext preview
The summary Claude sees to decide when to auto-load this skill.
Fast web fuzzer for DAST testing with directory enumeration, parameter fuzzing, and virtual host discovery. Written in Go for high-performance HTTP fuzzing with extensive filtering capabilities. Supports multiple fuzzing modes (clusterbomb, pitchfork, sniper) and recursive
name: dast-ffuf description: > Fast web fuzzer for DAST testing with directory enumeration, parameter fuzzing, and virtual host discovery. Written in Go for high-performance HTTP fuzzing with extensive filtering capabilities. Supports multiple fuzzing modes (clusterbomb, pitchfork, sniper) and recursive scanning. Use when: (1) Discovering hidden directories, files, and endpoints on web applications, (2) Fuzzing GET and POST parameters to identify injection vulnerabilities, (3) Enumerating virtual hosts and subdomains, (4) Testing authentication endpoints with credential fuzzing, (5) Finding backup files and sensitive data exposures, (6) Performing comprehensive web application reconnaissance. version: 0.1.0 maintainer: SirAppSec category: appsec tags: [dast, fuzzing, web-fuzzer, directory-enumeration, parameter-fuzzing, vhost-discovery, ffuf, reconnaissance] frameworks: [OWASP] dependencies: tools: [ffuf] references: - https://github.com/ffuf/ffuf
ffuf is a fast web fuzzer written in Go designed for discovering hidden resources, testing parameters, and performing comprehensive web application reconnaissance. It uses the FUZZ keyword as a placeholder for wordlist entries and supports advanced filtering, multiple fuzzing modes, and recursive scanning for thorough security assessments.
# Using Go go install github.com/ffuf/ffuf/v2@latest # Using package managers # Debian/Ubuntu apt install ffuf # macOS brew install ffuf # Or download pre-compiled binary from GitHub releases
Basic directory fuzzing:
# Directory discovery ffuf -u https://example.com/FUZZ -w /usr/share/wordlists/dirb/common.txt # File discovery with extension ffuf -u https://example.com/FUZZ -w wordlist.txt -e .php,.html,.txt # Virtual host discovery ffuf -u https://example.com -H "Host: FUZZ.example.com" -w subdomains.txt
For discovering hidden resources on web applications:
1. Start with common directory wordlist:
ffuf -u https://target.com/FUZZ \
-w /usr/share/seclists/Discovery/Web-Content/common.txt \
-mc 200,204,301,302,307,401,403 \
-o results.json2. Review discovered directories (focus on 200, 403 status codes) 3. Enumerate files in discovered directories:
ffuf -u https://target.com/admin/FUZZ \
-w /usr/share/seclists/Discovery/Web-Content/raft-small-files.txt \
-e .php,.bak,.txt,.zip \
-mc all -fc 4044. Use recursive mode for deep enumeration:
ffuf -u https://target.com/FUZZ \
-w wordlist.txt \
-recursion -recursion-depth 2 \
-e .php,.html \
-v5. Document findings and test discovered endpoints
Progress: [ ] 1. Identify target endpoint for parameter testing [ ] 2. Fuzz GET parameter names to discover hidden parameters [ ] 3. Fuzz parameter values for injection vulnerabilities [ ] 4. Test POST parameters with JSON/form data [ ] 5. Apply appropriate filters to reduce false positives [ ] 6. Analyze responses for anomalies and vulnerabilities [ ] 7. Validate findings manually [ ] 8. Document vulnerable parameters and payloads
Work through each step systematically. Check off completed items.
**GET Parameter Name Fuzzing:**
ffuf -u https://target.com/api?FUZZ=test \ -w /usr/share/seclists/Discovery/Web-Content/burp-parameter-names.txt \ -fs 0 # Filter out empty responses
**GET Parameter Value Fuzzing:**
ffuf -u https://target.com/api?id=FUZZ \ -w payloads.txt \ -mc all
**POST Data Fuzzing:**
# Form data
ffuf -u https://target.com/login \
-X POST \
-d "username=admin&password=FUZZ" \
-w passwords.txt \
-H "Content-Type: application/x-www-form-urlencoded"
# JSON data
ffuf -u https://target.com/api/login \
-X POST \
-d '{"username":"admin","password":"FUZZ"}' \
-w passwords.txt \
-H "Content-Type: application/json"For identifying virtual hosts and subdomains:
1. Prepare subdomain wordlist (or use SecLists) 2. Run vhost fuzzing:
ffuf -u https://target.com \
-H "Host: FUZZ.target.com" \
-w /usr/share/seclists/Discovery/DNS/subdomains-top1million-5000.txt \
-fs 0 # Filter by response size to identify valid vhosts3. Filter results by comparing response sizes/words 4. Verify discovered vhosts manually 5. Enumerate directories on each vhost 6. Document vhost configurations and exposed services
For testing login forms and authentication mechanisms:
1. Identify authentication endpoint 2. Fuzz usernames:
ffuf -u https://target.com/login \
-X POST \
-d "username=FUZZ&password=test123" \
-w usernames.txt \
-H "Content-Type: application/x-www-form-urlencoded" \
-mr "Invalid password|Incorrect password" # Match responses indicating valid user3. For identified users, fuzz passwords:
ffuf -u https://target.com/login \
-X POST \
-d "username=admin&password=FUZZ" \
-w /usr/share/seclists/Passwords/Common-Credentials/10-million-password-list-top-1000.txt \
-H "Content-Type: application/x-www-form-urlencoded" \
-fc 401,403 # Filter failed attempts4. Use clusterbomb mode for combined username/password fuzzing:
ffuf -u https://target.com/login \
-X POST \
-d "username=FUZZ1&password=FUZZ2" \
-w usernames.txt:FUZZ1 \
-w passwords.txt:FUZZ2 \
-mode clusterbombFor finding exposed backup files and sensitive data:
1. Create wordlist of common backup patterns 2. Fuzz for backup files:
ffuf -u https://target.com/FUZZ \
-w backup-files.txt \
-e .bak,.backup,.old,.zip,.tar.gzAn assortment of security operations skills for AI coding agents. A collaborative approach to shift-left security using Claude Code skills.
Interactive HTTPS proxy for API security testing with traffic interception, modification, and replay capabilities. Supports HTTP/1, HTTP/2, HTTP/3, WebSockets,…
API specification linting and security validation using Stoplight's Spectral with support for OpenAPI, AsyncAPI, and Arazzo specifications. Validates API…
Fast, template-based vulnerability scanning using ProjectDiscovery's Nuclei with extensive community templates covering CVEs, OWASP Top 10, misconfigurations,…
Dynamic application security testing (DAST) using OWASP ZAP (Zed Attack Proxy) with passive and active scanning, API testing, and OWASP Top 10 vulnerability…
Python security vulnerability detection using Bandit SAST with CWE and OWASP mapping. Use when: (1) Scanning Python code for security vulnerabilities and…
Static application security testing (SAST) using Semgrep for vulnerability detection, security code review, and secure coding guidance with OWASP and CWE…