Conoce Atico34 - Solicita presupuesto
Ciberseguridad

Escaneo de puertos. ¿Para qué se hace?

Los puertos de red son, por así decirlo, las puertas de entrada a una computadora que permiten que se ejecuten en ella diferentes herramientas, programas y aplicaciones. Existen 65.535 puertos de red, los cuáles se encuentran clasificados por la IANA (Internet Assigned Numbers Authority), según sean bien conocidos, registrados o dinámicos. Más que hablar sobre los puertos en sí, en este artículo vamos a profundizar acerca del escaneo de puertos. ¿En qué consiste este proceso? ¿Para qué se utiliza? ¿Qué técnicas se emplean? Te damos las respuestas a estas y otras preguntas.

¿Qué es el escaneo de puertos?

El escaneo de puertos es un proceso mediante el cual, a través de herramientas especializadas, se analizan los puertos de un sistema informático.

Al escanear puertos se puede obtener información como los puertos que están abiertos, los que están cerrados o aquellos que están protegidos con cortafuegos.

Este procedimiento se puede usar con distintas finalidades. Por ejemplo, los administradores de sistemas lo emplean para conocer los servicios que está ofreciendo la máquina o para analizar el estado de los puertos y detectar y subsanar posibles vulnerabilidades.

Sin embargo, como veremos más adelante, el escaneo de puertos abiertos también se puede usar con fines poco éticos. Del mismo modo que los administradores de redes lo pueden usar para detectar y corregir vulnerabilidades, los ciberdelincuentes lo pueden usar para explotar dichas brechas de seguridad.

Técnicas de escaneo de puertos

A continuación vemos las técnicas más habituales para realizar un scan de puertos.

TCP connect() scanning

Es una de las técnicas más comunes para realizar escaneos TCP y cuenta con las ventajas de que es un método muy rápido y que apenas requiere privilegios. Básicamente, consiste en usar la llamada a sistema connect(). Si se logra establecer conexión, quiere decir que el puerto está abierto; si no se consigue conectar, significa que el puerto está cerrado.

TCP SYN scanning

Este método se suele denominar “half-open” o mitad abierta. En realidad, no se crea una conexión TCP completa. En lugar de eso, se envían paquetes SYN como si se fuera a establecer una conexión. Si se recibe como respuesta un SYN-ACK es que el puerto está abierto, pero si se recibe un RST es que el puerto está cerrado. El principal inconveniente de este método es que se requieren privilegios de ROOT para poder llevarlo a cabo.

TCP FIN scanning

Es una técnica de escaneo de puertos que permite penetrar en sistemas en los que los firewalls o packet filters podrían detectar el uso de paquetes SYN. Usando los paquetes SYN, puede pasar que la respuesta sea un RST si el puerto está cerrado, y que si está abierto el sistema no de una respuesta. Con los paquetes FIN esto no ocurre.

Fragmentation scanning

No se trata de un método de escaneo de puertos propiamente dicho, sino que se basa en una modificación de técnicas anteriores. Consiste en dividir o fragmentar los paquetes SYN o FIN que se envían, con el objetivo de que no sean detectados por los firewall o los filtradores de paquetes.

TCP reverse ident scanning

Gracias al protocolo “ident” se puede conocer el nombre de usuario y el dueño de los servicios que se están usando dentro de una conexión TCP. Para ello es necesario establecer una conexión TCP completa.

UDP ICMP port unreachable scanning

Es una técnica que se diferencia de las anteriores en que no se basa en el protocolo TCP, sino que usa el UDP. Este protocolo, aunque suele ser más sencillo, resulta más complejo a la hora de escanear puertos, por lo que el proceso se puede volver significativamente más lento.

¿Escanear puertos es siempre legal?

No, el escaneo de puertos no siempre es legal.

El port scanning se puede utilizar para fines legítimos. Por ejemplo, para que los administradores de redes y sistemas comprueben el estado de los puertos, las conexiones y los programas o aplicaciones que está ofreciendo el equipo.

