UDP Port Scan with Nmap
About this tool
UDP Port Scan with Nmap allows you to discover which UDP ports are open on your target host.
Even though UDP services are less popular than TCP services, having a vulnerable UDP service exposes the target to the same risk as having a vulnerable TCP service. Hence, discovering all open UDP ports is important in a penetration test for achieving complete coverage of the security evaluation.
- Target: This is the target to scan for open UDP ports. Can be specified as hostname, IP address or IP range
- Ports to scan - Common: This option tells Nmap to scan only the top 100 most common UDP ports (Nmap -F).
- Ports to scan - Range: You can specify a range of ports to be scanned. Valid ports are between 1 and 65535. Because of the way UDP protocol works, scanning is pretty slow so if you specify a large range of ports, the scan can take up to several hours.
- Ports to scan - List: You can specify a comma separated list of ports to be scanned.
- Detect operating system: If enabled, Nmap will try to determine the type and version of the operating system that runs on the target host. The result is not always 100% accurate, depending on the way the target responds to probe requests.
- Detect service version: In this case Nmap will try to detect the version of the service that is running on each open port. In case of UDP, this is possible only by sending UDP requests that can be understood by the tested service, otherwise the service will not answer at all.
- Don't ping host: If enabled, Nmap will not try to see if the host is up before scanning it (which is the default behavior). This option is useful when the target host does not respond to ICMP requests but it is actually up and it has open ports.
How it works
The tool is a web interface for Nmap, which is called with the proper parameters in order to provide speed and accuracy.
Behind the curtains, Nmap sends UDP packets to each port specified in the parameters. If the target responds with 'ICMP port unreachable', Nmap can be sure that the port is closed. Otherwise (no response received), Nmap cannot know if the port is open, firewalled or if the packet was lost on the way. In this case, Nmap will show you the status 'open|filtered' for that port.
In order to make sure that a certain port marked as 'open|filtered' is really open, you should enable the detection of service version. Since this operation is really slow, you should do it in a second scan, only for the ports that were reported as 'open|filtered' in the initial simple scan.