skipfish
Outil actif de reconnaissance de sécurité des applications web. Effectue un crawling et un fuzzing à haute vitesse pour détecter XSS, injection SQL, traversée de chemin, inclusion de fichiers, et d'autres vulnérabilités web. Active web application security reconnaissance tool. Performs high-speed crawling and fuzzing to detect XSS, SQL injection, path traversal, file includes, and other web vulnerabilities.
↗ https://gitlab.com/kalilinux/packages/skipfishOverview
skipfish is a Google-developed web application security scanner that performs recursive crawling and dictionary-based fuzzing at very high speed. It detects common web vulnerabilities and produces HTML reports. While development has slowed, it’s still effective for quick web security assessments.
Basic Usage
Basic scan with output directory
skipfish -o output/ https://example.com
With authentication cookie
skipfish -o output/ -I example.com -C "session=abc123" https://example.com/
Exclude specific paths
skipfish -o output/ -X /logout -X /delete https://example.com/
Rate limiting (requests per second)
skipfish -o output/ -l 50 https://example.com/
Wordlist Configuration
Use built-in wordlist (default)
skipfish -o output/ https://example.com/
Custom wordlist
skipfish -o output/ -W wordlist.wl https://example.com/
Add additional keywords
skipfish -o output/ -w /usr/share/skipfish/dictionaries/complete.wl https://example.com/
Authentication
Cookie-based authentication
skipfish -o output/ -C "PHPSESSID=abc123; logged_in=1" https://example.com/
HTTP Basic Auth
skipfish -o output/ -A user:password https://example.com/
Form-based login (set cookies after manual login) 1. Log in manually, capture session cookie 2. Pass cookie to skipfish
skipfish -o output/ -C "session=TOKEN" https://example.com/
Scan Scope Control
Limit to specific path
skipfish -o output/ -I example.com/app/ https://example.com/app/
Exclude paths (logout, delete operations)
skipfish -o output/ -X /logout -X /account/delete https://example.com/
Follow external links to same domain only
skipfish -o output/ -g https://example.com/
Depth limit
skipfish -o output/ -m 3 https://example.com/
Performance
Set request rate (req/sec)
skipfish -o output/ -l 100 https://example.com/
Set timeout per request (ms)
skipfish -o output/ -t 5000 https://example.com/
Number of concurrent requests
skipfish -o output/ -r 100 https://example.com/
Viewing Results
Results are saved as HTML report Open in browser:
firefox output/index.html
# Or generate report after scan
# Report shows:
# - Findings by severity (high/medium/low/info)
# - URL tree of discovered content
# - Response signatures
Common Findings
High severity:
- SQL injection
- XSS (reflected/stored)
- File path traversal
- Remote code execution indicators
Medium severity:
- Information disclosure
- Insecure form handling
- Missing security headers
Low/Info:
- Directory listing
- Error messages with stack traces
- Robots.txt findings
Tips
- Use
-X /logoutto avoid being logged out during the scan - skipfish is fast but can miss vulnerabilities that require complex auth flows
- Combine with manual testing and OWASP ZAP for better coverage
- The
-Iflag restricts crawling to the specified domain/path — important for authorized scope
Help / Man page
skipfish [options] -o output_dir start_url
-o DIR Output directory (required)
-W FILE Wordlist file
-C COOKIE Add cookie header
-A USER:PASS HTTP Basic Auth
-I SCOPE Crawl only URLs with this prefix
-X PATH Exclude this path
-l N Request rate limit (req/sec)
-m DEPTH Maximum crawl depth
-t MS Request timeout (milliseconds)
-r N Max concurrent requests
-g Don't follow external links
-q Quiet mode
Vue d’ensemble
skipfish est un scanner de sécurité d’applications web développé par Google qui effectue un crawling récursif et un fuzzing basé sur dictionnaire à très haute vitesse. Il détecte les vulnérabilités web courantes et produit des rapports HTML. Bien que son développement ait ralenti, il reste efficace pour des évaluations web rapides.
Utilisation de base
# Scan de base avec répertoire de sortie
skipfish -o output/ https://example.com
# Avec cookie d'authentification
skipfish -o output/ -I example.com -C "session=abc123" https://example.com/
# Exclure des chemins spécifiques
skipfish -o output/ -X /logout -X /delete https://example.com/
# Limitation de débit (requêtes par seconde)
skipfish -o output/ -l 50 https://example.com/
Configuration de la wordlist
# Utiliser la wordlist intégrée (par défaut)
skipfish -o output/ https://example.com/
# Wordlist personnalisée
skipfish -o output/ -W wordlist.wl https://example.com/
# Ajouter des mots-clés supplémentaires
skipfish -o output/ -w /usr/share/skipfish/dictionaries/complete.wl https://example.com/
Authentification
# Authentification par cookie
skipfish -o output/ -C "PHPSESSID=abc123; logged_in=1" https://example.com/
# HTTP Basic Auth
skipfish -o output/ -A user:password https://example.com/
# Connexion par formulaire (définir les cookies après une connexion manuelle) : 1. se connecter manuellement, capturer le cookie de session 2. passer le cookie à skipfish
skipfish -o output/ -C "session=TOKEN" https://example.com/
Contrôle du périmètre de scan
# Limiter à un chemin spécifique
skipfish -o output/ -I example.com/app/ https://example.com/app/
# Exclure des chemins (déconnexion, opérations de suppression)
skipfish -o output/ -X /logout -X /account/delete https://example.com/
# Ne suivre les liens externes que vers le même domaine
skipfish -o output/ -g https://example.com/
# Limite de profondeur
skipfish -o output/ -m 3 https://example.com/
Performance
# Définir le débit de requêtes (req/sec)
skipfish -o output/ -l 100 https://example.com/
# Définir le timeout par requête (ms)
skipfish -o output/ -t 5000 https://example.com/
# Nombre de requêtes concurrentes
skipfish -o output/ -r 100 https://example.com/
Consulter les résultats
# Les résultats sont sauvegardés en rapport HTML. Ouvrir dans un navigateur :
firefox output/index.html
# Ou générer le rapport après le scan
# Le rapport montre :
# - Résultats par sévérité (high/medium/low/info)
# - Arborescence des URL découvertes
# - Signatures de réponse
Résultats courants
Sévérité haute :
- Injection SQL
- XSS (réfléchie/stockée)
- Traversée de chemin de fichier
- Indicateurs d'exécution de code distant
Sévérité moyenne :
- Divulgation d'informations
- Gestion de formulaire non sécurisée
- En-têtes de sécurité manquants
Basse/Info :
- Listing de répertoire
- Messages d'erreur avec stack traces
- Résultats de Robots.txt
Conseils
- Utiliser
-X /logoutpour éviter d’être déconnecté pendant le scan - skipfish est rapide mais peut manquer des vulnérabilités nécessitant des flux d’authentification complexes
- Combiner avec des tests manuels et OWASP ZAP pour une meilleure couverture
- Le flag
-Irestreint le crawling au domaine/chemin spécifié : important pour respecter le périmètre autorisé
Aide / Page de manuel
skipfish [options] -o output_dir start_url
-o DIR Output directory (required)
-W FILE Wordlist file
-C COOKIE Add cookie header
-A USER:PASS HTTP Basic Auth
-I SCOPE Crawl only URLs with this prefix
-X PATH Exclude this path
-l N Request rate limit (req/sec)
-m DEPTH Maximum crawl depth
-t MS Request timeout (milliseconds)
-r N Max concurrent requests
-g Don't follow external links
-q Quiet mode