GSS資安電子報0152期【不要成為下一個EQUIFAX - 2017 十大OpenSource弱點】

2018年五月06日(日) PM 01:45

撰文及整理:叡揚資訊資安事業處

已經過去了一年。你的產品中是否還有這些漏洞?

 

    在2017年,Open Source的漏洞對於應用程式的安全性來說,是最具威脅性的一年。尤其是在Equifax慘痛的教訓之後。Equifax事件,就像電影一樣,居然在Equifax團隊的眼皮底下,洩漏了超過1.45億筆個人資料,讓我們想回顧一下,過去這一年還有那些漏洞,來攻擊整個資訊產業?造成可憐的工程師非常頭痛,並用多個漫長的夜晚來進行軟體更新及漏洞修補。

iThome新聞:Equifax資料外洩事件延燒,繼資訊長、安全長之後執行長也下台

iThome新聞:Equifax去年資料外洩事件受害人數再增240萬達1.48億

      WhiteSource團隊彙整了過去一年的報告,並編制了2017年十大最常見漏洞列表。其中一些可能在2016年首次發現,但在今年真正發生攻擊。他們不僅收集了大多數開發人員和安全人員熟悉的National Vulnerability Database(NVD)的數據,還彙整了WhiteSource 研究團隊自己的資料庫,這些資料庫每天都從許多公開的Open Source網站及建議漏洞修補的網站進行更新。

      雖然每個開發人員都關心,是否有影響他們程式的漏洞,但我們已經根據受到漏洞影響的公司數量來排序。這個清單只整理出高風險及中風險的漏洞;另外要注意的事,但是這個順序並沒有顯示該弱點造成了公司多大的損害,就像Equifax案例,雖然獲得很多人的討論,但此弱點並沒有很多公司受到影響。我們的希望是,這篇文章能讓公司的執行長、技術長或安全長能夠看到,並向他們的資訊相關主管,寄送一封緊急的電子郵件,要求他們報告公司內部到底用了那些Open Source 程式、套件或是軟體(OSS)。這些高階主管,如果聽到他們的開發人員正在開發的應用程式平均包含70-80%的Open Source,可能會感到非常震驚吧!!

      因此,強烈建議您的團隊仔細檢查各個系統或主機,看看他們是否正在使用下面列出的版本,並儘快進行更新或是修補漏洞。

 

1. The Spring Security Framework:CVE-2016-9879CVE-2016-5007

      排在2017年的榜首是Spring Framework。

      由於其兼具模組化和輕量級,Spring是最流行的Java應用程式開發框架之一。它被許多開發人員所喜愛,因為它讓他們更輕鬆地開發功能更強大的應用程式。這個框架通常依靠在應用程式和資料庫之間提供一個介面(interface),這對於要透過API來存取後端的資料來說至關重要。它以 inversion of the control(IOC)的設計原理廣為人知。這對於要用API來取得後端的資料來說至關重要。它以反轉控制設計原理而廣為人知,該原理包含分層(layering),輕量級容器(lightweight container)以及在介面上開發的能力。

      不幸的是,對於使用Spring架構的人來說,他們在過去一年中發現了兩個痛苦的漏洞,此漏洞影響了Spring的安全模組。在這兩種情況下,CVE都得到5.0分,嚴重程度為中風險。首先是在Pivotal Spring Security發現的CVE-2016-9879,它允許攻擊者繞過重要的安全檢測。這個漏洞影響了264間公司,並導致大量紅色警報。據研究人員介紹,導致此漏洞的問題在於Servlet中處理路徑參數時缺乏明確性,因為當使用getPathInfo()函式取得路徑資料時,實際上並非所有Servlet containers 都包含路徑參數。這很重要,因為Spring的安全模組依賴於這個參數,利用比對來檢測該參數值是否符合條件。

      理論上,一個攻擊者能利用這個程式的漏洞,可以直接繞過驗證,進而直接存取敏感資料。Spring Security中發現的第二個漏洞是CVE-2016-5007。這個小小的doozie漏洞影響了554間公司,它讓駭客可直接透過,這個元件過於寬鬆的驗證方式,直接取得敏感資料。值得慶幸的是,這兩個漏洞都已做了修補,Spring也提供了更新版本。

NVD有關於CVE-2016-9879CVE-2016-5007的更多資訊。

