UDP es un protocolo sin conexión y por lo tanto no requiere de ningún handshake para establecer una conexión. No podemos garantizar que el servicio que escucha en un puerto UDP responda a nuestros paquetes. Sin embargo, si se manda un paquete UDP a un puerto cerrado, recibimos un àquete ICMP error (tipo 3) de vuelta. Para este escaneo usamos la opción -sU. Podemos combinarlo con otros escaneos TCP.

La siguiente figura muestra que si mandamos un paquete UDP a un puerto abierto, no recibiremos ninguna respuesta.

UDP Scan

Sin embargo, si lo mandamos a un puerto cerrado recibiremos un ICMP error.

UDP Scan

En la captura de Wireshark de abajo vemos esta interacción.

UDP Scan

Al mandar un escaneo de este tipo contra el mismo servidor prueba ser valioso, pues podemos determinar que el puerto 111 está abierto, aunque ahora no puede saber si el puerto 68 está abierto.

shell
pentester@TryHackMe$ sudo nmap -sU 10.82.139.124

Starting Nmap 7.60 ( https://nmap.org ) at 2021-08-30 09:54 BST
Nmap scan report for 10.82.139.124
Host is up (0.00061s latency).
Not shown: 998 closed ports
PORT    STATE         SERVICE
68/udp  open|filtered dhcpc
111/udp open          rpcbind
MAC Address: 02:45:BF:8A:2D:6B (Unknown)

Nmap done: 1 IP address (1 host up) scanned in 1085.05 seconds