20252821 2025-2026-2 《网络攻防实践》第3周作业
20252821 2025-2026-2 《网络攻防实践》第3周作业
1.实验内容
本次实验涉及tcpdump与Wireshark的抓包分析,以及网络扫描取证。tcpdump部分通过过滤SYN包识别访问天涯首页时浏览器实际连接的多个Web服务器(含CDN节点)。Wireshark部分捕获TELNET登录BBS过程,发现用户名和口令明文传输,通过追踪TCP流可直接提取。取证分析listen.cap文件,识别攻击主机与目标IP,根据数据包特征判断扫描工具为Nmap,分析SYN半开扫描原理,确定蜜罐开放端口,并通过TTL等指纹推断攻击主机操作系统。
2.实验过程
2.1 动手实践tcpdump
- 访问www.tianya.cn网站首页时,浏览器将访问多少个Web服务器,他们的IP地址都是什么?
(1)登录kali,使用ip addr查询本机IP地址

确认本机IP地址为192.168.200.3
(2)使用tcpdump指令进行抓包
点击查看代码
sudo tcpdump -n src 192.168.200.3 and tcp port 443 and "tcp[13] & 18 = 2"
其中:
- sudo:以管理员权限抓包
- tcpdump:开源网络嗅探工具
- -n:不把 IP 解析成域名,只显示数字 IP
- src 192.168.200.3:只抓来源 IP 是192.168.200.3的包
- tcp port 80:只抓 HTTP 协议(80 端口)的包
- tcp[13] & 18 = 2:只抓 SYN 包 = 只抓 “发起连接” 的包

可以看出访问了很多服务器
ip地址为 125.36,11,69、 123.117.133.138、 220.197.30.52 剩余的已用红框圈出
2.2 动手实践Wireshark
(1)抓包
-
打开kali自带的wireshark软件,选择监听网卡为eth0
![image]()
-
输入命令
luit -encoding gbk telnet bbs.mysmth.net
![image]()
-
筛选telnet的包
![image]()
-
回答问题
(1)你所登录的BBS服务器的IP地址与端口各是什么

可以看到IP地址是120.92.212.76,端口是23
(2)TELNET协议是如何向服务器传送你输入的用户名及登录口令?
TELNET协议在传输用户名和登录口令时,采用明文传输的方式,不进行任何加密处理。具体过程如下:
当用户在客户端输入用户名时,每个字符被封装在TCP数据段中,以NVT(网络虚拟终端)ASCII格式逐个发送到服务器的23号端口。服务器收到后通常会回显字符,客户端显示用户输入。对于口令输入,客户端会关闭本地回显(通过TELNET选项协商),但用户键入的每一个字符依然以明文形式通过网络传送给服务器,只是不在本地屏幕上显示。攻击者只要在网络中捕获TELNET数据包,就能直接读取到完整的用户名和口令字符串。这种设计是TELNET协议最大的安全缺陷,因此如今已被SSH等加密协议取代。
(3)如何利用Wireshark分析嗅探的数据包,并从中获取你的用户名及登录口令?
利用Wireshark获取TELNET登录时的用户名和口令,关键在于捕获并分析明文传输的会话数据。具体操作步骤如下:
- 启动捕获:打开Wireshark,选择与BBS服务器通信的网络接口(如以太网或Wi-Fi),点击“开始捕获”按钮。
- 触发登录:在终端中使用TELNET命令登录BBS(例如 telnet bbs.example.com),然后依次输入用户名和口令。
- 停止捕获:登录完成后,点击Wireshark的“停止捕获”按钮。
- 过滤TELNET流量:在显示过滤器中输入 telnet 或 tcp.port == 23,只保留TELNET协议的数据包。
- 分析单个数据包:浏览数据包列表,找到带有“Telnet Data”字样的包。展开该包的“Telnet”协议部分,在“Data”字段中可以看到明文传输的字符。由于用户名通常逐字符发送,每个字符可能独立成一个数据包,但内容一目了然;口令输入时虽然本地无回显,但每个字符依然以明文形式出现在数据包的数据段中。
- 追踪TCP流:为更直观地查看整个会话,右键点击任意一个TELNET数据包,选择“Follow” → “TCP Stream”。在弹出的窗口中,Wireshark会重组整个TCP会话的传输内容,直接显示出用户输入的用户名、口令以及服务器的响应文本。
![image]()
2.3 取证实践
在kali虚拟机内打开listen.pacp

