最新的知识点

考试可能会用到 谁又知道呢

一、osi模型

维基百科定义:

“OSI模型,即开放式通信系统互联参考模型(Open System Interconnection Reference Model),是国际标准化组织(ISO)提出的一个试图使各种计算机在世界范围内互连为网络的标准框架,简称OSI。”

定义了网络互连的七层模型(物理层、数据链路层、网络层、传输层、会话层、表示层、应用层)

这七层分别有什么用/对应什么协议

应用层:为应用程序或用户请求提供各种请求服务。OSI参考模型最高层,也是最靠近用户的一层,为计算机用户、各种应用程序以及网络提供接口,也为用户直接提供各种网络服务。

表示层:数据编码、格式转换、数据加密。提供各种用于应用层数据的编码和转换功能,确保一个系统的应用层发送的数据能被另一个系统的应用层识别。如果必要,该层可提供一种标准表示形式,用于将计算机内部的多种数据格式转换成通信中采用的标准表示形式。数据压缩和加密也是表示层可提供的转换功能之一。

会话层:创建、管理和维护会话。接收来自传输层的数据,负责建立、管理和终止表示层实体之间的通信会话,支持它们之间的数据交换。该层的通信由不同设备中的应用程序之间的服务请求和响应组成。

传输层:数据通信。建立主机端到端的链接,为会话层和网络层提供端到端可靠的和透明的数据传输服务,确保数据能完整的传输到网络层。

网络层:IP选址及路由选择。通过路由选择算法,为报文或通信子网选择最适当的路径。控制数据链路层与传输层之间的信息转发,建立、维持和终止网络的连接。数据链路层的数据在这一层被转换为数据包,然后通过路径选择、分段组合、顺序、进/出路由等控制,将信息从一个网络设备传送到另一个网络设备。

数据链路层:提供介质访问和链路管理。接收来自物理层的位流形式的数据,封装成帧,传送到网络层;将网络层的数据帧,拆装为位流形式的数据转发到物理层;负责建立和管理节点间的链路,通过各种控制协议,将有差错的物理信道变为无差错的、能可靠传输数据帧的数据链路。

物理层:管理通信设备和网络媒体之间的互联互通。传输介质为数据链路层提供物理连接,实现比特流的透明传输。实现相邻计算机节点之间比特流的透明传送,屏蔽具体传输介质和物理设备的差异。

blob

二、wireshark(主要是面板和筛选器)

首先讲面板

wireshark有三个面板:

  • packet list面板
  • packet details面板
  • packet bytes面板

12

这三个面板之间是相互关联的:

如果希望在packet details面板中查看一个单独的数据包的具体内容,必须在packet list面板中单机选中那个数据包
选中该数据包之后,才可以通过在packet deatils面板中选择数据宝的某个字段进行分析,从而在packet bytes面板中查看相应字段的字节信息

packet list

packet list面板:以表格的形式显示了当前捕获文件中的所有数据报,从下面可以看出,一共有7列:

No(Number列):包的编号
默认wireshark是按照数据包编号从低到高排序
该编号不会发生改变,即使使用了过滤也同样如此
Time列:包的时间戳。时间格式可以自己设置
Source列和Destination列:包的源地址和目的地址
Protocol列:包的协议类型
Length列:包的长度
Info列:包的附加信息

13

packet details

packet details面板:分层的显示了一个数据包中的内容,并且可以通过展开或者收缩来显示这个数据包中所捕获的全部内容
14
默认数据详细信息都是合并的,如果要查看,可以单击每行前面的箭头:
15

packet bytes

packet bytes面板:

  • 显示了一个数据包未经处理的原始样子,也就是它在链路上传播时的样子。
  • 在该面板中的数据是以16进制和ASCII格式显示了帧的内容
  • 当在packet details面板中选择任意一个字段后,在packet bytes面板中包含该字段的字节也高亮显示。

16

三、ARP协议

什么是ARP

地址解析协议,即ARP(Address Resolution Protocol),是根据IP地址获取物理地址的一个TCP/IP协议。主机发送信息时将包含目标IP地址的ARP请求广播到局域网络上的所有主机,并接收返回消息,以此确定目标的物理地址;收到返回消息后将该IP地址和物理地址存入本机ARP缓存中并保留一定时间,下次请求时直接查询ARP缓存以节约资源。地址解析协议是建立在网络中各个主机互相信任的基础上的,局域网络上的主机可以自主发送ARP应答消息,其他主机收到应答报文时不会检测该报文的真实性就会将其记入本机ARP缓存;

最直白的说法是:在IP以太网中,当一个上层协议要发包时,有了该节点的IP地址,ARP就能提供该节点的MAC地址。

大家都知道,OSI模式把网络工作分为七层,彼此不直接打交道,只通过接口(layre interface). IP地址在第三层(网络层), MAC地址在第二层(数据链路层)。协议在发送数据包时,首先要封装第三层(IP地址)和第二层 (MAC地址)的报头, 但协议只知道目的节点的IP地址,不知道其物理地址,又不能跨第二、三层,所以得用ARP的服务拿到MAC地址。

