20199131 2019-2020-2 《网络攻防实践》第四周作业

学号 20199131-2020-2 《网络攻防实践》第四周作业

1.知识点梳理与总结

1.1网络嗅探:

  • 利用计算机的网络接口截获发往其他的计算机的数据报文,网络嗅探需要用到网络嗅探器,嗅探器捕获到的数据报文是经过封包处理后的二进制数据,因此通常会用到网络协议分析技术来解析嗅探到的网络数据来恢复TCP/IP协议栈上各层网络协议的内容以及实际发送的应用层信息
  • TCP/IP 协议栈是一系列网络协议的总和,是构成网络通信的核心骨架,它定义了电子设备如何连入因特网,以及数据如何在它们之间进行传输。TCP/IP 协议采用4层结构,分别是应用层、传输层、网络层和链路层
  • 嗅探器按照链路可以分为:有线局域网(以太网、Wi-Fi)和无线局域网嗅探器;区别是无线嗅探器可以读取和分析符合如IEEE 802.11等无线传输协议的数据包。
  • 以太网的工作原理:以太网是共享通信信道数据以帧为单位传输,以太网帧头中包括发送源的MAC地址与目标MAC地址。当站点需要发送数据时,通过协议栈进行TCP/IP封包,在数据链路层“装配”帧头与帧尾,发送至共享通信介质上。网卡驱动程序在正常模式下,只会接受目标MAC地址与自身MAC地址相匹配的数据帧。但是网卡的混杂模式将会接收一切通过它连接共享通信媒介的数据帧。
  • 共享式网络和交换式网络:
    通过集线器进行连接的网络称为共享式网络,其网络拓扑基于总线方式,物理上是广播的。这种连接方式导致同一集线器上连接的所有主机在发送数据包时,会发往每一台主机,任一主机都能嗅探整个集线器上的网络流量。
    通过交换机组建的网络称为交换式网络,在交换机中存在“MAC地址-端口映射表”,从而将数据包将发送到特定的网卡。
  • 交换式网络中的网络嗅探技术:
    MAC地址洪泛攻击:向交换机发送大量含有虚构MAC地址和IP地址的数据包,使映射表溢出无法处理,交换机进入类似集线器的工作方式。
    MAC欺骗:假冒所要监听的主机网卡,是交换机更新映射表。
    ARP欺骗(最常用):利用IP地址与MAC地址之间进行转换时的协议漏洞,达到MAC欺骗.

网络协议分析技术

  • 原理:网络嗅探截获的是通过封包过程组装的二进制格式原始报文内容,为了获取其包含信息,要根据TCP/IP协议栈的协议规范重新还原数据包在各个协议层上的协议格式及内容
  • 网络协议分析的典型过程包括以下几个步骤:
    (1)网络嗅探得到的原始数据是在链路层传输的二进制数据包。
    (2)对帧结构进行分析,得到帧头各字段结构,根据帧头字段确定网络层的协议类型,并提取包含网络层数据的内容。
    (3)进一步对IP数据包进行分析,确定传输层协议类型,提取传输层数据内容。
    (4)根据TCP或UDP目标端口确定确定具体的应用层协议,得到应用层特定协议的应用交互内容。
    (5)依据相应应用层协议对数据进行整合恢复,得到实际传输数据。

TCPDump命令



2.实践过程

任务一 tcpdump

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

查询本机IP地址和正在使用的网卡接口

易知浏览器访问了三个Web服务器 IP地址如下图所示:

任务二 wireshark

使用Wireshark开源软件对在本机上以TELNET方式登录BBS进行嗅探与协议分析,回答如下问题并给出操作过程:
(1)你所登录的BBS服务器的IP地址与端口各是什么?
(2)TELNET协议是如何向服务器传送你输入的用户名及登录口令?
(3)如何利用Wireshark分析嗅探的数据包,并从中获取你的用户名及登录口令?
打开wireshark进行抓包,在命令行输入telnet bbs.fudan.edu.cn,注册登录,查看抓包结果。
(1)由下图可以看出登录的BBS服务器的IP地址为:202.120.255.9

telnet使用的端口为23,分析包也可知登录端口为23

选中一个telnet数据包,追踪TCP流,,如下图所示,可以看到用户名和密码,并且也可以知道TELNET协议向服务器传送输入的用户名及登录口令是以明文传输

任务三 取证分析实践,解码网络扫描器

(1)攻击主机的IP地址是什么?
(2)网络扫描的目标IP地址是什么?
(3)本次案例中是使用了哪个扫描工具发起这些端口扫描?
(4)你所分析的日志文件中,攻击者使用了那种扫描方法,扫描的目标端口是什么,并描述其工作原理。
(5)在蜜罐主机上哪些端口被发现是开放的?
(6)攻击主机的操作系统是什么?
用wireshark打开从云班课上下载listen.pcap,使用菜单栏中统计下的Conversation,选择IPV4可以看出,172.31.4.178和172.31.4.188之间发送了大量的数据包,可以确定攻击发生在在这两个ip之间。

从捕获的tcp数据包可以看出172.31.4.188基本发送的都是ack确认包,可以推测出此ip为目标主机,即网络扫描的目标IP地址是172.31.4.188,故另一个IP地址172.31.4.178为攻击主机的ip;

通过nmap工具对端口进行了扫描。
以arp为条件进行过滤,攻击机在广播域内广播arp request报文,如果收到arp response报文即为活跃,可以得到目标主机mac地址。

nmap在发起端口扫描之前总是先通过 Ping扫描和针对80端口进行探测,确定目标主机是否活跃,通过过滤器搜索icmp,可以定位ICMP协议对应的Ping扫描。

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

在蜜罐主机上发现开放端口:输入过滤条件:tcp.flags.syn == 1 and tcp.flags.ack == 1,可以过滤出SYN|ACK的数据包,即反馈所有的开放端口。查
看可以确定以下端口开放:
21(ftp),22(ssh),23(telnet),25(smtp),53(domain),80(http),139(ssn),445(microsoft-ds),
3306(mysql),5432(postgresql),8009,8180这几个端口是活跃的。

TTL 字段值可以帮助我们识别操作系统类型,根据TTL==64,推测攻击机的操作系统为linux。
TTL(Time To Live,生存时间)是IP协议包中的一个值,当我们使用Ping命令进行网络连通测试或者是测试网速的时候,本地计算机会向目的主机发送数据包,但是有的数据包会因为一些特殊的原因不能正常传送到目的主机,如果没有设置TTL值的话,数据包会一直在网络上面传送,浪费网络资源。数据包在传送的时候至少会经过一个以上的路由器,当数据包经过一个路由器的时候,TTL就会自动减1,如果减到0了还是没有传送到目的主机,那么这个数据包就会自动丢失,这时路由器会发送一个ICMP报文给最初的发送者。

攻防对抗实践

攻击方用nmap扫描,防守方用tcpdump嗅探,用wireshark分析,并分析出攻击方的扫描目的以及每次使用的nmap命令。

使用WinXP作为攻击机(192.168.200.2),进行nmap扫描;kali(192.168.200.7)作为防守方,输入tcpdump -i eth0 -w tcp.pcap进行监听并且保存文件为tcp.pcap。再利用wireshark打开tcp.pcap进行分析

nmap扫描结果如下:


3.学习中遇到的问题及解决

  • 问题1:终端显示中文出现乱码
  • 问题1解决方案:调整终端字符编码

4.实践总结

感觉学习的知识越来越多,得慢慢将前面学习的知识与后面的知识串联起来。

参考资料

posted @ 2020-03-25 23:36  李磊20199131  阅读(267)  评论(0编辑  收藏  举报