Disponibilidad con Nmap
Ciclo Formativo de Grado Superior de Administración de Sistemas Informáticos en Red (ASIR).
Módulo: Seguridad y Alta Disponibilidad.
OBJETIVO DE LA PŔACTICA
Entender el concepto de disponibilidad a través de nmap.
Nmap (Network Map) es un programa de código abierto que sirve para efectuar rastreo de puertos. Se usa para evaluar la seguridad de sistemas informáticos, así como para descubrir servicios o servidores en una red informática (Wikipedia).
Aunque generalmente se utiliza Nmap en auditorías de seguridad, muchos administradores de redes y sistemas lo encuentran útil para realizar tareas rutinarias, como puede ser el inventariado de la red, la planificación de actualización de servicios y la monitorización del tiempo que los equipos o servicios se mantiene activos.
La práctica consiste en utilizar nmap para escanear la red en busca de servicios y máquinas.
Vamos a instalar nmap en un servidor Debian, para ello introducimos en la consola de comandos:
apt-get install nmap
UTILIZACIÓN DE NMAP
La información más primordial que podemos listar con Nmap es la «tabla de puertos interesantes». En esta tabla se lista el número de puerto y protocolo, el nombre más común del servicio y su estado.
El estado del puerto puede ser:
- Open (Abierto). Nos indica que un aplicación acepta conexiones TCP o paquetes UDP en este puerto. El encontrar este tipo de puertos es el objetivo principal del sondeo de puertos, tanto para atacantes, que los utilizan para entrar al sistema, como para administradores, que intentan cerrarlos o protegerlos.
- Filtered (Filtrado). Nmap no puede determinar si este tipo de puertos se encuentran abiertos o no, debido a que un filtrado de paquetes previene el sondeo de los mismos.
- Unfiltered (No filtrado). Este estado indica que el puerto es accesible, pero que Nmap no puede determinar si se encuentra abierto o cerrado. Solamente el sondeo ACK, utilizado para determinar las reglas de un cortafuegos, clasifica a los puertos según este estado.
- Closed (Cerrado). Este tipo de puertos es accesible, respondiendo a las sondas de Nmap, pero no tiene ninguna aplicación que acepte conexiones o paquetes. Los administradores pueden cerrar estos puertos o filtrarlos, dependiendo del caso.
Probando Nmap
Vamos a escanear la red para averiguar las máquinas que hay en la red en la que estamos conectados actualmente. Para ello, averiguamos nuestra IP (comando ifconfig -a) y lanzamos nmap:
nmap -sP 192.168.0.0/24
Este comando escaneará toda la red 192.168.0.0, enviando un PING y un paquete TCP ACK al puerto 80 de todas las direcciones de la red.
Ahora elegimos un equipo para averiguar qué servicios está ejecutando:
nmap -sV 192.168.1.39
Para averiguar qué servidores DHCP hay disponibles en la red, usamos el siguiente comando:
nmap –script broadcast-dhcp-discover
Para averiguar el Sistema Operativo de un equipo:
sudo nmap -O 192.168.1.39
Posible vulnerabilidad:
Esta vulnerabilidad permite a cualquier atacante remoto el poder falsificar tráfico DNS a través de ciertas técnicas de contaminación de cache en servidores que realizan resolución recursiva (es decir cuando se usa la opción allow-recursion abierta a todo el mundo, como ocurre en los servidores DNS públicos) y se relaciona a insuficiente aleatoriedad de las identidades de transacción y de los puertos de origen. Es decir, una vulnerabilidad de entropía de insuficiencia de zócalos (sockets) de DNS (conocido como DNS Insufficient Socket Entropy Vulnerability). A través de esta vulnerabilidad un atacante puede contaminar el cache de un servidor DNS y hacer que los clientes se conecten hacia direcciones falsas. Es importante aclarar que en realidad se trata de una vulnerabilidad en el diseño del protocolo DNS.
Fuente: http://www.alcancelibre.org/staticpages/index.php/como-dns
SELinux protege casi por completo al servicio named contra la vulnerabilidad anteriormente descrita. Es por tal motivo que es importante utilizar SELinux.
Pingback: Copias de Seguridad en WordPress
Pingback: Cabeceras HTTP de seguridad WordPress
Disponibilidad con NMAP | Práctica de Seguridad Informática – JavierJG