WEB安全威胁与SSL

一 web安全威胁有哪些?

二 解决方案

  • 基于应用层实现web安全,其原理为为特定应用定制特定安全服务,将安全服务直接嵌入到应用程序中。
  • 基于传输层实现web安全,原理为 SSL/TLS可作为基础协议栈的组成部分,对应用透明。
    • 也可直接嵌入到浏览器中使用。
    • 使用SSL/TLS后,传送的应用层数据会被加密,保证了数据通信安全。
  • 基于网络层实现web安全,IPSec提供端到端(主机到主机)的安全机制---安全通道
    • 通用解决方案。
    • 各种应用程序均可以使用IPSec提供的安全机制。

三 SSL(安全套接字层)

  • 需要发送字节流以及数据交换。
  • 需要一组密钥用于整个连接
  • 需要证书交换作为协议的一部分:握手阶段

SSL原理--当tcp握手成功后

简单ssl交换过程:

SSL协议栈

ssl密码组:

  • 公开密钥算法
  • 对称加密算法
  • MAC算法

ssl支持多个密码组。

协商:客户端和服务器端沟通协商使用何种密码组。

  • 客户端提供选项。
  • 服务端其中选一。

SSL更改密码规格协议

SSL警告协议

SSL握手协议

SSL记录协议

四 SSL握手过程

最后步骤5,6的意义?----保护握手过程免遭篡改。

  • 客户端提供的算法,安全性有强有弱。
  • 中间人攻击(删除安全性强的算法)。

为什么需要交换2个一次性随机数?

  1. 防止重放攻击:每次 SSL/TLS 连接都需要使用新的随机数,这样即使攻击者截获了某次连接的密文,也不能在后续的会话中重用这些数据,从而避免重放攻击。

  2. 生成会话密钥:SSL/TLS 协议使用这些随机数来帮助生成会话密钥。客户端和服务器各自生成一个随机数,然后结合彼此的随机数和一些加密算法(例如 Diffie-Hellman 密钥交换或 RSA),来生成一个会话密钥。这个密钥将在当前会话中用于加密和解密数据传输。

  3. 增强密钥的随机性:通过交换两个独立的随机数,确保生成的密钥具备足够的随机性和复杂性,降低密钥被猜测或攻击的风险。

  4. 确保每次连接独特性:即使客户端和服务器在不同的会话中使用相同的密码算法和密钥交换机制,由于每次连接交换的随机数不同,会话密钥也会不同,确保每次连接的加密效果是唯一且不可预测的。

SSL握手消息及参数

握手过程:

SSL记录协议-操作步骤

  • 将数据分段为可操作的数据块
  • 对分块数据进行数据压缩
  • 计算MAC值

密钥派生

相关推荐
️学习的小王12 分钟前
AI编码工具的安全陷阱:Copilot/Codex漏洞风险与防御实践
人工智能·安全·copilot
数据知道29 分钟前
PHP 代码审计实战——ThinkPHP、Laravel 历史漏洞模式深度剖析
android·网络·web安全·网络安全·php·laravel
zhonyu鱼36 分钟前
Wireshark:开源免费的抓包工具,网络故障排查与安全分析利器
测试工具·安全·wireshark
yuanyuan33441 分钟前
装配式危废暂存间怎么挑?防撞、材质、控制、安装四维实测
安全·材质·危废暂存间·危废存储间·危废暂存库·危废堆放间·危废液体储存间
乐迪信息1 小时前
防爆AI摄像机实时监测船舶异常姿态
大数据·人工智能·算法·安全·目标跟踪
7177771 小时前
理性看待AI赋能:软件供应链安全的价值落地与能力边界
人工智能·安全
wbcq_cqg2 小时前
万伯1500方双膜气柜沼气项目案例
经验分享·安全
码视野2 小时前
基于 Spring Boot + Vue3 的【高校化学实验室安全准入考试与危化品配伍排查系统】设计与实现(含PRD/三端高保真源码/大屏)
前端·人工智能·spring boot·后端·安全·vue3
头茬韭菜3 小时前
功能点 11-12:客户端、RPC 通信、监控与安全
网络协议·安全·rpc·fluss
数据知道3 小时前
Java 安全审计实战:SSRF、反序列化、SpEL 注入
java·开发语言·安全·网络安全