端口扫描
【实训目的】
掌握端口扫描的基本概念和端口扫描的原理,掌握各种类型端口扫描的方法及其区别。
【场景描述】
在虚拟机环境下配置4个虚拟系统“Win XP1” “Win XP2” “Kali Linux”和“Metasploitable2”,使得4个系统之间能够相互通信。实训均在如图1所示场景中实现。
图0 网络拓扑
任务1 使用Nping工具向目标主机的指定端口发送自定义数据包
【实训步骤】
(1)在Kali Linux主机的终端中分别输入命令“nping -c 1 –tcp -p 80 –flag syn 192.168.0.1”,向活跃主机Win XP1的80和135端口分别发送一个“syn”的TCP数据包,如图1所示。
图1 发送标志位为“syn”的TCP数据包
结果表明,Win XP1没有打开80端口,所以返回RST/ACK数据包,而它打开了135端口,所以返回SYN/ACK数据包。
(2)在Kali Linux主机的终端中输入命令“nping -c 1 –tcp -p 80 –flag ack 192.168.0.1”和“nping -c 1 –tcp -p 135 –flag ack 192.168.0.1”。
向活跃主机Win XP1的80和135端口分别发送一个标志位为“ack”的TCP数据包,如图2所示。
图2 发送标志位为“ack”的TCP数据包
结果表明,因为两台主机没有建立连接,当目标主机收到标志位为“ack”的TCP数据包后,无论端口是否打开,都会返回RST数据包。
(3)在Kali Linux主机的终端中输入命令“nping -c 1 –udp -p 80 192.168.0.1”和“nping -c 1 –udp -p 445 192.168.0.1”,向活跃主机Win XP1的80和445端口分别发送一个UDP数据包,如图3所示。
图3 发送UDP数据包
任务2 使用Nmap工具进行端口扫描
【实训步骤】
(1)在Kali Linux主机的终端中输入命令“nmap -n -sS 192.168.0.1 -10”。扫描结果显示Win XP1主机打开了TCP端口,如图4所示。
图4 Win XP1扫描结果
(2)扫描结果显示Win XP2主机是活跃的,但1000个常用端口被过滤了,如图5所示。
图5 Win XP2扫描结果
(3)扫描结果显示Metasploitable2打开了TCP端口如图6所示。
图6 Metasploitable2扫描结果
任务3
【实训步骤】
(1)在Kail Linux主机中打开Zenmap工具,如图7所示。
图7 打开Zenmap工具
(2)输入要扫描的方式“nmap -sU”(UDP扫描),配置要扫描的主机地址“192.168.0.1”,再单击“扫描”按钮开始扫描,扫描结果如图8所示。
图8 Win XP1的扫描结果
【实训知识点】
1. 端口扫描:
- 概念:端口扫描是网络安全中的一项活动,用于检查目标主机上的端口,以确定哪些端口处于开放状态(可以接受连接),哪些是关闭状态,以及哪些可能被过滤(阻止)。
- 重要性:端口扫描是识别潜在漏洞、评估网络安全性和配置的关键步骤。它允许管理员了解网络上哪些服务正在运行,以及是否存在风险。
2. Nping工具:
- 概念:Nping是一个网络工具,它允许用户发送自定义数据包到目标主机,并观察响应。它可以模拟不同类型的网络流量和扫描。
- 重要性:Nping用于模拟各种类型的扫描,包括TCP和UDP扫描,以了解目标主机的端口状态和服务响应。
3. Nmap工具:
- 概念:Nmap(Network Mapper)是一款流行的开源端口扫描工具,用于确定目标主机的端口状态和服务信息。它可以识别开放的、关闭的、过滤的端口,并提供详细的网络映射信息。
- 重要性:Nmap是网络管理员和安全专家的核心工具之一,用于评估网络安全性、执行安全审计和检测潜在的漏洞。
4. Zenmap工具:
- 概念:Zenmap是Nmap的图形用户界面(GUI),提供了用户友好的界面,用于执行端口扫描和分析扫描结果。它简化了Nmap的使用。
- 重要性:Zenmap适用于那些更喜欢使用图形界面而非命令行的用户,它提供了更容易理解的报告和图形化的网络拓扑。
5. TCP和UDP协议:
- 概念:TCP(传输控制协议)和UDP(用户数据报协议)都是传输层协议。TCP提供可靠的、有序的、面向连接的通信,而UDP提供无连接的通信,它更轻量,但不保证数据的可靠性和顺序性。
- 重要性:了解TCP和UDP协议有助于选择适当的协议来发送扫描请求,以了解端口状态。
6. 标志位:
- 概念:TCP标志位是TCP头部中的特殊标志,用于控制连接的建立、维护和关闭。常见的标志位包括SYN、ACK、FIN等。
- 重要性:不同的标志位用于模拟不同类型的连接请求和响应,以确定目标主机的端口状态。
7. 端口状态:
- 概念:端口状态指示端口的可用性。常见的端口状态包括开放、关闭和过滤。开放表示端口可以接受连接,关闭表示端口不接受连接,过滤表示端口可能被防火墙或其他安全措施过滤。
- 重要性:了解端口状态有助于评估网络的安全性和发现潜在的漏洞。
8. 网络安全:
- 概念:网络安全是关于保护网络、系统和数据免受未经授权的访问、损害或破坏的领域。端口扫描是网络安全中的一部分,用于识别潜在的威胁和加强网络的安全性。
- 重要性:了解网络安全原则和工具对于维护网络安全和防范网络威胁至关重要。