Update 2: pf already defaults to drop. What causes nmap to notice the server? What does 'received reset' mean?
Update 1: Maybe I misinterpreted my findings. When run with -v2, nmap tells me that "Host is up, received reset ttl 52". Does this mean that even though ICMP is blocked, nmap is able to notice that the server is running? Is this due to BLOCK/DROP differences? The server I'm probing runs OpenBSD with pf. pf is set to 'block all', followed by very specific exceptions. IMHO this defaults to BLOCK, not DROP in pf.
When I run
nmap -sn
to probe a specific host, nmap returns "Host is up" even though ICMP is completely blocked for the server I probed, except time. I assume the "Host is up" message is based on an ICMP response (as this is the only "open" channel I'm aware of), based on the nmap docs:
The default host discovery done with -sn consists of an ICMP echo request, TCP SYN to port 443, TCP ACK to port 80, and an ICMP timestamp request by default.
Now I'm wondering if it is somehow possible to make nmap tell me WHY the host is up, e.g. getting verbose output for the single steps involved in the probing. I tried running it with -v, but this only gives version and general chitchat. ´
I know I could do the single requests myself (for example: hping3) but I'm specifically interested if this is possible with nmap as I'm bound to a Windows machine here (and WSL still doesn't support raw sockets stuff necessary for this).
Thanks.