(1)攻击主机的IP地址是什么?网络扫描的目标IP地址是什么?
输入指令
点击查看代码
tshark -r /home/kali/Desktop/listen.pcap -T fields -e ip.src | sort | uniq -c | sort -nr

可看到
攻击主机的IP地址是172.31.4.178
网络扫描的目标IP地址是172.31.4.188
原因:
通过 tshark 提取抓包文件中的 ip.src 和 ip.dst 字段并统计频次。
172.31.4.178 作为源 IP 出现次数最多,且发包总数大于收包总数,符合攻击发起方的流量特征。
172.31.4.188 作为目的 IP 出现次数最多,且收包总数大于发包总数,符合被攻击目标主机的流量特征。
双方包数量接近且成对出现,表明这是一次双向交互的网络扫描或攻击流量。
(2)本次案例中是使用了哪个扫描工具发起这些端口扫描?

可以看到
本次案例中是使用了Nmap(Network Mapper)扫描工具发起这些端口扫描
(3)你所分析的日志文件中,攻击者使用了那种扫描方法,扫描的目标端口是什么,并描述其工作原理。

由于172.31.4.178是源IP,172.31.4.188是目标IP,所以我们重点关注这两个IP
我认为攻击者使用的扫描方法:ARP ping扫描
典型特征:攻击者向特定IP(此处为 172.31.4.188)反复发送ARP请求包,询问“Who has 172.31.4.188?”,以此探测该IP对应的主机是否在线。
异常行为:部分请求(如帧7、8)中,发送者IP(Tell字段)与目标IP相同(均为 172.31.4.188)。这种“自问自答”的ARP请求可能是为了绕过某些安全检测,或用于ARP欺骗的准备工作。
工作原理:
- 攻击者构造ARP请求包
目标IP设为 172.31.4.188,源MAC地址为攻击者自己的MAC(如 00:50:56:94:15:a0),源IP可伪造(如设为 172.31.4.178 或甚至与目标IP相同)。 - 发送到局域网
请求通常以广播形式(Broadcast MAC ff:ff:ff:ff:ff:ff)发送,使同一广播域内所有主机都能收到。 - 目标主机响应(若在线)
如果 172.31.4.188 在线,它会收到请求并回复一个ARP应答,告知自己的MAC地址(如帧2中 VMware_94:35:d1 回复 00:50:56:94:35:d1)。 - 攻击者确认存活
收到应答后,攻击者即可知道该IP对应的主机存在,并记录其MAC地址,为后续攻击(如ARP欺骗、中间人攻击、端口扫描)奠定基础。
(4)在蜜罐主机上哪些端口被发现是开放的?
使用指令进行查询
点击查看代码
tcp.flags.syn == 1 and tcp.flags.ack == 1 and ip.src == 172.31.4.188

可以看到端口有3306,139,23,80,25,22,53,21等是开放的
(5)攻击主机的操作系统是什么?
使用指令进行查询
点击查看代码
sudo p0f -r /home/kali/Desktop/listen.pcap | grep -E "os|client"

可看到攻击机的操作系统是Linux 2.6.x
3.学习中遇到的问题及解决
3.1 kali update报错

3.2 kali虚拟机没有网络
感谢赵一旭同学第二次作业遇到问题的部分,给我解答了疑惑
4.学习与感悟
从修复 Kali 更新故障到分析 ARP 扫描流量,再到 tcpdump/Wireshark 的嗅探实践与取证分析,我深刻认识到:网络安全是一项系统工程,既需要扎实的命令行排错能力(如 GPG 密钥导入、软件源配置),也离不开对底层协议的透彻理解。通过抓包分析,我直观地看到了 ARP 广播探测、TELNET 明文传输等风险,明白了为何需要加密与认证机制。同时,取证分析让我学会从日志中逆向攻击者的扫描方法、工具及开放端口,提升了攻防对抗的实战思维。这次学习不仅强化了我的动手能力,更让我意识到“知攻善防”的关键在于细节与协议基础。今后我将继续以实践驱动学习,筑牢安全防线。




浙公网安备 33010602011771号