sábado, 19 de marzo de 2011

Auditar nuestra red

Herramientas gráficas, para auditorías de red, podemos encontrar varias en el menú Sistema-Administracion-Herramientas de red (gnome-network),
wireshark: Es un capturador/analizador de paquetes de red (llamado sniffer), que permite a los administradores de redes analizar el tráfico de una red, podemos instalarlo desde el centro de software ó desde la consola con $ sudo apt-get install wireshark y lo ejecutamos con $ sudo wireshark.

Herramientas de consola, para auditorías de red

netstat: Presenta el estado de una red con una gran variedad de opción
-i, Nos presentará las estadísticas de los interfaces de red que existen activos en el equipo en el momento
-l, Nos muestra todas las aplicaciones que esta escuchando, para limitar las
salidas al tipo de protocolo de los sockets -t -u
–a, Se mostrarán también los puertos que están esperando una conexión
–t, –u, Nos muestra las conexiones activas a puertos TCP, UDP,
-n, Se sustituyen los nombres de máquinas y servicios por sus IPs y números de puerto asociados.
-p, Muestra el nombre PID/Programa para los zócalos
-r, Muestra la tabla de rute-amiento de nuestro pc
Ejemplos
$ sudo netstat -ia : Muestra las estadísticas de las interfaces de red configuradas.
$ sudo netstat -putan : Muestra un listado con los puertos que tenemos abiertos
También podemos usar $ sudo lsof -i  para comprobar el estado de los puertos abiertos

nmap: Para el escaneo de puertos probablemente de las mejores que existen siendo software libre.
-sP, Escaneo ping: A veces únicamente se necesita saber que servidores en una red se encuentran activos.
-p0, No intenta hacer ping a un servidor antes de escanearlo. Esto permite el escaneo de redes que no permiten que pasen peticiones (o respuestas)de ecos
-sU, Este método se usa para saber que puertos UDP están abiertos en un servidor
-sV, La otra técnica de Fingerprinting se usa para comprobar las versiones del
software que escucha en los puertos, es decir el servidor ftp, la versión de
apache
-O, puede averiguar el sistema operativo del objetivo usando las pequeñas
diferencias en la implementación de los protocolos. Aunque siguen el mismo
estándar al programar los sistemas
-o, Esta opción guarda los resultados de sus escaneos en forma humanamente inteligible en el archivo especificado.
Ejemplo:
$ sudo nmap -p 80,22,21 192.168.0.1-10 -o captura.log, Escanea de la red 192.168.0.* en el rango de 1 al 10, de los puertos 80, 22, 21 y guarda el resultado en el fichero captura.log
$ sudo nmap -sS 192.168.0.10 -D 192.168.0.22 Escanea los puertos del nodo 192.168.0.10 mientras spoofea la IP 192.168.0.22 como nodo atacante (esta IP debe estar activa),  esto es para evitar ser detectado.
$sudo nmap -sV 192.168.0.10 Comprobar que puertos están abiertos de la ip 192.168.0.10

tcpdump: Es una de las utilidades que más detalles nos va a aportar de cara a saber que paquetes circulan por nuestra red,
Ejemplos:
Capturar trafico cuya IP origen sea 192.168.3.1
$ sudo tcpdump src host 192.168.3.1
Capturar tráfico cuya dirección origen o destino sea 192.168.3.2
$ sudo tcpdump host 192.168.3.2
Capturar tráfico con destino a la dirección MAC 50:43:A5:AE:69:55
$ sudo tcpdump ether dst 50:43:A5:AE:69:55
Capturar tráfico con red destino 192.168.3.0
$ sudo tcpdump dst net 192.168.3.0
Capturar tráfico con red origen 192.168.3.0/28
$ sudo tcpdump src net 192.168.3.0 mask 255.255.255.240
$ sudo tcpdump src net 192.168.3.0/28
Capturar tráfico con destino el puerto 23
$ sudo tcpdump dst port 23
Capturar tráfico con origen o destino el puerto 110
$ sudo tcpdump port 110

Instalar un cortafuegos: $ sudo apt-get install ufw
Para configurar un  firewall, primero veremos que servicio tenemos en escucha.
$ sudo netstat -tanp | grep LISTEN  (como podemos ver hay algunos servicios que están en escucha y en espera de peticiones)
Cuando se crea un firewall se recomienda primero bloquear todos los puerto y conexiones para después abrir solamente los que se requieren.
$ sudo ufw default deny     allow = para permitir
y para activar el log de nuestro firewall ejecutamos: $ sudo  ufw logging on 
Aquí algunos ejemplos de como crear reglas para cortafuegos
$ sudo ufw allow 80 /tcp
$ sudo ufw allow 3306 -> Abrir puerto mysql
$ sudo ufw allow http -> Para activar el servicio apache.
Permitir conexion ftp desde la tu red  192.168.1.x
$ sudo ufw allow from 192.168.1.0/24 proto tcp to any port ftp
etc...
Iniciar nuestro firewall solamente que ejecutar: $ sudo ufw enable   disable = desativar el cortafuetos
y para ve los log abrimos otra terminal y escribimos tail -f /var/log/messages

Por último para instalar el cortafuegos en entorno gráfico $ sudo apt-get install gufw