jQuery 3.5 发布,修复 XSS 漏洞

jQuery 3.5.0 发布总结

主要更新内容

jQuery 3.5.0 由 Timmy Willison 发布,主要修复了 jQuery HTML 解析器中的一个跨站脚本(XSS)漏洞,并添加了部分缺失的方法以准备 jQuery 4 的发布。

跨站脚本(XSS)漏洞修复

  • 漏洞发现者:Masato Kinugawa 在 jQuery 的 htmlPrefilter 方法中发现了一个 XSS 漏洞,并通过一个挑战示例展示了该漏洞的影响。
  • 漏洞原因htmlPrefilter 方法使用正则表达式将 XHTML 风格的自闭合标签转换为 HTML 风格的标签,这可能导致意外的 HTML 上下文暴露,从而引发 XSS 攻击。
  • 修复措施:jQuery 3.5.0 将 jQuery.htmlPrefilter 改为恒等函数,修复了该漏洞。依赖旧行为的代码可能会受到影响,建议使用 jQuery Migrate 插件恢复旧行为。

影响范围

  • Snyk 平台估计:84% 的网站可能受到 jQuery XSS 漏洞的影响,jQuery 在 Alexa 排名前 5000 的网站中占 79%。

位置选择器(Positional Selectors)更新

  • 移除计划:jQuery 4 将移除所有位置选择器(如 :first:last),出于维护和优化的考虑。
  • 新增方法:jQuery 3.5.0 为 :even:odd 添加了替代方法,例如 $("div:even"); 可以写成 $("div").even();

其他更新

  • jQuery.trim 弃用:推荐使用 JavaScript 原生的 String.prototype.trim() 方法。
  • 其他修复和变更:jQuery 3.5.0 包含其他 bug 修复、弃用和变更,详细内容可参考发布说明和升级指南。

升级建议

获取方式

总结

jQuery 3.5.0 是一个重要的安全更新版本,修复了 XSS 漏洞并为 jQuery 4 的发布做准备。开发者应尽快升级,并根据需要使用 jQuery Migrate 插件确保代码兼容性。

阅读 166
0 条评论