网络安全基础之笔记二(传输层安全)

web安全威胁

web流量安全方法

SSL

两层协议组成。会话通过握手协议创建。

会话状态:会话标识符、对等证书、压缩方法、密码规格、主密钥(C/S共享的48字节的会话密钥)、可恢复性。

连接状态:随机字节串、服务器写MAC密钥、客户端写MAC密钥、服务器写密钥、客户端写密钥、初始化向量IV、序列号(改变密码规格时置零)

(1)SSL记录协议
(2)密码变更规格协议

使延迟状态改变为当前状态,协议只包含一条消息,由一个值为1的字节组成。

(3)报警协议

第一个字节为警告,第二个字节为致命,致命时立即结束当前连接并且本次会话不允许建立新连接。

(4)握手协议
  1. SSL 客户端发送"Hello"消息给 SSL 服务器端,并列出客户端所支持的 SSL 版本、加密算法和摘要算法。在实际应用中,一般将加密算法和摘要算法结合到一起,组成一个加密套件。同时,客户端还会发送一个随机数,用于以后产生加密密钥。
  2. SSL 服务器端对客户端的连接请求作出回应。从客户端提供的加密套件列表中,选择要使用的加密套件,并产生另外一个随机数。同时,服务器端会发送自己的数字证书给客户端,里面包含服务器端的认证信息及公共密钥。如果服务器端需要验证客户端,它还会在消息中包含要求客户端提供数字证书的请求。
  3. 客户端收到服务器端的回应。它首先使用 CA 证书验证服务器端证书的有效性。在此过程中,客户端会检查证书的签名、证书认证路径、有效日期、证书状态等。验证通过后,抽取出其中的公钥。客户端产生另外一个随机数,并使用服务器端的公钥加密后发送给服务器端。
  4. 如果服务器端要求客户端提供证书,客户端会将随机数用私钥加密,连同证书发送给服务器端。服务器端对客户端的证书进行验证,并使用客户端的公钥解密收到的随机数。
  5. 服务器端和客户端基于前面提供的随机数,计算出用于数据加密的共享密钥。
  6. 客户端将所有握手消息的 MAC 值发送给服务器端,服务器端也将所有握手消息的 MAC 值发送给客户端。这么做是为了防止攻击者在握手过程中篡改了消息内容。
  7. 客户端和服务器端使用握手过程中产生的加密密钥交换握手结束消息。握手结束,SSL 连接建立。

HTTPS(443端口)

HTTP(80端口)+SSL

被加密的元素
  1. 请求文件的URL
  2. 文件内容
  3. 表单内容
  4. Cookie
  5. HTTP标题内容

SSH(Secure Shell)

安全的远程登录、文件传输和Email等。

传输层协议

1)识别字符串交换:字符串用于Diffie-Hellman密钥交换

2)算法协商:SSH_MSG_KEXINIT包含公钥算法列表、加密算法列表、MAC算法列表、压缩算法列表等

3)密钥交换:以SSH_MSG_NEWKEYS作为结束符,利用DH交换算法、主机密钥对等参数,生成会话密钥和会话ID,并完成客户端对服务器身份的验证

4)服务请求:请求身份验证或数据传输,之后的数据会作为有效载荷

用户身份验证协议

1)Client发送SSH_MSG_USERAUTH_REQUEST

2)Sever检查用户名,无效则返回SSH_MSG_USERAUTH_FAILURE,有效则返回SSH_MSG_USERAUTH_FAILURE及可使用的认证方式名单

3)Client选择一种认证方式,再次发送SSH_MSG_USERAUTH_REQUEST

5)Server返回SSH_MSG_USERAUTH_FAILURE,成功则返回信息的布尔值(表示是否部分成功)为true及可使用的认证方式名单,失败则返回的布尔值为false

6)当所有身份认证都成功后,Server发送SSH_MSG_USERAUTH_SUCCESS,当超过认证次数限制或认证失败,则关闭连接

连接协议

1)本地端口映射:客户端创建一个拦截进程将不安全的TCP连接重新传入到SSH通道中,利用选择的端口抓取所有传输。

2)远端映射

相关推荐
半壶清水3 小时前
[软考网规考点笔记]-软件开发、项目管理与知识产权核心知识与真题解析
网络·笔记·压力测试
JMchen1233 小时前
Android后台服务与网络保活:WorkManager的实战应用
android·java·网络·kotlin·php·android-studio
yuanmenghao3 小时前
Linux 性能实战 | 第 7 篇 CPU 核心负载与调度器概念
linux·网络·性能优化·unix
那就回到过去4 小时前
MPLS多协议标签交换
网络·网络协议·hcip·mpls·ensp
qq_297574674 小时前
Linux 服务器 Java 开发环境搭建保姆级教程
java·linux·服务器
聆风吟º5 小时前
CANN开源项目实战指南:使用oam-tools构建自动化故障诊断与运维可观测性体系
运维·开源·自动化·cann
那就回到过去5 小时前
VRRP协议
网络·华为·智能路由器·ensp·vrrp协议·网络hcip
神梦流5 小时前
ops-math 算子库的扩展能力:高精度与复数运算的硬件映射策略
服务器·数据库
NPE~5 小时前
自动化工具Drissonpage 保姆级教程(含xpath语法)
运维·后端·爬虫·自动化·网络爬虫·xpath·浏览器自动化
极客小云5 小时前
【ComfyUI API 自动化利器:comfyui_xy Python 库使用详解】
网络·python·自动化·comfyui