CVE-2025-27219, CVE-2025-27220 和 CVE-2025-27221 的安全公告
发布于 2025年2月26日
我们发布了关于CVE-2025-27219、CVE-2025-27220和CVE-2025-27221的安全公告。详情请阅读下文。
CVE-2025-27219: CGI::Cookie.parse中的拒绝服务漏洞
cgi gem中的CGI::Cookie.parse方法存在可能导致拒绝服务攻击的可能性。此漏洞已被分配CVE标识符CVE-2025-27219。我们建议升级cgi gem。
详情
在某些情况下,CGI::Cookie.parse方法解析cookie字符串需要超线性时间。向该方法输入恶意构造的cookie字符串可能导致拒绝服务。
请将CGI gem更新到版本0.3.5.1、0.3.7、0.4.2或更高版本。
受影响版本
- cgi gem版本 <= 0.3.5, 0.3.6, 0.4.0 和 0.4.1。
致谢
感谢lio346发现此问题。同时感谢mame修复此漏洞。
CVE-2025-27220: CGI::Util#escapeElement中的正则表达式拒绝服务漏洞
cgi gem中的CGI::Util#escapeElement方法存在正则表达式拒绝服务的可能性。此漏洞已被分配CVE标识符CVE-2025-27220。我们建议升级cgi gem。
详情
CGI::Util#escapeElement中使用的正则表达式易受ReDoS攻击。构造的输入可能导致高CPU消耗。
此漏洞仅影响Ruby 3.1和3.2版本。如果您正在使用这些版本,请将CGI gem更新到版本0.3.5.1、0.3.7、0.4.2或更高版本。
受影响版本
- cgi gem版本 <= 0.3.5, 0.3.6, 0.4.0 和 0.4.1。
致谢
感谢svalkanov发现此问题。同时感谢nobu修复此漏洞。
CVE-2025-27221: URI#join, URI#merge 和 URI#+ 中的用户信息泄露漏洞
uri gem中的URI#join、URI#merge和URI#+方法存在可能导致用户信息泄露的可能性。此漏洞已被分配CVE标识符CVE-2025-27221。我们建议升级uri gem。
详情
URI#join、URI#merge和URI#+方法在主机名被替换后,仍会保留诸如user:password的用户信息。当使用这些方法从包含秘密用户信息的URL生成指向恶意主机的URL,并让某人访问该URL时,可能会发生非预期的用户信息泄露。
请将URI gem更新到版本0.11.3、0.12.4、0.13.2、1.0.3或更高版本。
受影响版本
- uri gem版本 < 0.11.3, 0.12.0 到 0.12.3, 0.13.0, 0.13.1 以及 1.0.0 到 1.0.2。
致谢
感谢Tsubasa Irisawa (lambdasawa)发现此问题。同时感谢nobu对此漏洞的额外修复。
历史
- 最初发布于2025年2月26日 7:00:00 (UTC)
CVE-2025-61594: URI 凭据泄露绕过先前修复
发布于 2025年10月7日
我们发布了关于CVE-2025-61594的安全公告。
CVE-2025-61594: 绕过CVE-2025-27221修复的URI凭据泄露漏洞
在受影响的URI版本中,存在对CVE-2025-27221修复的绕过,可能导致用户凭据泄露。
此漏洞已被分配CVE标识符CVE-2025-61594。我们建议升级uri gem。
详情
当使用+运算符组合URI时,原始URI中的敏感信息(如密码)可能会被泄露。这违反了RFC3986规范,并使应用程序面临凭据泄露的风险。
请将URI gem更新到版本0.12.5、0.13.3、1.0.4或更高版本。
受影响版本
- uri gem版本 < 0.12.5, 0.13.0 到 0.13.2 以及 1.0.0 到 1.0.3。
致谢
感谢junfuchong (chongfujun)发现此问题。同时感谢nobu对此漏洞的额外修复。
历史
- 最初发布于2025年10月7日 0:00:00 (UTC)