domingo, 18 de agosto de 2013

Escanear servidores Web con Nikto (Kali Linux) parte I

Antes que nada Kali linux es una "versión" de linux basada en Debian, orientada al pentest ,auditoria informática y al asunto forense de equipos de computo, pueden descargar la versión mas resiente de su pagina oficial :  http://www.kali.org/downloads/
Eso es como una pequeña intro para que vayamos agarrando sabor, lo que nos interesa en esta ocasión, o de lo que les quiero comentar es acerca de la herramienta Nikto.

Bueno vamos a iniciar y tratar de ser breves.

¿Que es Nikto?.

Nikto es un escaneador de servidores web de código abierto (Licencia GPL) que realiza exhaustivos tests, incluyendo más de 3200 ficheros/CGI que potencialmente son dañinos, en más de 625 tipos de servidores, y problemas típicos de versiones en más de 230 servidores. Lo que se escanea así como sus plugins se actualizan muy frecuentemente y pueden descargarse gratuitamente si se desea.

¿Donde conseguirlo?.
Este programita se puede conseguir desde la web oficial del proyecto:
http://www.cirt.net/nikto2
o kali ya lo trae instalado por defecto, esa es una gran ventaja ¿no lo creen?. =D

Ahora pasemos a la parte mas interesante.

¿Como lo instalo en otras versiones de linux?
La instalación de este software no contiene ningún misterio, una vez que cumplamos los requisitos anteriores y hayamos descargado el software, tan solo deberemos descomprimir el archivo descargado para empezar a utilizarlo.

tar -xvf nikto-current.tar.gz

Una vez descomprimido, tan solo debemos entrar en el nuevo directorio creado y ejecutar la aplicación mediante el script ‘nikto.pl’.
Por ejemplo, para realizar un escaner común ejecutaremos la siguiente instrucción:

nikto -h hostAEscanear

Refiriéndose la clave ‘-h’ al host que queremos escanear.

¿Como mas puedo usarlo?
Para ejecutar un escaner básico con Nikto basta con ejecutar la sentencia anteriormente mencionada. Tal y como se ha comentado, -h nos indica el host que queremos escanear pudiendo ser este una dirección IP o un nombre de dominio.

nikto -h xxx.xxx.xxx.xxx o http://www.dominio.xx

Si no indicamos lo contrario, el puerto por defecto que utiliza Nikto es el 80, si deseamos cambiarlo deberemos indicarlo en la sentencia con la clave -p.

nikto -h host -p puerto

Siendo ‘host’ la maquina que escaneamos y ‘puerto’ el puerto por el que vamos a realizar el escaneo.
Por defecto, Nikto realiza un escaner común HTTP, si este falla, intenta realizar uno mediante SSL (HTTPS). Aunque también tenemos la opción de señalar que lo haga SSL ahorrándonos el primero (HTTP), para ello utilizaremos la clave -ssl.

nikto -h host -p puerto -ssl

Escaneo de múltiples puertos y hosts.
Para realizar un escaneo por múltiples puertos en una misma sesión separaremos los mismos mediante comas, es decir:

nikto -h host -p puerto1,puerto2,puerto3,…,puertoN

Así mismo, podemos realizar un escaneo a distintos hosts. Para ello necesitamos crear previamente un documento de texto en el que se especifiquen los hosts y el puerto a usar, quedando cada host uno por línea tal y como queda en el siguiente ejemplo.

hosts.txt
www.hostUno.com
www.hostDos.es:443
www.hostTres.es:80


Como se ha comentado anteriormente, si no se especifica un número de puerto se utilizará el puerto 80 por defecto.
La instrucción quedaría de la siguiente forma:

nikto -h hosts.txt
Usando un proxy con Nikto.
Con Nikto también podemos especificar un proxy para realizar nuestros escaneos, para ello deberemos modificar el archivo de configuración.
En el directorio donde estamos ejecutando ‘nikto.pl’ hay un archivo llamado ‘config.txt’, al abrirlo con nuestro editor de textos debemos irnos a la línea donde pone:

# PROXY STUFF

Y modificar ahí los datos de nuestro proxy. Posteriormente debemos indicar la clave -u para que Nikto utilice el proxy señalado.

nikto -h host -p puerto -u
Actualizar Nikto.
Para actualizar Nikto tan solo debemos señalar la opción -update en línea de comandos.
nikto -update
Si necesitara alguna actualización, este sería el mensaje recibido:


+ Retrieving ‘nikto_core.plugin’

+ Retrieving ‘CHANGES.txt’

En si, es lo mas básico que podemos saber, en la parte II hablaremos de otras opciones.

0 comentarios:

Publicar un comentario