整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

2019年我们追过的jQuery,它的漏洞你知道吗?

管JavaScript库jQuery不再像以前那样流行。

但是它仍被广泛使用。

因此,一旦它曝出漏洞,影响的网站范围很大。

2019年jQuery主要漏洞

Snyk发布了2019年JavaScript框架状态安全报告,该报告主要针对两个领先的JavaScript 框架进行安全审查,同时还调查了其他三个前端JavaScript 生态系统项目的安全漏洞:Vue.js、Bootstrap 和 jQuery 等。

报告链接:

https://snyk.io/wp-content/uploads/snyk-javascript_report_2019.pdf

根据Snyk的统计报告显示,目前10个网站中至少有6个受到jQuery XSS漏洞的影响,在过去12个月中,jQuery的下载次数超过1.2亿次。

迄今为止跟踪到共有6个漏洞影响所有版本,其中四个属于中等级别的跨站点脚本漏洞,一个属于中等级别的原型污染漏洞,另一个是低严重性的拒绝服务漏洞。

也就是说,除非你使用的是jQuery 3.4.0及更高版本,否则你将处于易受攻击的风险之中。

影响大量网站

实际上,根据W3Techs的数据可以看出,使用jQueryv1.x占所有使用jQuery的网站的84%,这也就意味着它们将面临四个中等严重程度的XXS漏洞隐患,并且使用jQuery扩展库会加剧威胁。

其中,jquery.js 是一个恶意包,过去 12 个月中被下载了 5444 次,其严重程度和其他两个开源社区的恶意模块一样高。

报告还列出另外三个扩展库:jquery-mobile、jquery-file-upload 和 jquery-colorbox。

在过去的一年里,这三个扩展库包含执行任意代码和跨站点脚本的漏洞,并未进行任何修复和升级,依然有34万次的下载量。

近年来有人认为 jQuery 不再流行,而根据报道目前它仍有高下载量,原因可能如下:

  • 目前它还有大量教程、现有网站及软件等都是使用
  • jQuery 相关的插件非常丰富,很多新出的 js 框架也支持 jQuery
  • 大量的程序员用过 jQuery,熟悉它的语法和功能,后期也会继续使用

* 本文由看雪编辑 LYA 编译自 i-programmer,转载请注明来源及作者。

* 原文链接:

https://www.i-programmer.info/news/167-javascript/13232-the-perils-of-jquery.html

Query 是一个 JavaScript 库。

jQuery 极大地简化了 JavaScript 编程。

jQuery 很容易学习。

通过我这里的编辑器,你可以在线运行修改后的代码,并查看运行结果。

实例

$(document).ready(function(){ $("p").click(function(){ $(this).hide(); });});

jQuery 实例

在这里您将学到如何通过使用 jQuery 应用 JavaScript 效果。

  • jQuery 在线实例


jQuery 测验

在测试你的 jQuery 技能!

  • jQuery 测验

jQuery 参考手册

在我这您将学习到更多的jquery的使用方法。

  • jQuery 参考手册

  • jQuery API 手册

如您还有不明白的可以在下面与我留言或是与我探讨QQ群308855039,我们一起飞!

节我们学习 jQuery 中的事件的使用,jQuery 是专门为响应 HTML 页面中的事件而设计的。我们在使用时,需要遵循以下原则:

  • 把所有 jQuery 代码置于事件处理函数中。
  • 把所有事件处理函数置于文档就绪事件处理器中。
  • jQuery 代码置于单独的 .js 文件中。
  • 如果存在名称冲突,则重命名 jQuery 库。

什么是事件

首先我们要知道什么是事件,页面对不同访问者的响应叫做事件,例如点击某个按钮,选择单选框或复选框,滑动鼠标等,这些都可以称为事件。

jQuery常用事件

jQuery 中,大多数 DOM 事件都有一个相应的 jQuery 方法。例如我们前面提到过的点击事件的对应的方法为 click() 方法。

click点击事件

当我们点击元素时,会发生 click 点击事件,这需要用到 click() 方法。

示例:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>jQuery_侠课岛(9xkd.com)</title>
<script src="jquery-3.5.1.min.js"></script>
<script>
  $(function(){
    $("button").click(function(){
      alert("hello, xkd!");
    });
  });
</script>
</head>
<body>
  <div>
    <button>点击按钮</button>
  </div>
</body>
</html>

在浏览器中的演示效果: