网络协议分析 实验六 TCP和端口扫描
文章目录
- 实验6.1 TCP(Transfer Control Protocol)
- 练习二 利用仿真编辑器编辑并发送TCP数据包
- 实验6.2 UDP端口扫描
- 实验6.3 TCP端口扫描
- 练习一 TCP SYN扫描
- 练习二 TCP FIN扫描
实验6.1 TCP(Transfer Control Protocol)
建立:syn,syn ack,ack
数据传送:tcp_data,ack
释放:fin ack,ack,fin ack,ack
无数据传输时序号加一
有数据传输时序号加数据长度加1
syn同步标志,syn,syn ack中置1
fin结束标志 fin ack中置1
ack确认标志 除syn,其他置1
MTU-ip和tcp头(40B)
练习二 利用仿真编辑器编辑并发送TCP数据包
实验6.2 UDP端口扫描
向目标端口发送一个UDP协议分组。 如果目标端口以“ICMP port unreachable”消息响应,那么说明该端口是关闭的; 反之,如果没有收
到“ICMP port unreachable”响应消息,则端口是打开的。
向未开放的端口发送数据,会受到ICMP目的端口不可达
报文(类型=3,代表目的不可达,代码=3代表端口不可达)
利用icmp不可达差错报文。若发送的端口是关闭的,发送方收到一个icmp差错报文显示目的不可达
实验6.3 TCP端口扫描
练习一 TCP SYN扫描
TCP SYN扫描:这种方法是向目标端口发送一个SYN分组(packet),如果目标端口返回SYN/ACK标志,那么可以肯定该端口处于检听状态; 否则,返回的是RST/ACK标志。
练习二 TCP FIN扫描
Unix系统:开放的端口没有回复,关闭的端口回复RST(复位)标志。根据回复判断端口是否开放。
WINDOWS 系统:不管端口是否打开,都回复RST。所以用FIN扫描WINDOWS系统,不能判断端口是否开放。
可以根据这个区分对方的操作系统。