20242909 2024-2025-2 《网络攻防实践》第三次作业
20242909 2024-2025-2 《网络攻防实践》实验三
1.实验内容
1.1 网络嗅探工具实践
tcpdump 工具的使用
通过 tcpdump 工具,对访问某一网站时的网络流量进行捕获和分析。实验重点在于识别浏览器访问的多个 Web 服务器的 IP 地址,并分析其通信模式。通过解析捕获的数据包,能够清晰地观察到浏览器与不同服务器之间的交互过程,从而了解网站的多服务器架构。
1.2 抓包工具实践
Wireshark 工具的使用
利用 Wireshark 对本地计算机通过 TELNET 协议登录 BBS 的过程进行抓包分析。实验内容包括:
捕获并解析 TELNET 协议的数据包,获取 BBS 服务器的 IP 地址和端口信息。
分析 TELNET 协议传输用户名和登录口令的方式,了解其明文传输的特性。
通过 Wireshark 的过滤和分析功能,从捕获的数据包中提取用户名和登录口令,验证 TELNET 协议的安全性缺陷。
1.3 网络取证分析实践
网络扫描器日志分析
对提供的网络扫描器日志文件(listen.pcap)进行深入分析,具体内容包括:
攻击主机与目标分析
识别攻击者使用的端口扫描工具及其工作原理。
扫描方法与目标端口分析
通过分析日志文件中的数据包,解析攻击者采用的扫描方法(如 SYN 扫描、ACK 扫描等)。
确定扫描的目标端口范围及其开放状态。
攻击主机操作系统识别:
使用 p0f 工具对攻击主机的操作系统进行指纹识别,确定其操作系统类型及版本。
2.实验过程
2.1 使用tcpdump进行嗅探实验
登录kali虚拟机打开终端输入命令ifconfig查看到卡里虚拟机的ip地址为192.168.200.3
切换到root权限后输入命令tcpdump -n src 192.168.200.3 and tcp port 80 and "tcp[13] & 18 =2"对本机的网络访问进行嗅探
打开chrome浏览器访问www.luogu.com.cn,查看终端中显示的嗅探信息,发现在访问网站时浏览器先后访问了ip地址为172.67.201.114.80和180.95.171.87.80的两个服务器
2.2利用 Wireshark 对本地计算机通过 TELNET 协议登录 BBS 的过程进行抓包分析
打开kali自带的wireshark软件,选择监听网卡为eth0
输入命令luit -encoding gbk telnet bbs.mysmth.net访问清华bbs服务器,输入用户名area1man和设定的密码进行登录
打开wireshark查看抓到的包,输入telnet筛选,可以看到在地址192.168.200.3(本机)和120.92.212.76(服务器)之间有大量的往来数据包
追踪TCP数据流后可以看到在输入用户名和密码登录时服务器和客户端之间的数据交流红色字母为客户端向服务器发送的数据,蓝色字母为服务器向客户端发送的数据。在输入用户名时每输入一个字符客户端向服务器发送该字符同时服务器立即回传该字符,据此可以通过数据流分析出登录使用的用户名为area1man。用户名输入结束后提示输入密码,客户端每输入一个字符就向服务器发送该字符,服务器收到该字符后回显一个*字符,根据输入密码时客户端向服务器发送的数据流可以得出用户的密码。用户名与密码核验无误后进入到论坛版块中。
据此可以总结telnet协议的工作流程
建立连接
• 当用户在本地计算机(Telnet 客户端)中运行 telnet 命令并指定远程主机时,客户端会发起到远程主机的 TCP 连接。默认情况下,Telnet 使用 TCP 23 端口进行通信。
• 客户端连接到远程计算机后,通常会要求用户提供用户名和密码进行身份验证。用户在客户端输入用户名和密码时每输入一个字符客户端即向服务器发送该字符,服务器收到后立即回显一个字符,并且telnet 协议并没有加密这些凭据,因此这些信息以明文形式发送。
• 用户在客户端输入认证信息后,服务器验证身份。如果身份验证通过,则允许用户进入远程系统。
数据交换
• 身份验证通过后,用户可以输入命令与远程计算机交互。所有输入的数据将通过 Telnet 协议发送到远程计算机,远程计算机执行相应的操作后,将结果返回给客户端。
关闭连接
• 当用户结束会话时,可以通过发送命令或直接关闭 Telnet 客户端来断开连接。
• 远程主机会收到断开请求,并关闭与客户端的连接。此时,Telnet 会话结束。
2.3 使用解码网络扫描器(listen.pcap)进行取证分析实践
使用wireshark打开listen.pcap,可以看到地址为172.31.4.178的主机发送了大量的TCP数据包给地址为172.31.4.188的主机,据此可断定172.31.4.178为攻击机,172.31.4.188为受害方
在终端的root权限下输入命令apt install p0f安装p0f工具
切换到listen.pcap文件所在的目录后输入命令p0f -r listen.pcap > result.txt,使用p0f工具对listen.pcap生成分析文件
打开result文件可以发现攻击方使用了namp扫描工具
过滤tcp数据包,观察数据包的信息可以发现攻击方使用了TCP connect扫描,特征:攻击机发送SYN,靶机回复SYN/ACK,攻击机回复RST
筛选arp协议,观察数据包信息发现,攻击机通过arp报文获取靶机的mac地址
观察这部分tcp包可以判断出这是攻击机使用半开放扫描攻击靶机,一直发起tcp连接请求但是不理会靶机的恢复,直到连接超时靶机恢复RST重置连接
通过tcp.flags.syn == 1 && tcp.flags.ack == 1过滤,查看靶机开放的端口,如图所示,开放的端口有21 22 23 25 53 80 139 445 3306 3632 5432等
打开生成的result.txt文件,搜索os,发现攻击机的操作系统为 Linux 2.6.X
3.学习中遇到的问题及解决
- 问题1:无法安装p0f,在使用apt安装p0f包时,总是出现依赖关系的问题,使用更新包等方法仍然无用,最后在网上搜索发现原因是安装的kali版本过老(2021)而使用的apt源过新导致apt安装一直无效
- 问题1解决方案:重新安装了新版的kali虚拟机
4.学习感悟、思考等)
配的环境太旧或太新有时都不太合适,应当仔细斟酌所需要的环境的版本,仔细想来之前配环境都是因为太新导致许多代码需要修改,结果这次是系统太老导致新的软件包依赖关系出问题,吸取教训了。