二计算机网络安全整理.docx
- 文档编号:6833714
- 上传时间:2023-01-11
- 格式:DOCX
- 页数:15
- 大小:26.80KB
二计算机网络安全整理.docx
《二计算机网络安全整理.docx》由会员分享,可在线阅读,更多相关《二计算机网络安全整理.docx(15页珍藏版)》请在冰豆网上搜索。
二计算机网络安全整理
第2章 计算机网络安全基础
内容提要
⏹本章介绍OSI七层网络模型
⏹TCP/IP协议簇。
⏹重点介绍IP协议、TCP协议、UDP协议和ICMP协议。
⏹介绍常用的网络服务:
文件传输服务、Telnet服务、电子邮件服务和、Web服务
⏹介绍常用的网络服务端口和常用的网络命令的使用。
一.OSI参考模型
⏹OSI参考模型是国际标准化组织ISO(InternationalStandardsOrganization)制定的模型,把计算机与计算机之间的通信分成七个互相连接的协议层,结构如图2-1所示。
1.1、物理层(PhysicalLayer
⏹最底层是物理层,这一层负责传送比特流,它从第二层数据链路层接收数据帧,并将帧的结构和内容串行发送,即每次发送一个比特。
⏹物理层只能看见0和1,只与电信号技术和光信号技术的物理特征相关。
这些特征包括用于传输信号电流的电压、介质类型以及阻抗特征。
该层的传输介质是同轴电缆、光纤、双绞线等,有时该层被称为OSI参考模型的第0层。
⏹物理层可能受到的安全威胁是搭线窃听和监听,可以利用数据加密、数据标签加密,数据标签,流量填充等方法保护物理层的安全。
2、数据链路层(DataLinkLayer)
⏹OSI参考模型的第二层称为数据链路层。
与其他层一样,它肩负两个责任:
发送和接收数据。
⏹还要提供数据有效传输的端到端连接。
在发送方,数据链路层负责将指令、数据等包装到帧中,帧是该层的基本结构。
⏹帧中包含足够的信息,确保数据可以安全地通过本地局域网到达目的地。
3、网络层(NetworkLayer)
⏹网络层(NetworkLayer)的主要功能是完成网络中主机间的报文传输。
在广域网中,这包括产生从源端到目的端的路由。
⏹当报文不得不跨越两个或多个网络时,又会产生很多新问题。
例如第二个网络的寻址方法可能不同于第一个网络;第二个网络也可能因为第一个网络的报文太长而无法接收;两个网络使用的协议也可能不同等。
网络层必须解决这些问题,使异构网络能够互连。
⏹在单个局域网中,网络层是冗余的,因为报文是直接从一台计算机传送到另一台计算机的。
4、传输层(TransportLayer)
⏹传输层的主要功能是完成网络中不同主机上的用户进程之间可靠的数据通信。
⏹最好的传输连接是一条无差错的、按顺序传送数据的管道,即传输层连接是真正端到端的。
⏹由于绝大多数主机都支持多用户操作,因而机器上有多道程序,这意味着多条连接将进出于这些主机,因此需要以某种方式区别报文属于哪条连接。
识别这些连接的信息可以放入传输层的报文头中。
5、会话层(SessionLayer)
⏹会话层允许不同机器上的用户之间建立会话关系。
会话层允许进行类似传输层的普通数据的传送,在某些场合还提供了一些有用的增强型服务。
允许用户利用一次会话在远端的分时系统上登录,或者在两台机器间传递文件。
⏹会话层提供的服务之一是管理对话控制。
⏹会话层允许信息同时双向传输,或限制只能单向传输。
如果属于后者,类似于物理信道上的半双工模式,会话层将记录此时该轮到哪一方。
⏹一种与对话控制有关的服务是令牌管理(TokenManagement)。
有些协议保证双方不能同时进行同样的操作,这一点很重要。
为了管理这些活动,会话层提供了令牌,令牌可以在会话双方之间移动,只有持有令牌的一方可以执行某种操作。
6、表示层(PresentationLayer)
⏹表示层完成某些特定的功能,这些功能不必由每个用户自己来实现。
⏹值得一提的是,表示层以下各层只关心从源端机到目标机可靠地传送比特,而表示层关心的是所传送的信息的语法和语义。
⏹表示层服务的一个典型例子是用一种一致选定的标准方法对数据进行编码。
⏹大多数用户程序之间并非交换随机的比特,而是交换诸如人名、日期、货币数量和发票之类的信息。
这些对象是用字符串、整型数、浮点数的形式,以及由几种简单类型组成的数据结构来表示。
7、应用层(ApplicationLayer)
⏹应用层包含大量人们普遍需要的协议。
虽然,对于需要通信的不同应用来说,应用层的协议都是必须的。
⏹例如,PC(PersonalComputer)机用户使用仿真终端软件通过网络仿真某个远程主机的终端并使用该远程主机的资源。
⏹这个仿真终端程序使用虚拟终端协议将键盘输入的数据传送到主机的操作系统,并接收显示于屏幕的数据。
TCP/IP协议簇
二.TCP/IP协议簇
⏹TCP/IP协议簇模型
⏹和其他网络协议一样,TCP/IP有自己的参考模型用于描述各层的功能。
TCP/IP协议簇参考模型和OSI参考模型的比较如图2-2所示。
⏹TCP/IP参考模型实现了OSI模型中的所有功能。
⏹不同之处是TCP/IP协议模型将OSI模型的部分层进行了合并。
⏹OSI模型对层的划分更精确,而TCP/IP模型使用比较宽的层定义。
3.解剖TCP/IP模型
⏹TCP/IP协议簇包括四个功能层:
应用层、传输层、网络层及网络接口层。
⏹这四层概括了相对于OSI参考模型中的七层。
⏹1、网络接口层
⏹网络接口层包括用于物理连接、传输的所有功能。
OSI模型把这一层功能分为两层:
物理层和数据链路层,TCP/IP参考模型把两层合在一起。
⏹2、网络层(Internet层)
⏹网络层由在两个主机之间通信所必须的协议和过程组成。
这意味着数据报文必须是可路由的。
⏹3、传输层
⏹这一层支持的功能包括:
为了在网络中传输对应用数据进行分段,执行数学检查来保证所收数据的完整性,为多个应用同时传输数据多路复用数据流(传输和接收)。
这意味着该层能识别特殊应用,对乱序收到的数据进行重新排序。
⏹当前的主机到主机层包括两个协议实体:
传输控制协议(TCP)和用户数据报协议(UDP)。
⏹4、应用层
⏹应用层协议提供远程访问和资源共享。
应用包括Telnet服务、FTP服务、SMTP服务和HTTP服务等,很多其他应用程序驻留并运行在此层,并且依赖于底层的功能。
该层是最难保护的一层。
⏹.TCP/IP组的四层、OSI参考模型和常用协议的对应关系如图2-3所示。
4.网络协议IP
⏹IP协议已经成为世界上最重要的网际协议。
⏹IP的功能定义在由IP头结构的数据中。
IP是网络层上的主要协议,同时被TCP协议和UDP协议使用。
⏹TCP/IP的整个数据报在数据链路层的结构如表2-1所示。
⏹表2-1TCP/IP数据报的结构
以太网数据包头
IP头
TCP/UDP/ICMP/IGMP头
数据
5.IP头的结构
⏹可以看出一条完整数据报由四部分组成
⏹第三部分是该数据报采用的协议
⏹第四部分是数据报传递的数据内容
⏹其中IP头的结构如表2-2所示。
版本(4位)
头长度(4位)
服务类型(8位)
封包总长度(16位)
封包标识(16位)
标志(3位)
片断偏移地址(13位)
存活时间(8位)
协议(8位)
校验和(16位)
来源IP地址(32位)
目的IP地址(32位)
选项(可选)
填充(可选)
数据
⏹IP头结构在所有协议中都是固定的,对表2-2说明如下:
⏹
(1)字节和数字的存储顺序是从右到左,依次是从低位到高位,而网络存储顺序是从左到右,依次从低位到高位。
⏹
(2)版本:
占第一个字节的高四位。
头长度:
占第一个字节的低四位。
⏹(3)服务类型:
前3位为优先字段权,现在已经被忽略。
接着4位用来表示最小延迟、最大吞吐量、最高可靠性和最小费用。
⏹(4)封包总长度:
整个IP报的长度,单位为字节。
⏹(5)存活时间:
就是封包的生存时间。
通常用通过的路由器的个数来衡量,比如初始值设置为32,则每通过一个路由器处理就会被减一,当这个值为0的时候就会丢掉这个包,并用ICMP消息通知源主机。
⏹(6)协议:
定义了数据的协议,分别为:
TCP、UDP、ICMP和IGMP。
定义为:
⏹#definePROTOCOL_TCP0x06
⏹#definePROTOCOL_UDP0x11
⏹#definePROTOCOL_ICMP0x06
⏹#definePROTOCOL_IGMP0x06
⏹(7)检验和:
校验的首先将该字段设置为0,然后将IP头的每16位进行二进制取反求和,将结果保存在校验和字段。
⏹(8)来源IP地址:
将IP地址看作是32位数值则需要将网络字节顺序转化位主机字节顺序。
转化的方法是:
将每4个字节首尾互换,将2、3字节互换。
⏹(9)目的IP地址:
转换方法和来源IP地址一样。
⏹在网络协议中,IP是面向非连接的,所谓的非连接就是传递数据的时候,不检测网络是否连通。
所以是不可靠的数据报协议,IP协议主要负责在主机之间寻址和选择数据包路由。
6.抓取Ping指令发送的数据包
⏹按照第一章Sniffer的设置抓取Ping指令发送的数据包,命令执行如图2-4所示。
⏹其实IP报头的所有属性都在报头中显示出来,可以看出实际抓取的数据报和理论上的数据报一致,分析如图2-6所示。
7.IPv4的IP地址分类
⏹IPv4地址在1981年9月实现标准化的。
基本的IP地址是8位一个单元的32位二进制数。
为了方便人们的使用,对机器友好的二进制地址转变为人们更熟悉的十进制地址。
⏹IP地址中的每一个8位组用0~255之间的一个十进制数表示。
这些数之间用点“.”隔开,因此,最小的IPv4地址值为0.0.0.0,最大的地址值为255.255.255.255,然而这两个值是保留的,没有分配给任何系统。
⏹IP地址分成五类:
A类地址、B类地址、C类地址、D类地址和E类地址。
⏹每一个IP地址包括两部分:
网络地址和主机地址,上面五类地址对所支持的网络数和主机数有不同的组合。
1、A类地址
⏹一个A类IP地址仅使用第一个8位组表示网络地址。
剩下的3个8位组表示主机地址。
A类地址的第一个位总为0,这一点在数学上限制了A类地址的范围小于127,因此理论上仅有127个可能的A类网络,而0.0.0.0地址又没有分配,所以实际上只有126个A类网。
技术上讲,127.0.0.0也是一个A类地址,但是它已被保留作闭环(LookBack)测试之用而不能分配给一个网络。
⏹A类地址后面的24位表示可能的主机地址,A类网络地址的范围从1.0.0.0到126.0.0.0。
每一个A类地址能支持16,777,214个不同的主机地址,这个数是由2的24次方再减去2得到的。
减2是必要的,因为IP把全0保留为表示网络而全1表示网络内的广播地址。
2、B类地址
⏹设计B类地址的目的是支持中到大型的网络。
B类网络地址范围从128.1.0.0到191.254.0.0。
B类地址蕴含的数学逻辑是相当简单的。
⏹一个B类IP地址使用两个8位组表示网络号,另外两个8位组表示主机号。
B类地址的第1个8位组的前两位总是设置为1和0,剩下的6位既可以是0也可以是1,这样就限制其范围小于等于191,这里的191由128+32+16+8+4+2+1得到。
⏹最后的16位(2个8位组)标识可能的主机地址。
每一个B类地址能支持64,534个惟一的主机地址,这个数由2的16次方减2得到,B类网络有16,382个。
3、C类地址
⏹C类地址用于支持大量的小型网络。
这类地址可以认为与A类地址正好相反。
A类地址使用第一个8位组表示网络号,剩下的3个表示主机号,而C类地址使用三个8位组表示网络地址,仅用一个8位组表示主机号。
⏹C类地址的前3位数为110,前两位和为192(128+64),这形成了C类地址空间的下界。
第三位等于十进制数32,这一位为0限制了地址空间的上界。
不能使用第三位限制了此8位组的最大值为255-32等于223。
因此C类网络地址范围从192.0.1.0至223.255.254.0。
⏹最后一个8位组用于主机寻址。
每一个C类地址理论上可支持最大256个主机地址(0~255),但是仅有254个可用,因为0和255不是有效的主机地址。
可以有2,097,150个不同的C类网络地址。
⏹在IP地址中,0和255是保留的主机地址。
IP地址中所有的主机地址为0用于标识局域网。
同样,全为1表示在此网段中的广播地址。
4、D类地址
⏹D类地址用于在IP网络中的组播(Multicasting)。
D类组播地址机制仅有有限的用处。
一个组播地址是一个惟一的网络地址。
它能指导报文到达预定义的IP地址组。
⏹因此,一台机器可以把数据流同时发送到多个接收端,这比为每个接收端创建一个不同的流有效得多。
组播长期以来被认为是IP网络最理想的特性,因为它有效地减小了网络流量。
⏹D类地址空间,和其他地址空间一样,有其数学限制,D类地址的前4位恒为1110,预置前3位为1意味着D类地址开始于128+64+32等于224。
第4位为0意味着D类地址的最大值为128+64+32+8+4+2+1为239,因此D类地址空间的范围从224.0.0.0到239.255.255.254。
5、E类地址
⏹E类地址虽被定义为保留研究之用。
因此Internet上没有可用的E类地址。
⏹E类地址的前4位为1,因此有效的地址范围从240.0.0.0至255.255.255.255
8.子网掩码
1、
⏹子网掩码是用来判断任意两台计算机的IP地址是否属于同一子网络的根据。
⏹最为简单的理解就是两台计算机各自的IP地址与子网掩码进行二进制“与”(AND)运算后,如果得出的结果是相同的,则说明这两台计算机是处于同一个子网络上的,可以进行直接的通讯。
⏹计算机A的IP地址为192.168.0.1,子网掩码为255.255.255.0,将转化为二进制进行“与”运算,运算过程如表2-3所示。
2、计算机A的IP地址为192.168.0.1,子网掩码为255.255.255.0,将转化为二进制进行“与”运算,运算过程如表2-3所示。
IP地址
11010000.10101000.00000000.00000001
子网掩码
11111111.11111111.11111111.00000000
IP地址与子网掩码按位“与”运算
11000000.10101000.00000000.00000000
运算的结果转化为十进制
192.168.0.0
3.计算机B的IP地址为192.168.0.254,子网掩码为255.255.255.0,将转化为二进制进行“与”运算。
运算过程如表2-4所示。
IP地址
11010000.10101000.00000000.11111110
子网掩码
11111111.11111111.11111111.00000000
IP地址与子网掩码按位“与”运算
11000000.10101000.00000000.00000000
运算的结果转化为十进制
192.168.0.0
4.计算机C的IP地址为192.168.0.4,子网掩码为255.255.255.0,将转化为二进制进行“与”运算。
运算过程如表2-5所示
IP地址
11010000.10101000.00000000.00000100
子网掩码
11111111.11111111.11111111.00000000
IP地址与子网掩码按位“与”运算
11000000.10101000.00000000.00000000
运算的结果转化为十进制
192.168.0.0
9.传输控制协议协议TCP
1.
⏹TCP是传输层协议,提供可靠的应用数据传输。
⏹TCP在两个或多个主机之间建立面向连接的通信。
⏹TCP支持多数据流操作,提供错误控制,甚至完成对乱序到达的报文进行重新排序。
2.TCP协议的头结构
和IP一样,TCP的功能受限于其头中携带的信息。
因此理解TCP的机制和功能需要了解TCP头中的内容,表2-6显示了TCP头结构。
来源端口(2字节)
目的端口(2字节)
序号(4字节)
确认序号(4字节)
头长度(4位)
保留(6位)
URG
ACK
PSH
RST
SYN
PIN
窗口大小(2字节)
校验和(16位)
紧急指针(16位)
选项(可选)
数据
3TCP协议的头结构
⏹TCP协议的头结构都是固定的,对表2-6说明如下:
⏹
(1)TCP源端口(SourcePort):
16位的源端口包含初始化通信的端口号。
源端口和IP地址的作用是标识报文的返回地址。
⏹
(2)TCP目的端口(DestinationPort):
16位的目的端口域定义传输的目的。
这个端口指明报文接收计算机上的应用程序地址接口。
⏹(3)序列号(SequenceNumber):
TCP连线发送方向接收方的封包顺序号。
⏹(4)确认序号(AcknowledgeNumber):
接收方回发的应答顺序号。
⏹(5)头长度(HeaderLength):
表示TCP头的双四字节数,如果转化为字节个数需要乘以4。
⏹(6)URG:
是否使用紧急指针,0为不使用,1为使用。
⏹(7)ACK:
请求/应答状态。
0为请求,1为应答。
⏹(8)PSH:
以最快的速度传输数据。
⏹(9)RST:
连线复位,首先断开连接,然后重建。
⏹(10)SYN:
同步连线序号,用来建立连线。
⏹(11)FIN:
结束连线。
如果FIN为0是结束连线请求,FIN为1表示结束连线。
⏹(12)窗口大小(Window):
目的机使用16位的域告诉源主机,它想收到的每个TCP数据段大小。
⏹(13)校验和(CheckSum):
这个校验和和IP的校验和有所不同,不仅对头数据进行校验还对封包内容校验。
⏹(14)紧急指针(UrgentPointer):
当URG为1的时候才有效。
TCP的紧急方式是发送紧急数据的一种方式。
10.TCP协议的工作原理
⏹TCP提供两个网络主机之间的点对点通讯。
TCP从程序中接收数据并将数据处理成字节流。
⏹首先将字节分成段,然后对段进行编号和排序以便传输。
在两个TCP主机之间交换数据之前,必须先相互建立会话。
TCP会话通过三次握手的完成初始化。
这个过程使序号同步,并提供在两个主机之间建立虚拟连接所需的控制信息。
⏹TCP在建立连接的时候需要三次确认,俗称“三次握手”,在断开连接的时候需要四次确认,俗称“四次挥手”。
11TCP协议的三次“握手”
12.TCP协议的三次“握手”
⏹这个过程在FTP的会话过程中也明显的显示出来,如图2-12所示。
1.第一次“握手
”首先分析建立“握手”第一个过程包的结构,如图2-13所示。
2.第二次“握手”
⏹SYN为1,开始建立请求连接,需要对方计算机确认,对方计算机确认返回的数据包如图2-14所示。
3.第三次“握手”
⏹对方计算机返回的数据包中ACK为1并且SYN为1,说明同意连接。
⏹这个时候需要源计算机的确认就可以建立连接了。
确认数据包的结构如图2-15所示。
4.TCP协议的四次“挥手”
⏹需要断开连接的时候,TCP也需要互相确认才可以断开连接,四次交互过程如图2-16所示
1.第一次“挥手”
第一次交互过程的数据报结构如图2-17所示。
2.第二次“挥手”
第一次交互中,首先发送一个FIN=1的请求,要求断开,目标主机在得到请求后发送ACK=1进行确认,如图2-18所示。
3.第三次“挥手”
在确认信息发出后,就发送了一个FIN=1的包,与源主机断开,如图2-19所示。
4.第四次“挥手”
⏹随后源主机返回一条ACK=1的信息,这样一次完整的TCP会话就结束了。
如图2-20所示。
13.用户数据报协议UDP
⏹1。
UDP为应用程序提供发送和接收数据报的功能。
⏹某些程序(比如腾讯的OICQ)使用的是UDP协议,UDP协议在TCP/IP主机之间建立快速、轻便、不可靠的数据传输通道。
2.UDP和TCP的区别
⏹UDP提供的是非连接的数据报服务,意味着UDP无法保证任何数据报的传递和验证。
⏹UDP的结构如图2-21所示。
3.UDP和TCP传递数据的差异
⏹UDP和TCP传递数据的差异类似于电话和明信片之间的差异。
⏹TCP就像电话,必须先验证目标是否可以访问后才开始通讯。
⏹UDP就像明信片,信息量很小而且每次传递成功的可能性很高,但是不能完全保证传递成功。
⏹UDP通常由每次传输少量数据或有实时需要的程序使用。
⏹在这些情况下,UDP的低开销比TCP更适合。
UDP与TCP提供的服务和功能直接对比
4UDP和TCP传递数据的比较
UDP协议
TCP协议
无连接的服务;在主机之间不建立会话。
面向连接的服务;在主机之间建立会话。
UDP不能确保或承认数据传递或序列化数据。
TCP通过确认和按顺序传递数据来确保数据的传递。
使用UDP的程序负责提供传输数据所需的可靠性。
使用TCP的程序能确保可靠的数据传输。
UDP快速,具有低开销要求,并支持点对点和一点对多点的通讯。
TCP比较慢,有更高的开销要求,而且只支持点对点通讯。
UDP和TCP都使用端口标识每个TCP/IP程序的通讯。
5.UDP协议的头结构
⏹UDP的头结构比较简单,如表2-8所示。
源端口(2字节)
目的端口(2字节)
封报长度(2字节)
校验和(2字节)
数据
6.UDP的头结构
⏹
(1)源端口(SourcePort):
16位的源端口域包含初始化通信的端口号。
源端口和IP地址的作用是标识报文的返回地址。
⏹
(2)目的端口(DestinationPort):
6位的目的端口域定义传输的目的。
这个端口指明报文接收计算机上的应用程序地址接口。
⏹(3)封包长度(Length):
UDP头和数据的总长度。
⏹(4)校验和(CheckSum):
和TCP和校验和一样,不仅对头数据进行校验,还对包的内容进行校验。
7.UDP数据报分析
⏹常用的网络服务中,DNS使用UDP协议。
DNS是域名系统(DomainNameSystem)的缩写
⏹当用户在应用程序中输入DNS名称时,DNS服务可以将此名称解读为与此名称相关的IP地址。
14.Email服务
⏹目前Email服务用的两个主要的协议是:
简单邮件传输协议SMTP(SimpleMailTransferProtocol)和邮局协议POP3(PostOfficeProtocol)。
⏹SMTP默认占用25端口,用来发送邮件,POP3占用110端口,用来接收邮件。
⏹在Windows平台下,主要利用MicrosoftExchangeServer作为电子邮件服务器。
15.Web服务
⏹Web服务是目前最常用的服务,使用HTTP协议,默认Web服务占用80端口
⏹在Windows平台下一般使用IIS(InternetInformationServer)作为Web服务器。
16.常用的网络服务端口
⏹常用服务端口列表
端口
协议
服务
21
TCP
FTP服务
25
TCP
SMTP服务
53
TCP/UDP
DNS服务
80
TCP
Web服务
135
TCP
RPC服务
13
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 网络安全 整理
![提示](https://static.bdocx.com/images/bang_tan.gif)