Un escaneo de puertos es un poco como mover un montón de pomos para ver qué puertas están cerradas. El escáner aprende qué puertos de un enrutador o firewall están abiertos y puede usar esta información para encontrar las posibles debilidades de un sistema informático.
¿Qué es un puerto?
Cuando un dispositivo se conecta a otro dispositivo a través de una red, especifica un TCP o UDP número de puerto de 0 a 65535. Sin embargo, algunos puertos se utilizan con más frecuencia. Los puertos TCP del 0 al 1023 son "puertos conocidos" que proporcionan servicios del sistema. Por ejemplo, el puerto 20 es transferencia de archivos FTP, el puerto 22 es Shell seguro (SSH) conexiones de terminal, el puerto 80 es tráfico web HTTP estándar y el puerto 443 está encriptado HTTPS . Entonces, cuando te conectas a un sitio web seguro, tu navegador web está hablando con el servidor web que está escuchando en el puerto 443 de ese servidor.
Los servicios no siempre tienen que ejecutarse en estos puertos específicos. Por ejemplo, puede ejecutar un servidor web HTTPS en el puerto 32342 o un servidor Secure Shell en el puerto 65001, si lo desea. Estos son solo los valores predeterminados estándar.
¿Qué es un escaneo de puertos?
Un escaneo de puertos es un proceso de verificar todos los puertos en una dirección IP para ver si están abiertos o cerrados. El software de escaneo de puertos verificaría el puerto 0, el puerto 1, el puerto 2 y hasta el puerto 65535. Lo hace simplemente enviando una solicitud a cada puerto y pidiendo una respuesta. En su forma más simple, el software de escaneo de puertos pregunta acerca de cada puerto, uno a la vez. El sistema remoto responderá y dirá si un puerto está abierto o cerrado. La persona que ejecuta el escaneo de puertos sabrá qué puertos están abiertos.
Cualquier red cortafuegos en el camino puede bloquear o eliminar el tráfico, por lo que un escaneo de puertos también es un método para encontrar qué puertos son accesibles o expuestos a la red en ese sistema remoto.
los herramienta nmap es un común utilidad de red utilizado para la exploración de puertos, pero hay muchas otras herramientas de exploración de puertos.
¿Por qué la gente ejecuta análisis de puertos?
Los escaneos de puertos son útiles para determinar las vulnerabilidades de un sistema. Un escaneo de puertos le diría a un atacante qué puertos están abiertos en el sistema y eso lo ayudaría a formular un plan de ataque. Por ejemplo, si se detecta que un servidor Secure Shell (SSH) escucha en el puerto 22, el atacante podría intentar conectarse y comprobar si hay contraseñas débiles. Si otro tipo de servidor está escuchando en otro puerto, el atacante podría pincharlo y ver si hay un error que pueda explotarse. Tal vez se esté ejecutando una versión anterior del software y haya un agujero de seguridad conocido.
Estos tipos de análisis también pueden ayudar a detectar servicios que se ejecutan en puertos no predeterminados. Entonces, si está ejecutando un servidor SSH en el puerto 65001 en lugar del puerto 22, el escaneo de puertos revelaría esto y el atacante podría intentar conectarse a su servidor SSH en ese puerto. No puede simplemente ocultar un servidor en un puerto no predeterminado para proteger su sistema, aunque hace que el servidor sea más difícil de encontrar.
Los escaneos de puertos no solo los utilizan los atacantes. Los escaneos de puertos son útiles para las pruebas de penetración defensivas. Una organización puede escanear sus propios sistemas para determinar qué servicios están expuestos a la red y asegurarse de que estén configurados de forma segura.
¿Qué tan peligrosos son los análisis de puertos?
Un escaneo de puertos puede ayudar a un atacante a encontrar un punto débil para atacar y entrar en un sistema informático. Sin embargo, es solo el primer paso. El hecho de que haya encontrado un puerto abierto no significa que pueda atacarlo. Pero, una vez que haya encontrado un puerto abierto que ejecute un servicio de escucha, puede escanearlo en busca de vulnerabilidades. Ese es el verdadero peligro.
En su red doméstica, es casi seguro que tenga un enrutador entre usted e Internet. Alguien en Internet solo podría escanear el puerto de su enrutador, y no encontrarían nada más que servicios potenciales en el enrutador mismo. Ese enrutador actúa como un cortafuegos, a menos que haya reenvió puertos individuales desde su enrutador a un dispositivo, en cuyo caso esos puertos específicos están expuestos a Internet.
Para los servidores de computadoras y las redes corporativas, los firewalls se pueden configurar para detectar escaneos de puertos y bloquear el tráfico de la dirección que se está escaneando. Si todos los servicios expuestos a Internet están configurados de forma segura y no tienen agujeros de seguridad conocidos, los escaneos de puertos ni siquiera deberían dar demasiado miedo.
Tipos de análisis de puertos
En un escaneo de puerto de "conexión completa TCP", el escáner envía un mensaje SYN (solicitud de conexión) a un puerto. Si el puerto está abierto, el sistema remoto responde con un mensaje SYN-ACK (reconocimiento). El escáner responde con su propio mensaje ACK (reconocimiento). Este es un completo Apretón de manos de conexión TCP , y el escáner sabe que el sistema está aceptando conexiones en un puerto si este proceso tiene lugar.
Si el puerto está cerrado, el sistema remoto responderá con un mensaje RST (reinicio). Si el sistema remoto simplemente no está presente en la red, no habrá respuesta.
Algunos escáneres realizan una exploración "TCP semiabierta". En lugar de pasar por un ciclo completo de SYN, SYN-ACK y luego ACK, simplemente envían un SYN y esperan un mensaje SYN-ACK o RST en respuesta. No es necesario enviar un ACK final para completar la conexión, ya que SYN-ACK le diría al escáner todo lo que necesita saber. Es más rápido porque se necesitan enviar menos paquetes.
Otros tipos de análisis implican el envío de paquetes extraños y con formato incorrecto y esperar a ver si el sistema remoto devuelve un paquete RST que cierra la conexión. Si es así, el escáner sabe que hay un sistema remoto en esa ubicación y que un puerto en particular está cerrado. Si no se recibe ningún paquete, el escáner sabe que el puerto debe estar abierto.
Un simple escaneo de puertos donde el software solicita información sobre cada puerto, uno por uno, es fácil de detectar. Los firewalls de red se pueden configurar fácilmente para detectar y detener este comportamiento.
Es por eso que algunas técnicas de escaneo de puertos funcionan de manera diferente. Por ejemplo, un escaneo de puertos podría escanear un rango más pequeño de puertos, o podría escanear el rango completo de puertos durante un período mucho más largo, por lo que sería más difícil de detectar.
Los escaneos de puertos son una herramienta de seguridad básica y práctica cuando se trata de penetrar (y asegurar) los sistemas informáticos. Pero son solo una herramienta que permite a los atacantes encontrar puertos que pueden ser vulnerables a los ataques. No le dan a un atacante acceso a un sistema, y un sistema configurado de forma segura ciertamente puede soportar un escaneo completo de puertos sin daño.
Credito de imagen: xfilephotos /Shutterstock.com, Casezy idea /Shutterstock.com.