Download presentation
Presentation is loading. Please wait.
1
信息安全综合实验 张焕杰 中国科学技术大学网络信息中心 james@ustc.edu.cn
Tel: (O)
2
第二章端口扫描技术原理与实践 课程目的 学习端口扫描基本原理 理解端口扫描技术在网络攻防中的作用 熟练掌握网络扫描工具Nmap的使用
计算机网络安全基础 2019年1月17日 第二章端口扫描技术原理与实践 课程目的 学习端口扫描基本原理 理解端口扫描技术在网络攻防中的作用 熟练掌握网络扫描工具Nmap的使用 计算机网络安全基础
3
2.1 TCP基本协议 TCP 面向连接的字节流传输层服务 4元组识别一个连接 建立连接、传输数据、断开连接 本地IP 本地端口 远端IP
远端端口 建立连接、传输数据、断开连接
4
TCP 报头标志位 6个比特标志位 SYN FIN RST 用来建立连接,同步双方的序列号。 SYN=1 & ACK=0, 连接请求包
释放连接包 RST 复位一个连接 如果收到一个分段不属于该主机的任何一个连接,发送RST包
5
TCP 报头标志位(2) URG ACK PSH 紧急数据。表示数据包中包含紧急数据。 确认标志位。表示数据包中的确认号有效。
PUSH,如果为1,接受端应尽快把数据传送给应用层。
6
TCP 可靠性 通过校验和、定时器、数据序号、应答号来实现数据的可靠传输
7
TCP中的序列号 为每个发送的字节分配一个序号,用来保证数据的顺序,剔除重复的数据 一个TCP连接包含两个流(分别代表每个方向的数据)
建立连接时流的发送方选择一个初始序号ISN(initial sequence number) ISN必须随机选取才安全
8
三次握手 的过程 建立TCP连接时需要3个数据包 Client Server SYN SYN ACK ACK
9
1 CS SYN SEQ=104 ACK=0
10
2 SC SYN ACK SEQ=319 ACK=105
11
3 CS ACK SEQ=105 ACK=320
12
4 SC PSH ACK SEQ=320 ACK=105 Data 15bytes
13
5 CS PSH ACK SEQ=105 ACK=335 Data 15bytes
14
6 SC ACK SEQ=335 ACK=120 Data 15bytes
15
RFC 793规定的处理 SYN或FIN到达关闭的端口,丢弃数据包并返回RST RST到达监听的端口,RST被丢弃
ACK到达监听的端口,丢弃数据包并返回RST SYN=0的数据包到达监听的端口,丢弃数据包 SYN=1的数据包到达监听的端口,进行3次握手 FIN的数据包到达监听的端口,丢弃数据包
16
2.2 端口扫描技术 端口扫描 Port scan A port scan is a series of messages sent by someone attempting to break into a computer to learn which computer network services, each associated with a "well-known" port number, the computer provides. 确定目标系统正在运行的TCP/UDP服务 在扫描时希望隐藏自己
17
端口扫描分类 按照行为 按照技术 Vanilla (香草) 扫描所有端口 Strobe 扫描部分端口(如仅仅扫描21/23/25)
Sweep 扫描很多机器的一个端口 按照技术 比较简单的 隐藏自身的
18
TCP connect扫描 直接用connect连接对方的端口 优点 缺点 连接成功,说明对方端口是开放的 简单,不需要特权用户 容易被察觉
在应用日志中会有记录下来一些没有任何动作的连接
19
TCP SYN扫描 Half open scan 在3次握手完成前终止连接 方法 优点 缺点 发SYN 如果收到RST,说明端口关闭
如果收到SYN ACK,说明端口开放,发送RST 优点 应用程序日志没有记录 缺点 复杂,需要自己构造数据包 很多系统要超级用户才能进行 容易被发现
20
FIN Xmas Null扫描 FIN扫描 Xmas/Null扫描 优点 缺点 FIN对一个关闭的端口,会触发RST包
FIN对一个打开的端口,不会触发RST包(对某些OS) Xmas/Null扫描 发送带/不带FIN URG PSH的包 优点 能通过仅仅检查SYN的包过滤防火墙 缺点 不是所有系统都支持
21
FTP Bounce Scan 利用FTP的2个通道中的数据通道 发送假的PORT命令,让ftp server连接到要扫描的端口 优点 缺点
隐藏自己 缺点 复杂
22
Ping 扫描 确定哪些机器是up的 2种方式 ICMP TCP ping 类似于ping,发送icmp消息给目标,看是否有返回
给目标特定的tcp端口(如常用的80)发送ack消息,如果返回rst,说明机器up。
23
UDP 端口扫描 UDP是无连接的 向某个端口发送UDP数据 如果该端口关闭,会触发ICMP port unreachable 缺点
24
2.3 nmap工具 http://www.insecure.org/nmap/ 介绍port scan和nmap的文章 Man pages
Man pages
25
Nmap使用 在使用nmap的同时,在另一个terminal中用tcpdump察看nmap发送和接收的数据包
Ping扫描:了解哪些机器是up的 namp –sP 缺省时同时使用发送icmp和对80端口发送ack来探测 可以用nmap –sP –P0 不发送icmp消息 实验: 用tcpdump看2种方式的异同
26
Nmap使用 TCP connect扫描: namp –sT 实验: 用tcpdump看扫描过程
27
Nmap使用 TCP FIN, XMAS, NULL扫描: 实验: namp –sF 202.38.64.1
namp –sX namp –sN 实验: 用tcpdump看扫描过程
28
Nmap使用 UDP扫描: namp –sU 实验: 用tcpdump看扫描过程
29
Nmap使用 idle扫描: 实验: http://www.insecure.org/nmap/idlescan.html
用tcpdump看扫描过程
Similar presentations