#20199134 2019-2020-2 《网络攻防实践》第4周作业
1.实践内容
###1.1 网络嗅探 ####1.1.1定义 网络嗅探利用计算机网络接口截获其他计算机数据报文,以监听数据流中包含的有效信息。由于捕获到的数据报文是经过封包处理的二进制数据,故还要结合网络协议分析技术。 ####1.1.2原理 目前,有线局域网和无线局域网最流行的链路层协议为以太网和WIFi。以以太网上的嗅探技术为例进行讲解。以太网在部署局域网时分为共享式网络与交换式网络。共享式网络使用集线器连接;交互式网络使用交换机组件,数据通过交换机转发。 ####1.1.3嗅探方式 1)MAc地址洪泛攻击 2)MAc地址欺骗 3)ARP欺骗 ####1.1.4使用工具 类UNIX平台上最常用的包括libcap抓包开发库、tcpdump以及wireshark。Windows平台上有类UNIX平台上对应的移植版本,此外还有snifferPro等。 ####1.1.5防范措施 1)采用安全的网络拓扑:对网络进行合理的分段,从而尽量使网络包只被转发到目标主机上。对网段分段越细,网络嗅探能够搜集到的信息就越少。 2)用静态ARP或MAC-端口映射表代替动态机制:通过在重要的主机或网关上设置静态的ARP对应表,以及在交换机上设置静态的MAc-端口映射表,能够防止利用MAc地址欺骗、ARP欺骗。 3)避免使用明文传输口令或敏感信息的网络协议:使用安全性强的网络协议进行替代。 ##1.2协议分析 ###1.2.1原理 网络协议分析从底向上逐层解析网络协议,同时进行IP分片包以及TCP会话的重组,解析与保存各个网络层次上的所有包头字段信息,以及最高层的应用层数据。 数据包解包过程如下: ###1.2.2技术实现 在开源的软件如tcpdump、wireshark、snort中都有相应源码实现。
2.实践过程
##2.1、tcpdump ###使用tcpdump开源软件对在本机上访问www.tianya.cn网站过程进行嗅探,回答问题:你在访问www.tianya.cn网站首页时,浏览器将访问多少个Web服务器?他们的IP地址都是什么?
运行命令 tcpdump src 192.168.6.8 and tcp dst port 80
通过上图结果可知,在访问tianya.cn的过程中,访问的web 服务器如下: 223.119.248.10 来自 中国 香港特别行政区 移动 221.182.218.244 来自 中国 海南省 海口市 移动 120.201.249.88 来自 中国 辽宁省 丹东市 移动 ##2.2 、wireshark ###使用wireshark对在本机上以telnet方式登录BBS进行嗅探与协议分析。1)BBS服务器的IP地址与端口?2)telnet协议是如何向服务器传送你输入的用户名及登录口令?3)如何利用wireshark分析嗅探的数据包,并从中获取用户名及登录口令? (1)打开 wireshark ,选择菜单栏上捕获 → 选项,勾选 WLAN 网卡
(2)打开 telnet 服务(win10中默认是关闭的),控制面板 ——> 启用或关闭 Windows 服务 ——> 勾选 Telnet
(3)在终端输入telnet bbs.fudan.edu.cn进入论坛 (4)可以看到其IP地址为202.120.225.9;端口为 23 ;输入 guest 进入
Telnet协议在传输用户名和密码时采用的时明文传输。追踪TCP流,可以看到我们的用户名guest,密码为空
##2.3、解码网络扫描 ###目标是分析由人为构造的到一台蜜罐主机的5次不同类型端口扫描。需要指出的是,这次案例分析中的端口扫描流量并不是从“野外”捕获的,而是特意构造的,这次入门级的案例分析挑战的目的完全是为了提供学习和训练的机会。 ###网络入侵检测器-snort捕获每次扫描的流量并存入tcpdump格式二进制网络日志文件中。这次挑战的任务每组从这5次扫描的日志文件中随机选择两个,分析这两个文件,回答所列的问题,并撰写详细的实验分析报告。通过这次挑战,你能够学习到数据包抓取技术的使用方法,以及使用数据包解码工具tepdump或Wireshark分析网络数据包的技能。 ###1.攻击主机的IP地址是什么? ###2.网络扫描的目标IP地址是什么? ###3.本次案例中是使用了哪个扫描工具发起这些端口扫描?你是如何确定的? ###4.你所分析的日志文件中,攻击者使用了哪种扫描方法,扫描的目标端口是什么,并描述其工作原理。 ###5.在蜜罐主机上发现哪些端口是开放的? ###6.额外奖励问题:攻击主机的操作系统是什么?
(1)下载云班课上分享的listen.pcap文件,用wireshark打开
菜单栏中统计-->Conversation-->选择IPV4
只有172.31.4.178和172.31.4.188之间有大量的双向网络数据包
可以确定172.31.4.178是攻击主机,172.31.4.188是被扫描的目标主机。 (2)通过snort工具解析wireshark的pcap文件,可以得出通过nmap工具对端口进行了扫描
sudo apt-get install snort sudo chmod 777 /etc/snort/snort.conf 将listen.pcap文件粘贴到/home/kali里 sudo snort -A console -q -u snort -c /etc/snort/snort.conf -r /home/kali/listen.pcap
可以看出是采用namp发起的扫描。
(3)在Wireshark中筛选ARP
通过 arp 数据包可以看到攻击机进行了主机扫描nmap -sP 172.31.4.178
icmp过滤发现有数据包交互,说明进行了icmp ping扫描,即nmap -sP 172.31.4.188 观察到数据包有大量进行了TCP SYN扫描,攻击机进行了nmap -sS 172.31.4.188 扫描 (4)在蜜罐主机上发现那些端口是开放的 tcp.flags.syn == 1 and tcp.flags.ack == 1
得知21,22,23,25,53,80,139,445,3306,3632,5432,8009,8180这几个端口是活跃的
(5)攻击主机的操作系统是什么
通过 p0f 工具探测到攻击机操作系统,探测到攻击机操作系统为 linux 2.6
3.学习中遇到的问题及解决
- 问题1:snort安装失败
- 问题1解决方案:更新源列表 sudo apt-get update
- 问题2:更新源列表 sudo apt-get update也失败
- 问题2解决方案:根据错误提示,查找到好多解决方案,可惜没有一个好使,弄了半天,然后把蜜罐和靶机都打开了就成功更新了。
4.实践总结
在实践中碰见一些奇怪的坑问题,真的是太难解决了,浪费半天时间还是解决不了,太锻炼我的耐心了。
参考资料
- [《网络攻防技术与实践》]