2. Jackson Databind:CVE-2017-7525

       第二名是過去比較常用的元件,它影響354間公司。Jackson Databind元件通常被稱為“用於Java的最佳JSON解析工具”,它能夠流行的主要原因是能支援JSON和Java之間進行轉換,因此受到很多人的喜愛。如果你想實作一個API,並持續使用它,那Jackson Databind就是一個很重要的工具,所以我們可以有把握地說,會有很多的開發者會對,將要說的這個漏洞,感到非常傷心。

      這個眾人鍾愛的元件被發現有一個反序列化的漏洞,在CVE分數上為7.8,嚴重程度為高風險。它被判定為高風險的原因,是由於該漏洞允許攻擊者在給ObjectMapper的readValue方法提供可以直接以程式碼進行輸入,因此才會列為高風險漏洞。

查看RedHat的頁面,了解有關如何處理此漏洞的更多資訊。 

3. jQuery:WS-2017-0195

      這個JavaScript套件是軟體產業的骨幹之一。它是非常受歡迎的,因為一旦你使用它,就可以非常容易地操作客戶端環境中的各個元件。它基本上用於客戶端,提供欄位驗證,新增按鈕以及執行排序和計算等資料處理。從本質上講,這個套件為用戶提供了幾乎所有他們需要的東西,它直接在客戶端的網頁上,就可以以完成他們在伺服器端上做的任何事情。但在版本 v2.2.4以下版本,它在處理屬性名稱時,使用了小寫運算(lowercasing logic),這導致布林屬性的名稱,如果不是全部以小寫型態的話,可能導致無限迴圈,並超過堆疊的限制(stack call limit),進而造成此功能發生拒絕服務(DOS)。這個漏洞是否導致任何重大問題或是攻擊事件,目前尚未得知。在NVD中沒有列出,WhiteSource已經在資料庫中將這個漏洞標記為WS-2017-0195,我們發現它存在於288間公司。

請於GitHub上查看修復方式

4. Zookeeper Apache:CVE-2017-5637

     就像這個名字所暗示的,這個套件企圖讓所有的野獸保持秩序,而不是互相攻擊。Zookeeper從本質上是幫助開發人員配置、同步和組織大型分散式系統,如內部或外部網路。所以當發現漏洞可能導致阻斷服務(Denial of Service)攻擊時,這是一個很大的問題。我們看到它在212間不同的公司中瘋狂運行,遠遠超出了預期的項目數量。它被賦予了中風險的嚴重程度,但得分為6.9,這使得人們需要去注意並重視它。修復方式需建立一個命令,並包含四個字母單字的白名單,否則將導致阻斷服務(Denial of Service)攻擊。我們相信,被這個漏洞攻擊的公司,有充足的時間來選擇他們自己的白名單。

 

5. Apache Tomcat:CVE-2017-12617CVE-2016-6794

       哦,Apache Tomcat,你為什麼這樣傷害我們?你的標誌非常可愛,功能如此有用,但你的漏洞卻如此糟糕。Tomcat是最常用的WebServer套件之一,Java EE的實現,使其成為非常受歡迎的項目。這就是為什麼當CVE-2017-12617被發現時,它非常令人沮喪,根據WhiteSource的記錄,151間公司面臨此風險。它允許潛在的遠端程式碼執行(Remote Code Execution, RCE)攻擊,這個CVE使許多公司處於危險之中。駭客可以使用此漏洞在您的系統中執行未經授權的操作,如自我執行命令,用於發布或竊取資料,就像我們在Equifax案例中看到的那樣。由於其可能造成重大損害,此漏洞獲得高風險和8.1分。

      Tomcat用戶不得不忍受的下一個麻煩是CVE-2016-6794,它允許攻擊者繞過SecurityManager。當配置SecurityManager時,Web應用系統讀取系統屬性的能力應由SecurityManager控制。

      在Apache Tomcat 9.0.0.M1至9.0.0.M9,8.5.0至8.5.4,8.0.0.RC1至8.0.36,7.0.0至7.0.70,6.0.0至6.0.45,系統內的參數可透過設定檔進行更換,但如果讓惡意的web 應用系統使用,讓它透過SecurityManager,讀取未授權的系統參數。像是密碼或是重要的資訊,那影響的範圍就很大了。雖然這是一個嚴重的問題,影響了213間公司,但它並沒有比CVE-2017-12617還要來的嚴重,它的分數是5.1及中風險的嚴重等級。

