Comment trouver les vulnérabilités du serveur Web avec Nikto Scanner?
Scannez votre serveur Web pour les vulnérabilités, une mauvaise configuration en GRATUIT avec le scanner Nikto
97 % des applications testées par Trustwave avait une ou plusieurs faiblesses.
Et 14 % d'enquêteateL'intrusion était due à une mauvaise configuration. Une mauvaise configuration peut entraîner de graves risques.
Il existe un certain nombre de scanner de vulnérabilité en ligne pour tester vos applications Web sur Internet. Toutefois, si vous souhaitez tester des applications intranet ou des applications internes, vous pouvez utiliser le Personne scanner Web.
Personne est un scanner open-source et vous pouvez l'utiliser avec n'importe quel serveur Web (Apache, Nginx, IHS, OHS, Litespeed, etc.). Sonne comme un outil interne parfait pour l'analyse des serveurs Web. Il est capable de scanner plus de 6700 articles pour détecter les erreurs de configuration, les fichiers à risque, etc. et certaines des fonctionnalités incluent;
- Vous pouvez enregistrer le rapport au format HTML, XML, CSV
- Il prend en charge SSL
- Analyser plusieurs ports sur le serveur
- Rechercher un sous-domaine
- Énumération des utilisateurs Apache
- Chèques pour l'extérieuratecomposants d
- Détecter les sites de stationnement
Commençons par l'installation et comment utiliser cet outil.
Il existe de nombreuses façons d'utiliser Nikto.
- Utilisation de Kali Linux
- Conteneur Docker
- Utilisez le binaire sur une distribution basée sur UNIX ou Windows.
Remarque: l'exécution de l'analyse envoie de nombreuses requêtes à votre serveur Web. Vous reconnaissez le risque et n'intervenez que contre vos serveurs.
Utiliser Nikto sur Kali Linux
Comme il est intégré à Kali, vous n'avez rien à installer.
- Connectez-vous à Kali Linux
- Allez dans Applications >> Analyse de vulnérabilité et cliquez sur nikto
Cela ouvrira le terminal où vous pourrez exécuter l'analyse sur votre serveur Web. Il existe plusieurs syntaxes que vous pouvez utiliser pour exécuter l'analyse. Cependant, le moyen le plus rapide de le faire est ci-dessous.
# nikto –h $webserverurl
N'oubliez pas de changer $ webserverurl avec l'IP ou le FQDN réel de votre serveur Web.
root@Chandan:~# nikto -h thewebchecker.com
- Nikto v2.1.6
---------------------------------------------------------------------------
+ Target IP: 128.199.222.244
+ Target Hostname: thewebchecker.com
+ Target Port: 80
+ Start Time: 2016-08-22 06:33:13 (GMT8)
---------------------------------------------------------------------------
+ Server: Apache/2.4.18 (Ubuntu)
+ Server leaks inodes via ETags, header found with file /, fields: 0x2c39 0x53a938fc104ed
+ The anti-clickjacking X-Frame-Options header is not present.
+ The X-XSS-Protection header is not defined. This header can hint to the user agent to protect against some forms of XSS
+ The X-Content-Type-Options header is not set. This could allow the user agent to render the content of the site in a different fashion to the MIME type
+ No CGI Directories found (use '-C all' to force check all possible dirs)
+ Allowed HTTP Methods: GET, HEAD, POST, OPTIONS
+ Uncommon header 'x-ob_mode' found, with contents: 1
+ OSVDB-3092: /manual/: Web server manual found.
+ OSVDB-3268: /manual/images/: Directory indexing found.
+ OSVDB-3233: /icons/README: Apache default file found.
+ /phpmyadmin/: phpMyAdmin directory found
+ 7596 requests: 0 error(s) and 10 item(s) reported on remote host
+ End Time: 2016-08-22 06:54:44 (GMT8) (1291 seconds)
---------------------------------------------------------------------------
+ 1 host(s) tested
Comme vous pouvez le voir, l'analyse ci-dessus est par rapport à la configuration par défaut d'Apache 2.4, et de nombreux éléments nécessitent une attention particulière.
Vous pouvez vous référer à mon Guide de sécurité et de renforcement Apache pour résoudre ces problèmes.
Utiliser Nikto sur CentOS
- Connectez-vous à CentOS ou à tout système d'exploitation basé sur Linux
- Téléchargez le lateère version de Github en utilisant wget
wget https://github.com/sullo/nikto/archive/master.zip .
- Extract en utilisant la commande unzip
unzip master.zip
- Cela créeraate un nouveau dossier appelé « nikto-master »
- Allez dans le dossier nikto-master> programme
cd nikto-master/program
- Exécuter
nikto.pl
avec le domaine cible
Une fois installé, exécutez nikto et ça devrait aller. Cette fois, je vais lancer une analyse sur le serveur Web Nginx pour voir comment il fonctionne.
./nikto.pl -h $IPADDRESS
[root@lab program]# ./nikto.pl -h XX.XX.137.171
- Nikto v2.1.6
---------------------------------------------------------------------------
+ Target IP: XX.XX.137.171
+ Target Hostname: XX.XX.137.171
+ Target Port: 80
+ Start Time: 2020-06-07 07:39:40 (GMT0)
---------------------------------------------------------------------------
+ Server: nginx/1.14.1
+ The anti-clickjacking X-Frame-Options header is not present.
+ The X-XSS-Protection header is not defined. This header can hint to the user agent to protect against some forms of XSS
+ The X-Content-Type-Options header is not set. This could allow the user agent to render the content of the site in a different fashion to the MIME type
+ No CGI Directories found (use '-C all' to force check all possible dirs)
+ /httpd.conf: Apache httpd.conf configuration file
+ /httpd.conf.bak: Apache httpd.conf configuration file
+ 8075 requests: 0 error(s) and 5 item(s) reported on remote host
+ End Time: 2020-06-07 07:39:50 (GMT0) (10 seconds)
---------------------------------------------------------------------------
+ 1 host(s) tested
[root@lab program]#
Donc, comme vous pouvez le voir par défaut Nginx, la configuration du serveur Web est également vulnérable et ce guide de sécurité vous aidera à atténuerate Eux.
Dépannage
Vous pouvez rencontrer l'erreur suivante lors de l'exécution sur CentOS et si c'est le cas, vous pouvez la corriger comme expliqué ci-dessous.
ERREUR -1
+ WARNING: Module JSON::PP missing. -Savedir and replay functionality cannot be used.
OR
ERROR: Required module not found: Getopt::Long
ERROR: Required module not found: Time::Local
ERROR: Required module not found: Time::HiRes qw(sleep ualarm gettimeofday tv_interval)
Si vous recevez l'avertissement ci-dessus, vous devez installer le module Perl comme suit.
# yum install perl-CPAN*
ou utiliser DNF utilise CentOS 8
# dnf install perl-CPAN*
ERREUR - 2
perl: warning: Setting locale failed.
Pour cela, vous devez exporter les paramètres régionaux sur le terminal comme expliqué ici.
export LC_CTYPE=en_US.UTF-8
export LC_ALL=en_US.UTF-8
ERREUR - 3
Can't locate bignum.pm in @INC (you may need to install the bignum module)
Vous devez installer le module Perl bignum.
# yum install perl-bignum
ou en utilisant DNF si CentOS 8
# dnf install perl-bignum
Conclusion
Allez-y et jouez avec le logiciel Nikto et si vous souhaitez en savoir plus, consultez ceci cours de piratage et de test de pénétration.