29、SSL与TLS加密协议的攻击剖析

SSL与TLS加密协议的攻击剖析

1. 填充预言机攻击基础

1.1 基本原理

在使用RFC 2040填充方式且服务器返回填充错误消息的情况下,攻击者能够逐块、逐字节地计算密文的明文。攻击者通过尝试不同的填充值来获取服务器的响应,以此推断出明文的字节信息。例如,对于倒数第三个字节,攻击者使用填充值0x03 0x03 0x03,依此类推,直到找到第一个密文块的所有明文字节。若攻击者确定了第一个明文块的所有字节,利用CBC模式的对称性,可将相同的攻击方法应用于其他明文块。以恢复 $m_2$ 为例,攻击者将 $c_1$ 作为初始化向量(IV),$c_2$ 作为密文,然后从最后一个字节开始逐字节确定明文。

1.2 攻击效率

平均而言,解密一个字节仅需向服务器发送128次请求,且密钥长度对该攻击的影响不大。

1.3 流程图

graph TD;
    A[攻击者发送不同填充的密文] --> B[服务器处理密文];
    B --> C{填充是否正确};
    C -- 是 --> D[攻击者获取明文信息];
    C -- 否 --> A;

2. TLS中的填充预言机

2.1 完整性保护与填充检查

TLS采用MAC-then-PAD-then-ENCRYPT范式进行完整性保护,这意味着在验证MAC之前必须先检查填充的正确性。因为只有在移除填充后,才能确定MAC在明文中的准确位置。所以,TLS明文的完整性保护本身并不能防止填充预言机攻击,是否暴露

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值