实践三 网络嗅探与协议分析

1 实验过程

1.1 动手实践tcpdump

使用tcpdump开源软件对在本机上访问www.tianya.cn网站过程进行嗅探,回答问题:你在访问www.tianya.cn网站首页时,浏览器将访问多少个Web服务器?他们的IP地址都是什么?

访问天涯主页,输入"sudo tcpdump src 192.168.200.4 and tcp dst port 80"。

1.1 www.tianya.cnIP

从图中可以看出有一下IP

117.18.237.29

60.217.246.6

124.255.135.230

124.255.65.173

124.255.206.22

124.255.135.230

117.18.237.29

然后通过"nslookup tianya.cn"命令查看www.tianya.cn对应的IP地址,验证我们tcpdump的正确性。

1.2 验证www.tianya.cnIP

可以看出124.255.206.22www.tianya.cnIP

1.2 动手实践Wireshark

使用Wireshark开源软件对在本机上以TELNET方式登录BBS进行嗅探与协议分析,回答如下问题并给出操作过程:

1.2.1 你所登录的BBS服务器的IP地址与端口各是什么?

首先打开Wireshark,然后在终端输入"luit -encoding gbk telnet bbs.fudan.edu.cn"进入复旦大学BBS论坛。

1.3 复旦大学BBS论坛

之后利用Wireshark捕获,选择Protocol方式,捕获后可以看到地址为:202.120.225.9,可以看出端口为23

1.4 端口和IP

1.2.2 TELNET协议是如何向服务器传送你输入的用户名及登录口令?

Telnet协议在传输用户名和密码时采用的时明文传输。Telnet连接的时候直接建立TCP连接,所有传输的数据都是明文传输,所以是一种不安全的方式。

1.2.3 如何利用Wireshark分析嗅探的数据包,并从中获取你的用户名及登录口令?

点击相关数据包进行分析,追踪TCP流,选择对话,可以看出是明文传输。

1.5 用户名和密码

可以看到嗅探的数据包用户名为guest,密码为空。

1.3 取证分析实践,解码网络扫描器(listen.cap)

1.3.1 攻击主机的IP地址是什么?

首先下载云班课上分享的listen.pcap,用wireshark打开待分析的二进制记录文件。然后在菜单栏中Statistics(统计)下的Conversation(会话),选择IPV4

1.6 统计图

可以看出只有172.31.4.178172.31.4.188之间有大量的双向网络数据包,因此可初步确定两者为攻击主机IP和目标主机IP。再选择过滤TCP数据包,查看会话数据包内容,所有的请求数据包则是从172.31.4.178发起,可以确定172.31.4.178是攻击主机。

1.7 攻击机和目标IP

因此攻击主机的IP地址是172.31.4.178

1.3.2 网络扫描的目标IP地址是什么?

1.7可以看出响应数据包均是从172.31.4.188发出,172.31.4.188是被扫描的目标主机。网络扫描目标的IP地址是172.31.4.188

1.3.3 本次案例中是使用了哪个扫描工具发起这些端口扫描?你是如何确定的?

 

我认为使用的是nmap扫描工具。

因为nmap扫描时使用的指令有一定的特征。即nmap扫描的原理和ping类似,在每次扫描前,nmap会通过arp更新目标MAC地址。根据此特点进行arp包过滤,得到的文件如图1.8。其中找到了四次"who has 172.31.4.188?tell172.31.4.178",从而可以判定四次扫描的起点是No.5No.7No.2071No.133220这四个数据包。因此第一步次扫描猜测是使用"nmap -sP"指令。

1.8 分析扫描工具

1.3.4 你所分析的日志文件中,攻击者使用了那种扫描方法,扫描的目标端口是什么,并描述其工作原理。

由于是模拟实验,扫描机和目标机在同一网段,nmap也可以对该类目标采用arp协议进行探测,可以直接在广播域内广播arp request报文,如果收到arp response报文即为活跃。可以得到目标主机mac地址。由于我们已经确定了这些扫描是由nmap所发起的,而nmap在发起端口扫描之前总是先通过ping扫描和针对80端口的探测确定目标主机是否活跃。通过过滤器搜索icmp,可以定位icmp协议对应的ping扫描,实现两次ping扫描。

1.9 icmp报文的ping扫描

在数据包中存在大量SYN请求包,这是攻击机57738端口向目标主机进行的TCP SYN扫描,目的是用于扫描目标主机的端口是否活跃,如果活跃则目标主机会反馈一个SYN|ACK包,攻击机端口会立刻发送一个RST包关闭这个链接,目标端口不活跃则会反馈RST|ACK包,指令可能为"nmap -sS -p XXX端口 172.31.4.188"。

1.10 扫描端口

1.3.5 在蜜罐主机上哪些端口被发现是开放的?

输入"tcp.flags.syn == 1 and tcp.flags.ack == 1"过滤条件,可以过滤出SYN|ACK的数据包,即为目标主机反馈扫描机的端口活跃信息。可以确定21,22,23,25,53,80,139,445,3306,3632,5432,8009,8180这几个端口是活跃的。

1.11 活跃端口

1.3.6 攻击主机的操作系统是什么?

首先需要更新软件源中所有的列表以便安装p0f

1.12 更新软件源中所有的列表

然后安装p0f

1.13 安装p0f

输入指令"p0f -r /home/kali/Desktop/listen.pcap",对文件进行分析。

1.14 p0f开始分析

进行分析探测得到结果,认为是Linux 2.6.X

1.15 分析结果

2 学习中遇到的问题及解决

2.1 pf0的安装

pf0安装前需要先更新更新软件源中所有的列表,否则无法安装。

2.2 复旦大学BBS

LunixWindows进入复旦大学BBS的指令不一样,使用错误会有乱码。

3 学习感想和体会

通过本次实验,我学习的网络嗅探与协议分析的基本原理和方法。更熟悉使用了各种网络工具,特别是对各种报文的过滤方法。提高了从繁杂的信息中获取有用信息的能力。也提高的自我学习的能力,让我受益匪浅。

posted @ 2022-03-30 19:37  戈壁胡杨  阅读(158)  评论(0编辑  收藏  举报