前两周发布的jQuery 3.4.0 除了常规更新外,更重要的是修复了一个称为“原型污染(prototype pollution)”的罕见安全漏洞。
什么是原型污染?顾名思义, 原型污染就是指攻击者通过某种手段修改 JavaScript 对象的 prototype 。
JavaScript 对象就跟变量一样,但它不是存储一个值( var car =“Fiat” ),而是可以包含基于预定义结构的多个值 ( var car ={type:"Fiat", model:"500", color:"white"} )。
prototype 定义了 JavaScript 对象的默认结构和默认值,因此在没有为对象赋值时应用程序也不会崩溃。
但如果攻击者从 JavaScript 对象的 prototype 入手,攻击者可通过将其控制的 prototype 注入对象,然后通过触发 JavaScript 异常导致拒绝服务(denial of service),或者篡改应用程序源代码以注入攻击者的代码路径。最终的结果可能就是导致应用程序崩溃或劫持应用程序。
Snyk 团队详细 描述 了这个新的 jQuery “原型污染”漏洞,其中包含攻击原理和规避方法。 “原型污染攻击(CVE-2019-11358)”的概念验证代码点此查看 。
虽然漏洞比较严重,但好在“原型污染”攻击并不能被大规模利用,因为每段攻击代码必须针对每个目标进行微调。此外,大部分网站并不使用 jQuery 进行重要的操作,主要是用于操作动画中的菜单或创建弹窗等。
最后,如果担心安全问题,建议升级至最新版本jQuery 3.4.0,毕竟目前大多数网站仍在使用 jQuery 的 1.x 和 2.x 分支,这意味着绝大多数基于 jQuery 的应用程序和网站仍有可能遭受攻击。
以上所述就是小编给大家介绍的《jQuery 的“原型污染”安全漏洞》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
ASP.NET 2.0开发指南
郝刚 / 人民邮电出版社 / 2006 / 88.0
本书紧紧围绕ASP.NET 2.0技术精髓展开深入讲解,全书分为6个部分,共18章。第1部分介绍基础知识,包括ASP.NET 2.0概述、Visual Studio 2005集成开发环境、创建ASP.NET应用程序和C# 2.0程序设计基础。第2部分讲解用户界面方面的特性,包括母版页、主题和皮肤、站点导航控件和其他新增服务器控件。第3部分探讨了数据访问方面的内容,包括数据访问技术概述、数据源控件、......一起来看看 《ASP.NET 2.0开发指南》 这本书的介绍吧!