También se puede usar como un método para el análisis de vulnerabilidades y brechas de seguridad. Los administradores pueden escanear los puertos para crear un mapa de las conexiones y detectar posibles fallos o vulnerabilidades.

Por ello, se puede decir que el escaneo de puertos es totalmente legal, siempre y cuando se tenga permiso para acceder al equipo y se realice con fines legítimos.

Sin embargo, también puede ser usado con objetivos poco éticos. Muchos atacantes emplean este tipo de técnicas para aprovecharse de esos fallos de seguridad. Al final, los puertos abiertos pueden funcionar como una puerta de entrada a un equipo, para luego realizar otras actividades maliciosas, como ataques de denegación de servicio.

Ataques de escaneo de puertos. Qué son y cómo evitarlos

Al hilo del punto anterior, cabe decir que los ataques de escaneo de puertos son uno de los métodos más empleados por los crackers para descubrir vulnerabilidades en un sistema. De hecho, lo primero que hará un cibercriminal antes de lanzar su ataque será un portscan, lo que le permitirá saber información como la arquitectura de la red, los servicios que ofrecemos en nuestros equipos y, por supuesto, buscar agujeros o brechas de seguridad en los mismos.

Dicho de otro modo, cada puerto abierto es una potencial puerta de entrada al equipo, por lo que es necesario tomar ciertas medidas de seguridad.

Una de ellas es no abrir más puertos de los necesarios, Normalmente, los equipos ya vienen con una serie de puertos abiertos predeterminados para poder ofrecer los servicios y funciones básicas.

También es aconsejable es el uso de firewall o filtradores de paquetes, los cuáles funcionan como una barrera que protege al equipo de intrusos.

Otra recomendación es mantener siempre los equipos y sistemas actualizados a su última versión, ya que los desarrolladores suelen crear parches que subsanan posibles vulnerabilidades.

Por último, está la opción de usar herramientas como PortScanDetector, que permite detectar cuándo se está realizando un rastreo de nuestros puertos. Básicamente, avisa a los administradores en aquellos casos en los que han sido consultados más de 10 puertos, lo cual puede indicar que un hacker está intentando acceder al equipo.

5 herramientas para escanear puertos

Para terminar te decimos cuáles son algunas de las mejores herramientas del mercado para escanear puertos. Recuerda que solo se deben usar con fines legítimos.

Netcat

Es una herramienta creada en 1996 y que fue diseñada en un principio para ser usada en máquinas basadas en UNIX. Actualmente ya cuenta con opciones para ser utilizada en otros sistemas operativos como Windows. Está diseñada para enviar o recibir datos mediante los protocolos TCP o UDP.

Nmap

Otra de las herramientas más conocidas para el escaneo de puertos es Nmap. Fue creada en 1997 y emplea licencia GPL, aunque desde el año 2000 también se puede usar en otros sistemas operativos como Windows, aunque sujeto a ciertas limitaciones.

Testdevelocidad.es

Esta página web es principalmente conocida por permitir a los usuarios conocer la velocidad de su conexión a internet. Sin embargo, lo que muchos no saben es que también sirve para el escaneo de puertos online. Puedes escribir el nombre de una aplicación o un número de puerto para que la herramienta te diga cuál es su estado.

Escáner de puerto TCP

Como su propio nombre indica, es una herramienta diseñada para el test de puertos TCP. Solo funciona en sistemas operativos Windows. Emplea el método de paquetes SYN y una de sus grandes ventajas es que puede analizar hasta 10.000 puertos por segundo.

Angry IP Scanner

Angry IP Scanner es un escáner de puertos IP y red TCP que permite escanear direcciones IP. Es una herramienta sencilla y con una interfaz muy fácil de usar. Además, es multiplataforma, de código abierto y totalmente gratuita. Permite almacenar los datos recogidos como archivos TXT, CSV, XML o en una lista personalizada de IP-Port.