四、哈希函数

哈希函数(Hash Function)是一种将任意长度的数据映射到固定长度输出的算法。哈希函数常用于加密、数字签名、数据完整性验证、数据压缩等领域。

哈希函数具有以下几个特点:

  1. 固定输出长度:哈希函数的输出长度固定,不论输入数据的长度如何,输出长度都是固定的。
  2. 单向性:哈希函数是一种单向函数,即无法从哈希值推算出原始数据。这是哈希函数应用于密码学的一个关键特性。
  3. 确定性:对于相同的输入数据,哈希函数总是会生成相同的输出值。
  4. 雪崩效应:哈希函数的输入数据只要发生了微小的变化,输出值就会发生巨大的变化,这种效应被称为雪崩效应。

哈希函数广泛应用于密码学中,通常用于保护数据的机密性和完整性。例如,常用的密码存储方法是将用户密码经过哈希函数处理后存储在数据库中,当用户登录时,输入的密码会被哈希函数处理后与数据库中的哈希值进行比较,从而验证密码的正确性。

五、对称/非对称数据加密

对称加密

概念:加密算法是公开的,靠的是秘钥来加密数据,使用一个秘钥加密,必须使用相同的秘钥才解密。
优点: 算法公开、计算量小、加密速度快、加密效率高
缺点:在数据传送前,发送方和接收方必须商定好秘钥,然后使双方都能保存好秘钥。

常见算法:DES、3DES、Blowfish、IDEA、RC4、RC5、RC6 和 AES

非对称加密

概念:加密和解密使用不同的秘钥,一把公开的公钥,一把私有的私钥。公钥加密的信息只有私钥才能解密,私钥加密的信息只有公钥才能解密。
优点:安全,即使密文被拦截、公钥被获取,但是无法获取到私钥,也就无法破译密文。作为接收方,务必要保管好自己的密钥。
缺点:加密算法及其复杂,安全性依赖算法与密钥,而且加密和解密效率很低。

常见算法:RSA、DSA、ECC
工作流程:A生成一对非对称秘钥,将公钥向所有人公开,B拿到A的公钥后使用A的公钥对信息加密后发送给A,经过加密的信息只有A手中的私钥能解密。这样B可以通过这种方式将自己的公钥加密后发送给A,两方建立起通信,可以通过对方的公钥加密要发送的信息,接收方用私钥解密信息。

六、SSL/TLS协议(443端口 传输层)

SSL(安全套接字层)及其后继者TLS(传输层安全)是用于在联网计算机之间建立经过身份验证和加密的链接的协议。尽管SSL协议在 1999年已经随着TLS 1.0的发布而被弃用,但我们仍将这些相关技术称为“SSL”或“SSL/TLS”。那么SSL协议的定义是什么呢?本文将为你详细介绍,并解答关于SSL和TLS的一些常见问题。

一、SSL协议是什么?

SSL(Secure Sockets Layer)协议是一种用于保证网络通信安全的加密协议,最新的版本为TLS(Transport Layer Security)。SSL/TLS协议工作在传输层,用于加密数据的传输,可以保证数据在传输过程中不被窃取、篡改或者伪造,是现代互联网应用程序中最广泛使用的一种安全协议。

二、什么是 SSL 证书?

SSL 证书,也称为 TLS 或 SSL/TLS 证书,是将网站的身份绑定到由公钥和私钥组成的加密密钥对的数字文档。证书中包含的公钥允许 Web浏览器通过TLS和HTTPS协议启动与Web服务器的加密通信会话。私钥在服务器上保持安全,用于对网页和其他文档进行数字签名。

三、什么是 TLS?

TLS(传输层安全)于1999年发布,是用于身份验证和加密的SSL(安全套接字层)协议的继承者。TLS 1.3 在RFC 8446(2018 年 8 月)中定义。

四、建议在哪个端口上使用 SSL/TLS?

SSL/TLS可以使用任何端口,但是为了获得最大的兼容性,更推荐标准的端口443用于安全 SSL/TLS 通信。

五、当前版本的 SSL/TLS 是什么?

当前版本的SSL/TLS包括:TLS 1.3由RFC 8446于2018年8月定义,是 SSL/TLS 的最新版本;TLS 1.2 (RFC 5246)于2008年8月定义,并且仍在广泛使用。TLS 1.2 之前的 SSL/TLS 版本被认为是不安全的,不应再使用。

七、状态码

HTTP 状态码

当浏览者访问一个网页时,浏览者的浏览器会向网页所在服务器发出请求。当浏览器接收并显示网页前,此网页所在的服务器会返回一个包含 HTTP 状态码的信息头(server header)用以响应浏览器的请求。

HTTP 状态码的英文为 HTTP Status Code

下面是常见的 HTTP 状态码:

  • 1xx(信息性状态码):表示接收的请求正在处理。
  • 2xx(成功状态码):表示请求正常处理完毕。
  • 3xx(重定向状态码):需要后续操作才能完成这一请求。
  • 4xx(客户端错误状态码):表示请求包含语法错误或无法完成。
  • 5xx(服务器错误状态码):服务器在处理请求的过程中发生了错误。

