20212911陈金翔-2022-3 网络攻防实践 第三次(第五周)作业
1.实验要求
1.1动手实践tcpdump
打开tcpdump开始抓包
访问天涯网站
对抓到的包过滤,输入过滤条件
sudo tcpdump src 192.168.200.2 and tcp dst port 80
筛选源地址为本机且端口为80的TCP包
访问的服务器主要是:
124.225.206.22
124.225.69.77
124.225.135.230
111.206.209.249
ping www.tianya.cn进行验证
1.2动手实践Wireshark
首先打开Wireshark,然后在终端输入luit -encoding gbk telnet bbs.fudan.edu.cn
进入复旦大学bbs论坛
通过Wireshark的捕获,我们发现其IP地址为202.120.225.9,其端口为23
追踪TCP流发现登录名为guest
1.3取证分析实践
下载listen.pcap,将其放入kali
用wireshark打开后,使用菜单栏中Statistics 下的Conversation ,选择IPV4
发现172.31.4.178和172.31.4.188之间有大量的数据往来
选择过滤TCP数据包,发现请求数据包是从172.31.4.178发起,响应数据包是从172.31.4.188发出,
可以确定172.31.4.178是攻击机,172.31.4.188是靶机
a.攻击主机的IP地址是172.31.4.178
b.网络扫描目标的IP地址是172.31.4.188
c.本次案例中是使用了哪个扫描工具发起这些端口扫描?你是如何确定的?
在kali中使用apt-get install snort安装snort
执行命令
sudo snort -A console -q -u snort -c /etc/snort/snort.conf -r /home/kali/Desktop/listen.pcap
通过snort扫描发现攻击方式为nmap
d.你所分析的日志文件中,攻击者使用了那种扫描方法,扫描的目标端口是什么,并描述其工作原理。
nmap会在每次扫描前利用ARP协议询问靶机的mac地址,所以我们可以根据ARP协议判断每次扫描具体是从那个包开始的,我们发现攻击机总共发送了4次ARP请求,可见总共发起了4次nmap扫描
1.主机活跃探测:
第一次扫描在5和6之后,紧接着又是一次arp,第一个和第二次之间并没有数据包。
第一次扫描的目的仅仅是确认主机活跃,所用的命令应该是nmap -sP
2.操作系统探测
第二次扫描之后出现了大量的TCP,UDP,ICMP协议的数据包,
Nmap内部包含了很多已知系统的指纹特征,根据返回的数据包生成系统指纹与样本库作比较,查找匹配的操作系统,
猜测第二次扫描为操作系统nmap -O扫描
3.全端口扫描
第三次扫描后,出现了大量的TCP数据包,排到了大约13W,但大多数端口处于不可达状态,
所以其实大概扫描了6W多个端口,故推测应该是使用nmap -sS -p 1-65535进行了TCP SYN全端口扫描。
半连接扫描不使用完整的TCP连接。攻击方发起SYN请求包;如果端口开启,目标主机回应SYN ACK包,
攻击方再发送RST包。如果端口未开启,目标主机直接返回RST包结束会话
4.服务扫描
第四次扫描后出现了ICMP,HTTP,TELNET,SMB,SMTP等协议数据,因此猜测攻击机使用nmap -sV,进行网络服务探测扫描
网络服务探查主要依据网络服务在实现应用层协议时所包含的特殊指纹信息。
扫描主机向目标主机发送特制的数据包,根据反馈包中包含的指纹特征,识别开放端口的网络服务。
e.在蜜罐主机上哪些端口被发现是开放的
通过tcp.flags.syn == 1 and tcp.flags.ack == 1过滤出[SYN,ACK]数据包,确定哪些端口开放,
得到开放的端口有21,22,23,25,53,80,139,445,3306,3632,5432,8009,8180
f.攻击主机的操作系统是什么?
输入 apt-get p0f安装p0f
sudo p0f -r /home/kali/Desktop/listen.pcap
操作系统为Linux 2.6.x
2.学习中遇到的问题及解决
问题1:对p0f和snort不熟悉,不知道该用什么命令
解决方法:观看云班课上的视频讲解
问题2:追踪TCP流后在包中找了好久没找到用户名
解决方法:最后发现用户名在追踪TCP流的弹窗里
3.学习感想和体会
熟悉了tcpdump对访问网站的过程进行嗅探的流程
了解了nmap扫描的特征以及不同扫描后大致会出现的包特征