书上说ACK扫描,如果对方端口是开放的,返回的RST报文TTL应该小于等于64,而大于则表示不开放。
但是我在Kail上分别对同一个C段的两台机器进行扫描时发现:
对windows主机的一个开放端口(80)扫描,得到的RST报文的TTL=128,window=32767,对一关闭的端口(11987)扫描,得到的RST报文的TTL=128,window=32767
对Linux主机(Ubuntu 16.04)的一个开放端口(22)扫描,得到的RST报文的TTL=64,window=0,对一关闭端口(12339)扫描,得到的RST报文的TTL=64,window=0
请问何解?
Ia bukanlah kurang daripada atau sama dengan 64 sama dengan port terbuka Ia menghantar paket ACK ke sekumpulan port pada mesin pada masa yang sama Jika TTL dalam RST yang dikembalikan oleh port tertentu jelas lebih kecil daripada yang lain, ini bermakna pelabuhan ini mungkin terbuka.
Bagi kes 128/64, ia adalah kerana nilai TTL lalai *nix dan windows adalah berbeza. Secara umumnya, boleh dianggap bahawa nilai TTL lalai *nix ialah 64 dan nilai windows ialah 128. (Akan ada perbezaan bergantung pada versi sistem/kernel yang berbeza)