Supongamos que estamos haciendo un escaneo de conexión TCP.
un escaneo nmap en google devuelve el siguiente resultado:
SERVICIO DEL ESTADO DEL PUERTO
80 / tcp http abierto
443 / tcp abierto https
Sin embargo, si intento abrir un socket con netcat o telnet en google.com en el puerto 12, por ejemplo, netcat o telnet se cuelga indefinidamente.
Nmap detecta el puerto 12 (y otros puertos que no sean 80 o 443) como cerrados, pero al iniciar una conexión TCP con ellos no se cierra instantáneamente.
¿Cómo puede nmap saber que esos puertos no están filtrados sino cerrados?
monitoring
tcp
Intrepidd
fuente
fuente
Respuestas:
Con nmap scan, generalmente obtienes 3 estados:
Abrir un netcat al puerto 80 y esperar no hará nada. El puerto 80 (generalmente) significa que un servidor http está escuchando en el otro lado y está esperando un comando HTTP (hasta su propio tiempo de espera). Después de conectar en red al puerto 80, intente extraer a
GET /
para ver si obtiene una respuesta (probablemente un error http).fuente
Un puerto cerrado es un puerto que no tiene ningún software que lo escuche, por lo que un intento de hacer una conexión a ese puerto en ese sistema hará que el sistema envíe un paquete TCP RST.
Un puerto filtrado, por otro lado, es típicamente un puerto que está bloqueado por un cortafuegos en la ruta de red, por lo que un intento de hacer una conexión a ese puerto en ese sistema no hará que vuelva nada ... ni siquiera un TCP RST ... por lo que un intento de conexión se quedará allí hasta que TCP agote el tiempo de espera del intento de conexión.
fuente