20212914 2021-2022-2 《网络攻防实践》第三次(第五周)作业
1.实验内容
1.1 动手实践tcpdump
使用tcpdump开源软件对在本机上访问www.tianya.cn网站过程进行嗅探,回答问题:你在访问www.tianya.cn网站首页时,浏览器将访问多少个Web服务器?他们的IP地址都是什么?
1.2 动手实践Wireshark
使用Wireshark开源软件对在本机上以TELNET方式登录BBS进行嗅探与协议分析,回答如下问题并给出操作过程:
- 你所登录的BBS服务器的IP地址与端口各是什么?
- TELNET协议是如何向服务器传送你输入的用户名及登录口令?
- 如何利用Wireshark分析嗅探的数据包,并从中获取你的用户名及登录口令?
1.3 取证分析实践,解码网络扫描器(listen.cap)
- 攻击主机的IP地址是什么?
- 网络扫描的目标IP地址是什么?
- 本次案例中是使用了哪个扫描工具发起这些端口扫描?你是如何确定的?
- 你所分析的日志文件中,攻击者使用了那种扫描方法,扫描的目标端口是什么,并描述其工作原理。
- 在蜜罐主机上哪些端口被发现是开放的?
- 攻击主机的操作系统是什么?
2.实验过程
2.1 动手实践tcpdump
(1)查看本机的ip:192.168.200.2
(2)运行命令sudo tcpdump -n src 192.168.200.2 and tcp port 80 and "tcp[13]&18=2"
(3)打开浏览器,访问网站:www.tianya.cn,嗅探结果如下:
(4)在访问www.tianya.cn网站首页时,浏览器将访问多个Web服务器,他们的IP地址为:
34.107.221.82
124.225.206.22
124.225.69.77
117.18.237.29
18.224.230.138
108.138.212.128
2.2 动手实践Wireshark
打开Wireshark,在终端输入luit -encoding gbk telnet bbs.fudan.edu.cn
通过Wireshark的捕获,我们发现其IP地址为202.120.225.9,端口为23
用游客模式guest登录该服务器,利用telnet过滤出来,并追踪TCP流可以看到我们的用户名guest,密码为空。
可知Telnet协议在传输用户名和密码时采用的时明文传输。
2.3 取证分析实践,解码网络扫描器
(1)下载listen.pcap
用wireshark打开文件,分析数据包。可以判断请求数据包从172.31.4.178发起,为攻击机。响应数据包从172.31.4.188发出,为靶机。
(2)在kali中使用apt-get install snort安装snort
输入命令sudo snort -A console -q -u snort -c /etc/snort/snort.conf -r /home/kali/Downloads/listen.pcap
分析可知使用的攻击方式为nmap
其中参数意义:
- -A 设置报警模式
- -q 安静模式,不显示标志和状态报告
- -u 初始化后改变Snort的UID
- -c 使用配置文件,这会使得snort进入IDS模式,并从中读取运行的配置信息
- -r 从pcap格式的文件中读取数据包
(3)以arp作为筛选条件,分析数据包,可知一个进行了4次扫描。
第一次扫描:数据包序列5-6之间数据包较少,而之后又是一次arp,推测可知第一次扫描攻击者并未向靶机再发送其余数据包,其目的仅仅是确认主机是否活跃,对应命令是nmap -sP。
第二次扫描:通过观察第二次扫描的末尾数据包,发现攻击机针对 ssh、 TCP 和 UDP 的1端口,并使用了大量构造的标志位,以触发不同的响应包,主要是进行远程主机的操作系统探测。
猜测第二次扫描命令为nmap -O。
第三次扫描:第三次扫描的往返是13W数据包,估计扫描端口六万多,所以应该是指定端口扫描,使用namp -sS -p 1-65535进行了TCP SYN全端口扫描,其中-p指定扫描的端口数。
第四次扫描:以tcp.port==80作为筛选条件,判断攻击机与靶机之间http链接是否开启,分析可得嗅探命令为nmap -sV进行网络服务探测扫描
以tcp.flags.syn == 1 and tcp.flags.ack == 1作为筛选条件,确定哪些端口开放,得到开放的端口有21,22,23,25,53,80,139,445,3306,3632,5432,8009,8180
(4)在kali中输入命令apt-get install p0f,安装p0f
输入命令sudo p0f -r /home/kali/Downloads/listen.pcap,可知攻击机的操作系统为Linux 2.6.x
3.学习中遇到的问题及解决
问题:安装snort的时候失败
解决:
输入命令sudo apt-get update
后再安装,成功解决。
4.学习感悟和思考
通过本次实验,我了解了tcpdump的作用和基本使用方法,可以用它进行嗅探。在分析网络数据包时,我学会了可以利用各种过滤条件快速搜索到自己想要的内容,而且强化了我分析数据包的能力。