Skip to content

Latest commit

 

History

History
68 lines (66 loc) · 5.25 KB

Web安全学习笔记.md

File metadata and controls

68 lines (66 loc) · 5.25 KB

Web安全学习笔记

2. 计算机网络与协议

2.1 网络基础

  • 计算机通信网的组成

计算机网络由通信子网和资源子网组成。其中通信子网负责数据的无差错和有序传递,其处理功能包括差错控制、流量控制、路由选择、网络互连等。

资源子网是计算机通信的本地系统环境,包括主机、终端和应用程序等, 资源子网的主要功能是用户资源配置、数据的处理和管理、软件和硬件共享以及负载 均衡等。

计算机通信网就是一个由通信子网承载的、传输和共享资源子网的各类信息的系统。

  • 通信协议

为了完成计算机之间有序的信息交换,提出了通信协议的概念
协议涉及到三个要素,分别为:

  • 语法:语法是用户数据与控制信息的结构与格式,以及数据出现顺序的意义
  • 语义:用于解释比特流的每一部分的意义
  • 时序:事件实现顺序的详细说明
  • OSI七层模型

OSI(Open System Interconnection)共分为物理层、数据链路层、网络层、传输层、会话层、表示层、应用层七层

  • 物理层:
  1. 提供建立、维护和释放物理链路所需的机械、电气功能和规程等特性
  2. 通过传输介质进行数据流(比特流)的物理传输、故障监测和物理层管理
  3. 从数据链路层接收帧,将比特流转换成底层物理介质上的信号
  • 数据链路层
  1. 在物理链路的两端之间传输数据
  2. 在网络层实体间提供数据传输功能和控制
  3. 提供数据的流量控制
  4. 检测和纠正物理链路产生的差错
  5. 格式化的消息称为帧
  • 网络层
  1. 负责端到端的数据的路由或交换,为透明地传输数据建立连接
  2. 寻址并解决与数据在异构网络间传输相关的所有问题
  3. 使用上面的传输层和下面的数据链路层的功能
  4. 格式化的消息称为分组
  • 传输层
  1. 提供无差错的数据传输
  2. 接收来自会话层的数据,如果需要,将数据分割成更小的分组,向网络层传
  3. 送分组并确保分组完整和正确到达它们的目的地
  4. 在系统之间提供可靠的透明的数据传输,提供端到端的错误恢复和流量控制
  • 应用层
  1. 包括各种协议,它们定义了具体的面向用户的应用:如电子邮件、文件传输等

2.2 UDP协议

  • 主要特点:
  1. 协议开销小、效率高。
  2. UDP是无连接的,即发送数据之前不需要建立连接。
  3. UDP使用尽最大努力交付,即不保证可靠交付。
  4. UDP没有拥塞控制。
  5. UDP支持一对一、一对多、多对一和多对多交互通信。
  6. UDP的首部开销小,只有8个字节。

2.3 TCP协议

  • 简介

TCP(Transmission Control Protocol,传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议,由RFC 793定义。

  • 三次握手
  • 三次握手(Three-Way Handshake)是指建立一个TCP连接时,需要客户端和服务端总共发送3个包以确认连接的建立。
  1. 第一次握手客户端将标志位 SYN 置为1,随机产生一个值 seq=s ,并将该数据包发送给服务端,客户端进入 SYN_SENT 状态,等待服务端确认。
  2. 第二次握手服务端收到数据包后由标志位 SYN=1 知道客户端请求建立连接,服务端将标志位 SYN 和 ACK 都置为1,ack=s+1,随机产生一个值 seq=k ,并将该数据包发送给客户端以确认连接请求,服务端进入 SYN_RCVD 状态。
  3. 第三次握手客户端收到确认后,检查ack值是否为s+1,ACK标志位是否为1,如果正确则将标志位 ACK 置为1,ack=k+1,并将该数据包发送给服务端,服务端检查ack值是否为k+1,ACK标志位是否为1,如果正确则连接建立成功,客户端和服务端进入 ESTABLISHED 状态,完成三次握手。
  • 四次挥手
  • 四次挥手(Four-Way Wavehand)指断开一个TCP连接时,需要客户端和服务端总共发送4个包以确认连接的断开。
  1. 第一次挥手客户端发送一个 FIN ,用来关闭客户端到服务端的数据传送,客户端进入 FIN_WAIT_1 状态。
  2. 第二次挥手服务端收到 FIN 后,发送一个 ACK 给客户端,确认序号为收到序号+1,服务端进入 CLOSE_WAIT 状态。
  3. 第三次挥手服务端发送一个 FIN ,用来关闭服务端到客户端的数据传送,服务端进入 LAST_ACK 状态。
  4. 第四次挥手客户端收到 FIN 后,客户端进入 TIME_WAIT 状态,接着发送一个 ACK 给服务端,确认序号为收到序号+1,服务端进入 CLOSED 状态,完成四次挥手。

2.4 DHCP协议

  • 简介
  • 动态主机配置协议 (Dynamic Host Configuration Protocol,DHCP) 是一个用于局域网的网络协议,位于OSI模型的应用层,使用UDP协议工作,主要用于自动分配IP地址给用户,方便管理员进行统一管理
  • DHCP服务器端使用67/udp,客户端使用68/udp。DHCP运行分为四个基本过程,分别为请求IP租约、提供IP租约、选择IP租约和确认IP租约。客户端在获得了一个IP地址以后,就可以发送一个ARP请求来避免由于DHCP服务器地址池重叠而引发的IP冲突。
  • DHCP报文格式