TCP FIN 扫描
TCP FIN 扫描是一种隐蔽的网络扫描技术,用于探测目标主机上的端口状态,而不需要完成完整的TCP三次握手过程。
工作原理
- 扫描者向目标端口发送一个FIN标志位设置为1的TCP数据包(FIN包通常用于正常连接终止)
- 根据响应判断端口状态:
- 如果端口关闭:目标主机将返回RST(复位)响应
- 如果端口开放:大多数系统会丢弃FIN包,不返回任何响应(违反RFC 793标准)
特点
- 隐蔽性:比SYN扫描更隐蔽,因为不建立完整连接
- 绕过防火墙:可能绕过简单的防火墙规则,因为FIN包看起来像正常连接终止
- 不可靠性:结果可能不准确,因为有些系统(如Windows)对FIN包会返回RST无论端口是否开放
与其他扫描类型的比较
- SYN扫描:更可靠但不够隐蔽
- NULL扫描:发送没有任何标志位的TCP包
- XMAS扫描:发送FIN/URG/PUSH标志位都设置的TCP包
使用示例
在Nmap中,可以使用以下命令进行FIN扫描:
text
nmap -sF <目标IP>
防御措施
- 配置防火墙记录和阻止异常TCP标志组合
- 使用入侵检测系统(IDS)监测异常扫描活动
- 保持系统更新以正确处理非常规TCP包
FIN扫描是网络管理员和安全人员常用的工具,但也可被攻击者用于网络侦察。