HTTP 状态码分类

HTTP 状态码由三个十进制数字组成,第一个十进制数字定义了状态码的类型。响应分为五类:信息响应(100–199),成功响应(200–299),重定向(300–399),客户端错误(400–499)和服务器错误 (500–599):

分类分类描述
1**信息,服务器收到请求,需要请求者继续执行操作
2**成功,操作被成功接收并处理
3**重定向,需要进一步的操作以完成请求
4**客户端错误,请求包含语法错误或无法完成请求
5**服务器错误,服务器在处理请求的过程中发生了错误

HTTP状态码列表:

状态码状态码英文名称中文描述
100Continue继续。客户端应继续其请求
101Switching Protocols切换协议。服务器根据客户端的请求切换协议。只能切换到更高级的协议,例如,切换到HTTP的新版本协议
200OK请求成功。一般用于GET与POST请求
201Created已创建。成功请求并创建了新的资源
202Accepted已接受。已经接受请求,但未处理完成
203Non-Authoritative Information非授权信息。请求成功。但返回的meta信息不在原始的服务器,而是一个副本
204No Content无内容。服务器成功处理,但未返回内容。在未更新网页的情况下,可确保浏览器继续显示当前文档
205Reset Content重置内容。服务器处理成功,用户终端(例如:浏览器)应重置文档视图。可通过此返回码清除浏览器的表单域
206Partial Content部分内容。服务器成功处理了部分GET请求
300Multiple Choices多种选择。请求的资源可包括多个位置,相应可返回一个资源特征与地址的列表用于用户终端(例如:浏览器)选择
301Moved Permanently永久移动。请求的资源已被永久的移动到新URI,返回信息会包括新的URI,浏览器会自动定向到新URI。今后任何新的请求都应使用新的URI代替
302Found临时移动。与301类似。但资源只是临时被移动。客户端应继续使用原有URI
303See Other查看其它地址。与301类似。使用GET和POST请求查看
304Not Modified未修改。所请求的资源未修改,服务器返回此状态码时,不会返回任何资源。客户端通常会缓存访问过的资源,通过提供一个头信息指出客户端希望只返回在指定日期之后修改的资源
305Use Proxy使用代理。所请求的资源必须通过代理访问
306Unused已经被废弃的HTTP状态码
307Temporary Redirect临时重定向。与302类似。使用GET请求重定向
400Bad Request客户端请求的语法错误,服务器无法理解
401Unauthorized请求要求用户的身份认证
402Payment Required保留,将来使用
403Forbidden服务器理解请求客户端的请求,但是拒绝执行此请求
404Not Found服务器无法根据客户端的请求找到资源(网页)。通过此代码,网站设计人员可设置”您所请求的资源无法找到”的个性页面
405Method Not Allowed客户端请求中的方法被禁止
406Not Acceptable服务器无法根据客户端请求的内容特性完成请求
407Proxy Authentication Required请求要求代理的身份认证,与401类似,但请求者应当使用代理进行授权
408Request Time-out服务器等待客户端发送的请求时间过长,超时
409Conflict服务器完成客户端的 PUT 请求时可能返回此代码,服务器处理请求时发生了冲突
410Gone客户端请求的资源已经不存在。410不同于404,如果资源以前有现在被永久删除了可使用410代码,网站设计人员可通过301代码指定资源的新位置
411Length Required服务器无法处理客户端发送的不带Content-Length的请求信息
412Precondition Failed客户端请求信息的先决条件错误
413Request Entity Too Large由于请求的实体过大,服务器无法处理,因此拒绝请求。为防止客户端的连续请求,服务器可能会关闭连接。如果只是服务器暂时无法处理,则会包含一个Retry-After的响应信息
414Request-URI Too Large请求的URI过长(URI通常为网址),服务器无法处理
415Unsupported Media Type服务器无法处理请求附带的媒体格式
416Requested range not satisfiable客户端请求的范围无效
417I’m a teapot服务器无法满足Expect的请求头信息
418I’m a teapot状态码 418 实际上是一个愚人节玩笑。它在 RFC 2324 中定义,该 RFC 是一个关于超文本咖啡壶控制协议(HTCPCP)的笑话文件。在这个笑话中,418 状态码是作为一个玩笑加入到 HTTP 协议中的。
500Internal Server Error服务器内部错误,无法完成请求
501Not Implemented服务器不支持请求的功能,无法完成请求
502Bad Gateway作为网关或者代理工作的服务器尝试执行请求时,从远程服务器接收到了一个无效的响应
503Service Unavailable由于超载或系统维护,服务器暂时的无法处理客户端的请求。延时的长度可包含在服务器的Retry-After头信息中
504Gateway Time-out充当网关或代理的服务器,未及时从远端服务器获取请求
505HTTP Version not supported服务器不支持请求的HTTP协议的版本,无法完成处理