《网络安全概述2培训教材》由会员分享,可在线阅读,更多相关《网络安全概述2培训教材(34页珍藏版)》请在金锄头文库上搜索。
1、网络安全基础教程与实训,*,计算机网络安全基础,主讲:刘洋,第2章 网络监听与TCP/IP协议分析,网络监听与数据分析 网络层协议报头结构 传输层协议报头结构 TCP会话安全 TCP/IP报文捕获与分析,本章主要讲授:,*,计算机网络安全基础,网络监听与TCP/IP协议分析,2.1 网络监听与数据分析 以太网工作方式 : 广播 2.1.1 网络监听的基本原理 通常一个网络接口只接收 1、与自己硬件地址相匹配的数据帧。 2、发向所有主机的广播数据帧。 网卡的接收方式: 广播方式、组播方式、直接方式、混杂方式,*,计算机网络安全基础,2.1.2网络监听工具,Sniffer软件支持协议丰富,解码速度
2、快。支持各种windows平台 主要功能: 1、捕获网络流量进行详细分析 2、利用专家分析系统诊断问题 3、实时监控网络活动 4、收集网络利用率和错误等,*,计算机网络安全基础,2.2网络层协议报头结构,网络层协议将数据包封装成IP数据报,并运行必要的路由算法。 4种互联协议 1、IP (网际协议) 2、ARP(地址解析协议) 3、ICMP(网际控制报文协议) 4、IGMP (互联组管理协议 ),*,计算机网络安全基础,2.2.1 IP数据报结构,面向无连接,*,计算机网络安全基础,2.2.1 IP数据报结构,尽力服务(不可靠),*,计算机网络安全基础,2.2.1 IP数据报结构,IP数据报头
3、,*,计算机网络安全基础,2.2.1 IP数据报结构,TTL是IP协议包中的一个值,它告诉网络,数据包在网络中的时间是否太长而应被丢弃。有很多原因使包在一定时间内不能被传递到目的地。解决方法就是在一段时间后丢弃这个包,然后给发送者一个报文,由发送者决定是否要重发。TTL的初值通常是系统缺省值,是包头中的8位的域。TTL的最初设想是确定一个时间范围,超过此时间就把包丢弃。由于每个路由器都至少要把TTL域减一,TTL通常表示包在被丢弃前最多能经过的路由器个数。当记数到0时,路由器决定丢弃该包,并发送一个ICMP报文给最初的发送者。,*,计算机网络安全基础,2.2.2 ARP,ARP协议是“Addr
4、ess Resolution Protocol”(地址解析协议)的缩写。在局域网中,网络中实际传输的是“帧”,帧里面是有目标主机的MAC地址的。在以太网中,一个主机要和另一个主机进行直接通信,必须要知道目标主机的MAC地址。但这个目标MAC地址是如何获得的呢?它就是通过地址解析协议获得的。所谓“地址解析”就是主机在发送帧前将目标IP地址转换成目标MAC地址的过程。ARP协议的基本功能就是通过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的顺利进行。,*,计算机网络安全基础,2.2.2 ARP,*,计算机网络安全基础,2.2.2 ARP,为了解释ARP协议的作用,就必须理解数据在网络上
5、的传输过程。这里举一个简单的PING例子。 假设我们的计算机IP地址是192.168.1.1,要执行这个命令:ping192.168.1.2。该命令会通过ICMP协议发送ICMP数据包。该过程需要经过下面的步骤: 1、应用程序构造数据包,该示例是产生ICMP包,被提交给内核(网络驱动程序); 2、内核检查是否能够转化该IP地址为MAC地址,也就是在本地的ARP缓存中查看IP-MAC对应表1; 3、如果存在该IP-MAC对应关系,那么跳到步骤7;如果不存在该IP-MAC对应关系,那么接续下面的步骤; 4、内核进行ARP广播,目的地的MAC地址是FF-FF-FF-FF-FF-FF,ARP命令类型为
6、REQUEST(1),其中包含有自己的MAC地址; 5、当192.168.1.2主机接收到该ARP请求后,将源主机的IP地址及MAC更新至自己的arp缓冲中,然后发送一个ARP的REPLY(2)命令,其中包含自己的MAC地址; 6、本地获得192.168.1.2主机的IP-MAC地址对应关系,并保存到ARP缓存中; 7、内核将把IP转化为MAC地址,然后封装在以太网头结构中,再把数据发送出去; 使用arp-a命令就可以查看本地的ARP缓存内容,所以,执行一个本地的PING命令后,ARP缓存就会存在一个目的IP的记录了。当然,如果你的数据包是发送到不同网段的目的地,那么就一定存在一条网关的IP-
7、MAC地址对应的记录。 知道了ARP协议的作用,就能够很清楚地知道,数据包的向外传输很依靠ARP协议,当然,也就是依赖ARP缓存。要知道,ARP协议的所有操作都是内核自动完成的,同其他的应用程序没有任何关系。同时需要注意的是,ARP协议只使用于本网络。,*,计算机网络安全基础,2.2.3 ICMP,ICMP 提供控制和错误消息,由 ping 和 traceroute 实用程序使用。虽然 ICMP 使用 IP 的基本支持,看起来好象是上层协议 ICMP,但它实际上是 TCP/IP 协议簇中独立的第 3 层协议。 可能发送的 ICMP 消息包括: 主机确认 无法到达目的或服务器 超时 路由重定向
8、源抑制,*,计算机网络安全基础,2.2.3 ICMP,*,计算机网络安全基础,2.2.4 IGMP,Internet 组管理协议(IGMP)是因特网协议家族中的一个组播协议,用于 IP 主机向任一个直接相邻的路由器报告他们的组成员情况。IGMP 信息封装在 IP 报文中,其 IP 的协议号为 2。 它用来在ip主机和与其直接相邻的组播路由器之间建立、维护组播组成员关系。igmp不包括组播路由器之间的组成员关系信息的传播与维护,这部分工作由各组播路由协议完成。所有参与组播的主机必须实现igmp。 参与ip组播的主机可以在任意位置、任意时间、成员总数不受限制地加入或退出组播组。组播路由器不需要也不
9、可能保存所有主机的成员关系,它只是通过igmp协议了解每个接口连接的网段上是否存在某个组播组的接收者,即组成员。而主机方只需要保存自己加入了哪些组播组。 igmp在主机与路由器之间是不对称的:主机需要响应组播路由器的igmp查询报文,即以igmp membership report报文响应;路由器周期性发送成员资格查询报文,然后根据收到的响应报文确定某个特定组在自己所在子网上是否有主机加入,并且当收到主机的退出组的报告时,发出特定组的查询报文(igmp版本2),以确定某个特定组是否已无成员存在。,*,计算机网络安全基础,2.3 传输层协议报头结构,2.3.1 TCP (传输控制协议) TCP
10、通信的可靠性在于使用了面向连接的会话。主机使用 TCP 协议发送数据到另一主机前,传输层会启动一个进程,用于创建与目的主机之间的连接。通过该连接,可以跟踪主机之间的会话或者通信数据流。同时,该进程还确保每台主机都知道并做好了通信准备。完整的 TCP 会话要求在主机之间创建双向会话。,*,计算机网络安全基础,2.3.1 TCP,*,计算机网络安全基础,2.3.1 TCP,*,计算机网络安全基础,2.3.1 TCP,*,计算机网络安全基础,2.3.1 TCP,*,计算机网络安全基础,2.3.1 TCP,*,计算机网络安全基础,2.3.1 TCP,*,计算机网络安全基础,2.3.1 TCP,*,计算
11、机网络安全基础,2.3.2 UDP,UDP 是一种简单协议,提供了基本的传输层功能。与 TCP 相比,UDP 的开销极低,因为 UDP 是无连接的,并且不提供复杂的重新传输、排序和流量控制机制。不过,这并不说明使用 UDP 的应用程序不可靠,而仅仅是说明,作为传输层协议,UDP 不提供上述几项功能,如果需要这些功能,必须通过其它方式来实现。,*,计算机网络安全基础,2.3.2 UDP,UDP 提供基本的传输层功能 低开销 UDP 是无连接的,并且不提供复杂的重新传输、排序和流量控制机制,使用UDP的应用: 域名系统 (DNS) 简单网络管理协议 (SNMP) 动态主机配置协议 (DHCP) 路
12、由信息协议 (RIP) 简单文件传输协议 (TFTP) 网络游戏,*,计算机网络安全基础,2.3.2 UDP,UDP 仅仅是将接收到的数据按照先来后到的顺序转发到应用程序,*,计算机网络安全基础,2.3.2 UDP,也使用端口号来标识特定的应用层进程 并将数据报发送到正确的服务或应用,*,计算机网络安全基础,2.5 TCP/IP报文捕获分析,*,计算机网络安全基础,网络安全解决方案,*,计算机网络安全基础,*,计算机网络安全基础,*,计算机网络安全基础,*,计算机网络安全基础,小结,本章介绍了网络监听的基本原理、应用和具有代表性的网络监听工具,还介绍了分析网络数据必须了解的TCP/IP协议数据报结构等基础知识,