儘管 JavaScript 庫 jQuery 仍被使用,但它已不再像以前那樣流行。根據開源安全平臺 Snyk 統計,目前至少十分之六的網站受到 jQuery XSS 漏洞的影響,甚至用於擴充套件 jQuery 功能的 jQuery 庫還引入了更多的安全問題。Snyk 釋出了 2019 年 JavaScript 框架的狀安全報告,該報告主要是對兩個領先的 JavaScript 框架(Angular 和 React)進行安全審查,但同時還調查了其他三個前端 JavaScript 生態系統專案的安全漏洞:Vue.js、Bootstrap 和 jQuery 等。

報告顯示,在過去 12 個月中,jQuery 的下載次數超過 1.2 億次,相當於 Vue.js(4000 萬次)和 Bootstrap(7900 萬次)加起來的下載次數。在報告中,Vue.js 被發現漏洞有四個,但已全部修復;Bootstrap 包含七個跨站點指令碼(XSS)漏洞,其中有三個是在 2019 年披露的,目前沒有任何安全修復或升級途徑來避免;而在 jQuery 中,迄今為止被跟蹤影響到所有版本的六個漏洞,其中四個屬於中等級別的跨站點指令碼漏洞,一個屬於中等級別的原型汙染漏洞(Prototype Pollution),另一個是低階別的拒絕服務漏洞。

Snyk 報告的結論是,如果你使用 jQuery 3.4.0 以下版本,則容易遭受攻擊。

而根據 W3Techs 的資料,使用 jQuery v1.x 的網站佔了 84%,這導致它們存在四個中等級別的 XSS 漏洞隱患,使用 jQuery 擴充套件庫(其中 13 個已識別漏洞)會加劇這種情況。

在 Snyk 報告中,jquery.js 是一個惡意包,過去 12 個月中被下載了 5444 次,它的嚴重程度與其他兩個開源社群模組的惡意版本一樣高( jquery-airload 322 次下載和 github-jquery-widget 232 次下載)。

報告還列出另外三個擴充套件庫:jquery-mobile、jquery-file-upload 和 jquery-colorbox,雖然其中包含任意程式碼執行和跨站點指令碼安全漏洞,且沒有任何升級途徑可修補這些漏洞,但它們還是在過去 12 個月中總共下載了 34 萬次以上。

近年來有人認為 jQuery 不再流行,而根據報導目前它仍有高下載量,原因可能如下:

  • 目前它還有大量教程、現有網站及軟體等都是使用
  • jQuery 相關的外掛非常豐富,很多新出的 js 框架也支援 jQuery
  • 大量的程式設計師用過 jQuery,熟悉它的語法和功能,後期也會繼續使用

自 開源中國