Aide-mémoire Nikto
Référence complète du scanner de serveurs web
6 700+ vérifications de vulnérabilités • Mauvaises configurations • Logiciels obsolètes
Qu'est-ce que Nikto ?
Nikto est un scanner de serveurs web open-source qui effectue des tests complets sur les serveurs web pour de multiples éléments, incluant plus de 6 700 fichiers/programmes potentiellement dangereux, des versions obsolètes de plus de 1 250 serveurs, et des problèmes spécifiques aux versions.
Nikto est préinstallé sur Kali Linux. Source sur github.com/sullo/nikto.
📦 Installation
Kali Linux
sudo apt install nikto
Depuis Git
git clone https://github.com/sullo/nikto
cd nikto/program && perl nikto.pl
Mise à jour de la base
nikto -update
🎯 Utilisation de base
# Scan basiquenikto -h http://<target># Scanner un port spécifiquenikto -h <target> -p 8080# Scanner plusieurs portsnikto -h <target> -p 80,443,8080,8443# Cible HTTPSnikto -h https://<target># Scanner avec SSLnikto -h <target> -p 443 -ssl# Scanner depuis un fichiernikto -h hosts.txt# Sauvegarder la sortienikto -h http://<target> -o results.txt
⚙️ Options principales
| Option | Description |
|---|---|
| -h HOST | Hôte cible (IP, nom d'hôte ou URL) |
| -p PORT | Port(s) à scanner |
| -ssl | Forcer le mode SSL |
| -nossl | Désactiver SSL |
| -root PATH | Préfixer toutes les requêtes avec cette valeur |
| -id USER:PASS | Authentification HTTP |
| -vhost HOSTNAME | Hôte virtuel à scanner |
| -timeout SECONDS | Timeout des requêtes (défaut 10) |
| -Pause SECONDS | Délai entre les tests |
🎛️ Options de réglage (-Tuning)
Contrôlez les tests à exécuter avec -Tuning suivi des codes de test :
| Code | Type de test |
|---|---|
| 0 | Upload de fichiers |
| 1 | Fichier intéressant / Vu dans les logs |
| 2 | Mauvaise configuration / Fichier par défaut |
| 3 | Divulgation d'informations |
| 4 | Injection (XSS/Script/HTML) |
| 5 | Récupération de fichier distant (dans le web root) |
| 6 | Déni de service |
| 7 | Récupération de fichier distant (tout le serveur) |
| 8 | Exécution de commande / Shell distant |
| 9 | Injection SQL |
| a | Contournement d'authentification |
| b | Identification de logiciel |
| c | Inclusion de source distante |
| x | Tuning inversé (exclure ces tests) |
# Exécuter uniquement les tests SQL injection et XSSnikto -h http://<target> -Tuning 49# Tout exécuter sauf les tests DoSnikto -h http://<target> -Tuning x6# Uniquement mauvaise config et divulgation d'infosnikto -h http://<target> -Tuning 23
📄 Options de sortie
| Option | Description |
|---|---|
| -o FILE | Fichier de sortie |
| -Format FORMAT | Format de sortie (csv, htm, txt, xml, json) |
| -Display OPTIONS | Contrôler l'affichage |
Options d'affichage (-Display)
| 1 | Afficher les redirections |
| 2 | Afficher les cookies reçus |
| 3 | Afficher toutes les réponses 200/OK |
| 4 | Afficher les URLs nécessitant une authentification |
| D | Sortie de débogage |
| E | Erreurs HTTP |
| P | Afficher la progression |
| V | Sortie verbeuse |
🛡️ Techniques d'évasion (-evasion)
| Code | Technique |
|---|---|
| 1 | Encodage URI aléatoire (non-UTF8) |
| 2 | Auto-référence de répertoire (/./) |
| 3 | Fin d'URL prématurée |
| 4 | Préfixer une longue chaîne aléatoire |
| 5 | Faux paramètre |
| 6 | TAB comme séparateur de requête |
| 7 | Changer la casse de l'URL |
| 8 | Utiliser le séparateur de répertoire Windows (\) |
| A | Utiliser le retour chariot (0x0d) |
| B | Utiliser la valeur binaire 0x0b |
# Utiliser plusieurs techniques d'évasionnikto -h http://<target> -evasion 1234
🔀 Options de proxy
# Utiliser un proxynikto -h http://<target> -useproxy http://127.0.0.1:8080# Router via Burp Suitenikto -h http://<target> -useproxy http://127.0.0.1:8080
🔥 Scénarios de scan courants
# Scan complet avec toute la sortienikto -h http://<target> -o report.html -Format htm# Scan rapide avec ports communsnikto -h <target> -p 80,443,8080,8443# Scan avec authentificationnikto -h http://<target> -id admin:password# Scanner un répertoire spécifiquenikto -h http://<target> -root /webapp/# Scan furtif avec évasion et délaisnikto -h http://<target> -evasion 1234 -Pause 2# Scanner un hôte virtuelnikto -h 192.168.1.100 -vhost target.local# Scanner uniquement SQL injection et XSSnikto -h http://<target> -Tuning 49# Verbosité maximale pour débogagenikto -h http://<target> -Display V
📚 Ressources supplémentaires
🔬 Aide-mémoire Nikto terminé !
Vous disposez maintenant d'une référence complète pour le scanner de serveurs web le plus approfondi. De la détection de vulnérabilités aux techniques d'évasion, ces commandes sont essentielles pour auditer l'infrastructure web.
Prêt à auditer votre prochain serveur web !