软件系统定制开发jQuery版本低引起的漏洞——CVE-2020-11022/CVE-2020-11023

jQuery软件系统定制开发版本低引起的漏洞——-2020-11022/CVE-2020-11023

漏洞号:CVE-2020-11022/CVE-2020-11023

影响范围:jQuery >= 1.0.3 < 3.5.0

漏洞原理

见:

漏洞复现

软件系统定制开发要想在项目本地实现,可把该html保存下来,修改script的src属性为项目引用js的地址,再打开即可操作实现。

修复方案

1)更新jQuery到3.5.0或更高版本

https://code.jquery.com/jquery-3.5.0.js

2)使用XSS清理工具清理用户输入的HTML,官方推荐:

https://github.com/cure53/DOMPurify

这里使用方案一,升级jQuery版本。

升级jQuery

jQuery官网:

项目使用的jQuery是1.x。升级版本根据官方指引使用migrate插件。

搜索migrate,得到最新的Migrate插件是2016年的,但是给出了升级到jQuery3.0的途径。

按照指引,先将1.x升级至1.x版本最新的1.12.3,并同时使用migrate 1.4.1插件,对警示信息指出的问题进行修改。然后再升级至当前最新的3.x版本,同时使用migrate 3.x插件。

现在(22年3月)jQuery最新的版本是3.6.0。上面指引并未给出migrate 3.x的链接。不过在jQuery 3.6.0的发布博客中可以找到。

同时也给出了3.5的升级指引和不能升级到3.5时可用的补丁等。

Migrate 3.x插件下载地址:

遇到的警示信息

参考官方指引:

  • JQMIGRATE: jQuery.fn.focus() event shorthand is deprecated

    参考jQuery.fn.click()的替换方法:.focus()换成.trigger(“focus”)

  • JQMIGRATE: jQuery.isFunction() is deprecated

    参考jQuery.type()的替换方法,将原来的$.isFuntion(arg)换成typeof arg === “function”

网站建设定制开发 软件系统开发定制 定制软件开发 软件开发定制 定制app开发 app开发定制 app开发定制公司 电商商城定制开发 定制小程序开发 定制开发小程序 客户管理系统开发定制 定制网站 定制开发 crm开发定制 开发公司 小程序开发定制 定制软件 收款定制开发 企业网站定制开发 定制化开发 android系统定制开发 定制小程序开发费用 定制设计 专注app软件定制开发 软件开发定制定制 知名网站建设定制 软件定制开发供应商 应用系统定制开发 软件系统定制开发 企业管理系统定制开发 系统定制开发