我正在尝试重现针对 cyassl < 3.3.0 (wolfSSL) 的 skipTLS 攻击,该攻击允许跳过握手中的步骤,从而模拟服务器并强制客户端进行清晰的通信。此处描述了具体的攻击:http ://www.ieee-security.org/TC/SP2015/papers-archived/6949a535.pdf (第 9-10 页)。
此漏洞利用依赖于 cyassl 客户端(用 C 编码)中的未初始化内存设置为 0(12 长字节数组)这一事实。
攻击莫名其妙地失败了,我想检查一下是不是因为未初始化的内存没有设置为0。
现在,论文声称:
因此,存储转录 MAC 的字节数组保持未初始化,并且在大多数运行时环境中,该数组包含零。
我在 Ubuntu 16.04 上运行客户端。
您是否知道检查内存是否包含 0 的方法(调试会很痛苦,因为我在黑盒中工作)?
或者,是否存在这样一种环境,其中未初始化内存的该区域包含 0 的概率会更高?
我知道我不能确定它总是包含 0,但如果它不时工作,我没问题。