請查看NVD的這些鏈接(CVE-2017-12617CVE-2016-6794)以獲取有關修復的信息。

6. node-mime:WS-2017-0330

      這個JavaScript套件在WhiteSource資料庫中顯示在2017年已經影響了143間不同的公司。但是它卻沒有在NVD的資料庫中。據WhiteSource研究人員指出,這個漏洞會造成被攻擊的目標發生阻斷服務(Denial of Service)。這個元件弱點造成的威脅,風險等級列為高風險,且得分高達7.5分。

如要解決的方法可於GitHub上找到修補程式。

7. Tough-Cookie:WS-2017-0307這對於使用來自後端的數據的API至關重要

     tough-cookie也是javascript實作的套件,用於像SalesForce這樣的應用程式。同樣是DOS攻擊,由於有127間公司正在使用它而成為名單之一。如果被利用,該漏洞允許攻擊者使用正規表示式,當進入到比對時造成ReDos攻擊,足以讓系統或服務停止工作。正則表達式解釋器進入效率非常低的循環,足以阻止服務正常工作。

如要解決的方法可於GitHub上找到修補程式。

8. Angular:WS-2017-0120

      最近流行的Angular是最廣泛使用的前端開發框架之一。它可以用於與NPM,js和CDNJS一起執行。不幸的是,在使用xlink:href屬性值時,沒有適當的驗證,這使得它容易受到跨站腳本攻擊(Cross-Site Scripting, XSS)的攻擊,攻擊者會試圖欺騙伺服器,讓他們連到不應該前往的網站

快使用GitHub的修復程式,讓駭客無法竊取您保貴的資料。

9. Apache Struts2(Equifax)中的Jakarta Multipart解析器:CVE-2017-5638

      如果你在2017年還不知道這個漏洞,那麼在這裡我們長話短說,這個漏洞怎麼成為近年美國史上最嚴重的個資外洩事件。這個遠端程式碼執行(Remote Code Execution, RCE)攻擊利用了非常受歡迎的Apache Struts2套件中的一處漏洞,該套件中在處理文件上傳時,解析器並未驗證上傳的內容,而造成惡意的程式上傳至主機上,這個漏洞也讓Equifax團隊造成嚴重的財務、聲譽上的損失,高階主管(CEO, CIO, CSO)也都分別下台。我們沒有把它排在榜首的唯一原因是,因為沒有很多公司有使用這個套件。但是,這個例子證明了如果攻擊者有機會找到漏洞,就算只有單一漏洞也可造成如此大的損害。當然,這個漏洞得到了高風險及最嚴重的10分。

如果您還沒有修補的話,請儘快下載Apache的修復程式。

10. Krack:CVE-2017-13077CVE-2017-13078CVE-2017-13079CVE-2017-13080CVE-2017-13081CVE-2017-13082CVE-2017-13084CVE-2017 -13086CVE-2017-13087CVE-2017-13088

      上面列出的漏洞會讓開發人員非常頭痛,因為此系列的CVE會影響所有使用到Wi-Fi設備的人,基本上就是每個人。這次攻擊針對的是已成為所有Wi-Fi系統標準的加密方式—WPA2加密協議,破壞了我們為保護信用卡、密碼等個人資料的安全措失。駭客設法去執行關鍵的重新安裝攻擊(reinstallation attacks,簡稱為Krack),並將所有來自蘋果系統的用戶發送到Linux,使其變得混肴。目前還不清楚這次攻擊是否使它脫離了目前的理論研究領域中,但是我們已經將這一系列攻擊評分為8.1分,並且由於其可能造成的嚴重破壞,所以我們不得不將其列為高風險弱點。

 

相關文章分享:

GSS資安電子報0149期【最新網頁常見10大風險- OWASP TOP 10 2017】

GSS資安電子報0148期【企業採用開源軟體所面臨的專利權與資安風險】

 

相關分類主題:軟體開發專區軟體安全OWASP Top10

相關文章

金融業恐淪Log4j漏洞風暴最大受害者!可能有高達一半比例的公司使用10個以上有...

企業如果想要因應Log4j漏洞的危機,首先要先清查自己到底有多少系統使用了有漏洞的Log4j版本,而根據國內一家廠商對用戶進行的調查,許多產業都無法倖免,但其中,金融業所要處理的Log4j漏洞管理作業可能最繁重,因為他們的金融業用戶中,使用有漏洞Log4j版本超過10個的公司,竟高達50%
2022/01/03