漏洞概述 该漏洞涉及 Ruby 的 库中的 STARTTLS 剥离攻击(STARTTLS stripping vulnerability)。攻击者可以通过绕过 STARTTLS 协议,导致通信未加密,从而可能窃取敏感信息。 影响范围 受影响库:Ruby 的 库。 影响版本:具体版本未在截图中明确列出,但修复已提交至 分支。 修复方案 1. 代码修改: - 在 文件中,对 方法进行了修改,确保在收到 "OK" 响应后,正确设置 标志,并清除缓存的 capabilities 和 responses。 - 新增 方法,用于防止恶意服务器通过跳过标签响应来绕过 STARTTLS。 2. 测试用例: - 在 文件中,新增了多个测试用例,包括 、 和 ,以验证修复的有效性。 POC 代码 以下是部分 POC 代码,用于演示如何利用该漏洞: 以上代码展示了如何利用该漏洞进行攻击,并通过测试用例验证了修复的有效性。