文章详情页
python - 关于ACK标志位的TCP端口扫描的疑惑?
浏览:232日期:2022-08-25 15:10:23
问题描述
书上说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
请问何解?
问题解答
回答1:不是小于等于64等于开放端口,是同时对一台机器的一堆端口发送ACK包,有某个端口返回的RST中TTL明显小于其他,则说明此端口可能开放。至于128/64这个情况,是因为*nix和windows默认的TTL值不同。一般可认为*nix的默认TTL值为64,windows为128。(具体到不同系统/内核版本,会有区别)
相关文章:
1. dockerfile - 为什么docker容器启动不了?2. docker镜像push报错3. macos - mac下docker如何设置代理4. docker images显示的镜像过多,狗眼被亮瞎了,怎么办?5. debian - docker依赖的aufs-tools源码哪里可以找到啊?6. nignx - docker内nginx 80端口被占用7. docker start -a dockername 老是卡住,什么情况?8. docker-machine添加一个已有的docker主机问题9. 关于docker下的nginx压力测试10. docker内创建jenkins访问另一个容器下的服务器问题
排行榜

网公网安备