Cómo hacer un escaneo de puertos en Linux

Cómo hacer un escaneo de puertos en Linux
El escaneo de puertos es un proceso para verificar los puertos abiertos de una PC o un servidor. Los escáneres de puertos a menudo son utilizados por jugadores y piratas informáticos para verificar los puertos disponibles y los servicios de huellas digitales. Hay dos tipos de puertos para escanear en el protocolo de Internet TCP/IP, TCP (protocolo de control de transmisión) y UDP (protocolo de datagrama de usuario). Tanto TCP como UDP tienen su propia forma de escanear. En este artículo, veremos cómo hacer un escaneo de puertos en el entorno de Linux, pero primero echaremos un vistazo a cómo funciona el escaneo de puertos. Tenga en cuenta que el escaneo de puertos es ilegal en los países a menudo, asegúrese de verificar los permisos antes de escanear su objetivo.

Escaneo TCP

TCP es un protocolo con estado porque mantiene el estado de las conexiones. La conexión TCP implica un apretón de manos de tres vías de enchufe del servidor y enchufe del lado del cliente. Mientras escucha un servidor, el cliente envía un SYN y luego el servidor responde con SYN-Aack. El cliente entonces envía ACK para completar el apretón de manos para la conexión

Para escanear un puerto abierto TCP, un escáner envía un paquete SYN al servidor. Si se envía Syn-Aack, entonces el puerto está abierto. Y si el servidor no completa el apretón de manos y responde con un RST, entonces el puerto está cerrado.

Escaneo UDP

UDP, por otro lado, es un protocolo sin estado y no mantiene el estado de conexión. Tampoco implica apretón de manos de tres vías.

Para escanear un puerto UDP, un escáner UDP envía un paquete UDP al puerto. Si ese puerto está cerrado, se genera un paquete ICMP y se envía de regreso al origen. Si esto no sucede, eso significa que el puerto está abierto.

El escaneo de puertos UDP a menudo no es confiable porque los paquetes de ICMP se eliminan por firewalls, generando falsos positivos para escáneres de puertos.

Escáneres de puertos

Ahora que hemos analizado cómo funciona el escaneo de puertos, podemos avanzar a diferentes escáneres de puertos y su funcionalidad.

Nmap

NMAP es el escáner de puerto más versátil e integral disponible hasta ahora. Puede hacer todo, desde el escaneo de puertos hasta los sistemas operativos de huellas digitales y el escaneo de vulnerabilidades. NMAP tiene interfaces CLI y GUI, la GUI se llama Zenmap. Tiene muchas opciones diferentes para hacer escaneos rápidos y efectivos. Aquí está cómo instalar nmap en Linux.

actualización de sudo apt-get
sudo apt -get actualización -y
sudo apt -get install nmap -y

Ahora usaremos NMAP para escanear un servidor (hackme.org) Para puertos abiertos y para enumerar los servicios disponibles en esos puertos, es realmente fácil. Simplemente escriba NMAP y la dirección del servidor.

nmap hackme.organizar

Para escanear los puertos UDP, incluya la opción -su con sudo porque requiere privilegios raíz.

sudo nmap -su hackme.organizar

Hay muchas otras opciones disponibles en NMAP, como:

-P-: Escanee para todos los puertos 65535
-ST: TCP Connect Scan
-O: escaneos para el sistema operativo que se ejecuta
-V: escaneo detallado
-A: escaneo agresivo, escaneos para todo
-T [1-5]: para establecer la velocidad de escaneo
-PN: en caso de que el servidor bloquea ping

Mapache

ZenMap es una interfaz GUI de NMAP para Click-Kiddies para que no tenga que recordar sus comandos. Para instalarlo, escriba

sudo apt -get install -y zenmap

Para escanear un servidor, simplemente escriba su dirección y seleccione entre las opciones de escaneo disponibles.

Netcat

NetCat es un escritor de puerto TCP y UDP en bruto que también se puede utilizar como escáner de puerto. Utiliza el escaneo conectado, por eso no es tan rápido como el mapeador de red. Para instalarlo, escriba

ubuntu@ubuntu: ~ $ sudo apt instalación netcat -tradicional -y

Para verificar un puerto abierto, escriba

ubuntu@ubuntu: ~ $ nc -z -v hackme.org 80
... Snip ..
hackéame.org [217.78.1.155] 80 (http) abierto

Para escanear para una gama de puertos, escriba

ubuntu@ubuntu: ~ $ nc -z -nv 127.0.0.1 20-80
(Desconocido) [127.0.0.1] 80 (http) abierto
(Desconocido) [127.0.0.1] 22 (SSH) Abierto

Unicornio

Unicornscan es un escáner portuario integral y rápido, construido para investigadores de vulnerabilidades. A diferencia de Network Mapper, utiliza su propia pila TCP/IP distribuida por tierra de usuario. Tiene muchas características que NMAP no, algunas de ellas se dan,

  • Escaneo TCP de apátrido asincrónico con todas las variaciones de los indicadores TCP.
  • Banner de TCP de apátrido asíncrono
  • Escaneo UDP específico del protocolo asíncrono (enviando suficiente firma para obtener una respuesta).
  • Identificación de SO, aplicación e componentes remotos activos y pasivos mediante el análisis de respuestas.
  • Registro y filtrado de archivos PCAP
  • Salida de base de datos relacional
  • Soporte de módulo personalizado
  • Vistas de conjunto de datos personalizados

Para instalar unicornscan, escriba

ubuntu@ubuntu: ~ $ sudo apt -get install unicornscan -y

Para ejecutar un escaneo, escriba

ubuntu@ubuntu: ~ $ sudo US 127.0.0.1
TCP Open FTP [21] desde 127.0.0.1 TTL 128
TCP Open SMTP [25] desde 127.0.0.1 TTL 128
TCP Open HTTP [80] desde 127.0.0.1 TTL 128
... Snip ..

Conclusión

Los escáneres de los puertos son útiles si eres un Devop, jugador o un hacker. No hay una comparación real entre estos escáneres, ninguno de ellos es perfecto, cada uno de ellos tiene sus beneficios y inconvenientes. Depende completamente de sus requisitos y de cómo los use.