近日,美國高校安全研究團隊發(fā)布了一份關于網(wǎng)絡上使用JavaScript程序庫的分析報告,報告中指出在所調(diào)查的13.3萬個網(wǎng)站中,有37%的網(wǎng)站存在使用含有漏洞的JavaScript程序庫的情況,而且至少使用了1個,同時這些程序庫多是很久都未更新的老版本。
37%網(wǎng)站存在JavaScript庫漏洞
JavaScript作為一種高級動態(tài)程序語言,是與HTML及CSS并重的網(wǎng)頁前端設計標準代碼,堪稱萬維網(wǎng)(WWW)的三大核心技術語言之一。而JavaScript程序庫(JavaScript library)則是為了方便開發(fā)JavaScript應用而事先寫好的子程序集合,目前全球存在約10萬種程序庫。
據(jù)悉,該調(diào)查報告以最常見的72種開放源碼的JavaScript程序庫為標準,包括jQuery、jQuery-UI、Modernizr、Bootstrap、Yepnope、jQuery-Migrate及SWFObject等,來考察當前網(wǎng)站在使用和維護這些JavaScript程序庫時的情況。
通過建立上述72種程序庫的各版本漏洞數(shù)據(jù)庫,研究人員掃描了大約13.3萬個網(wǎng)站,來偵測這些網(wǎng)站是否安裝了含有漏洞的程序庫及其相關版本。
結(jié)果令人驚訝的是,有37%的網(wǎng)站使用了1個含漏洞的JavaScript庫版本,而有10%的網(wǎng)站則使用了2個甚至以上的含漏洞JavaScript庫。
在Alexa排行榜上的7.5萬個網(wǎng)站所使用的程序庫中,有87.3%的YUI3、86.6%的Handlebars、40.1%的Angular、36.7%的jQuery,以及33.7%的jQ-UI都是有漏洞的版本。
因此,該安全研究團隊指出,由于只測量了72個JavaScript庫,因此,37%的比例很可能還被低估了。
報告指出,盡管各種JavaScript程序庫不斷推出更新版,但仍有不少網(wǎng)站繼續(xù)使用那些包含漏洞的版本。因此,對于網(wǎng)站開發(fā)人員來說,當務之急應該采用更為系統(tǒng)化的管理機制,快速掌握網(wǎng)站中使用了哪些程序庫,并隨時保持其更新狀態(tài)。
此外,研究人員也發(fā)現(xiàn),絕大多數(shù)的程序庫都未建立專門的安全更新郵件論壇(mailing list),也多缺乏詳細的漏洞報告,還有許多修補程序無法兼容之前的老程序庫版本,快速的生命周期也讓開發(fā)人員疲于更新等問題。