溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么確保Java應用程序安全

發布時間:2022-02-24 14:28:51 來源:億速云 閱讀:281 作者:小新 欄目:開發技術

這篇文章給大家分享的是有關怎么確保Java應用程序安全的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

在之前,大多數 Java 用戶訪問 JDK 更新的方式發生了變化。其原因是 Oracle 對 JDK 的開發方式和 Oracle JDK 的許可條款所做的更改。

Oracle JDK 11 和 Oracle JDK 8(從更新 211 開始)現在使用 Oracle 技術網絡許可協議。這將免費使用限制為僅四種情況:

  1. 個人使用(用于個人應用程序的筆記本電腦或臺式機)

  2. 開發使用

  3. Oracle 批準的產品使用

  4. Oracle 云基礎架構使用

對于所有其他情況,必須從 Oracle 購買 Java SE 訂閱。

這要求用戶就他們的 JDK 部署策略做出決定。一種這樣的方法是“好吧,它在我們現在擁有的 JDK 上運行良好;讓我們堅持下去吧”。

這有一個明顯的缺陷,即該決定將對應用程序的安全性產生的影響。

自從人們開始開發軟件以來,其他人一直在努力尋找以非預期方式使用它的方法。這通常是出于惡意目的,例如竊取信用卡號或用戶身份。我們使用術語黑客來描述能夠破壞計算機安全的人。黑客可以通過無數種方式來實現他們的目標;從欺騙人們泄露機密信息(網絡釣魚)到通過緩沖區溢出等技術對軟件進行復雜的操作。

不幸的是,軟件越復雜,黑客利用漏洞的可能性就越大。JDK 是一個非常復雜的軟件,因此可能包含漏洞。

當發現軟件中的漏洞時,它們通常被記錄為常見漏洞和暴露 (CVE)。由 Mitre Corporation 運營的國家網絡安全 FFRDC 維護 CVE 數據庫。每個由唯一編號標識的 CVE 都有漏洞的文本描述。

此外,每個 CVE 都有一個通用漏洞評分系統 (CVSS) 值。這不包含在 CVE 中,但在由美國國家科學技術研究院 (NIST) 托管的國家漏洞數據庫中維護。CVSS 提供了一個基本分數和一組指標?;痉謹凳且粋€介于 0.1 和 10.0 之間的值,表示漏洞的嚴重程度(從技術上講,基本分數從 0.0 開始,但根據定義,任何分數為零的東西都不是漏洞)?;痉謹凳歉鶕唤M指標計算得出的,這些指標表明漏洞的不同方面。這些指標涉及諸如是否可以通過網絡利用漏洞、是否需要對機器進行物理訪問等事項。

  • 0.0:無

  • 0.1-3.9:低

  • 4.0-6.9:中等

  • 7.0-8.9:高

  • 9.0-10.0:嚴重

讓我們看看讓您的 JDK 保持最新狀態有多么重要。

首先,我回顧了過去三年的更新,并提取了每個都解決的具有最高 CVSS 基礎分數的漏洞。這顯示在下表中。

處理器日期最高 CVSS受影響的 JDK 版本
2020 年 7 月 2020 年 4 月

2020 年 1 月

2019 年 10 月

2019 年 7 月

8.38.3(多個)

8.1

6.8(多個)

6.8

7、8、11、147、8、11、13、14

7、8、11、13

7、8、11、13

7、8、11、12

2019 年 4 月9.08
2019 年 1 月6.16、7、8、11
2018 年 10 月9.08,11
2018 年 7 月5.96、7、8、10
2018 年 4 月8.36、7、8、9、10
2018 年 1 月8.3(多個)6,7,8,9
2017 年 10 月9.6(多個)6,7,8,9
2017 年 7 月9.6(多個)7,8

如您所見,大多數更新至少解決了一個高評分漏洞,并解決了幾個關鍵漏洞。當我們將其限制為 Oracle Java SE 許可更改后的更新時,我們仍然看到一個具有嚴重漏洞,三個具有高漏洞。有趣的是,2019 年 4 月更新中解決的關鍵漏洞存在于用于構建 JDK 的 Windows DLL 中,而不是任何 JDK 代碼中。

接下來,我分析了自 2015 年 1 月以來的所有更新,這些都是現成的信息。查看所有解決的漏洞并將它們劃分為風險組,我們可以生成一個條形圖。

我將關鍵的分成兩部分,以突出顯示有多少個得分為 10 的。

如您所見,總共解決了 320 個 CVE,其中大部分處于中低范圍。關鍵 CVE 的數量是 59,這會讓您思考保持 JDK 最新的重要性。

然而,還有一點復雜。

Oracle 為每個更新提供了兩個不同的版本;這對于他們所有的軟件都是一樣的。這些稱為重要補丁更新 (CPU) 和補丁集更新 (PSU)。

CPU 僅包含與解決安全漏洞相關的更改。PSU 提供所有這些更改,以及任何其他錯誤修復、小幅增強等。這樣做的原因是為了在需要修補關鍵漏洞時快速推出更新。由于 CPU 包含的更改集較小,因此不太可能對應用程序的穩定性產生影響(即不太可能阻止您的應用程序工作)。使用 CPU 完成觸摸測試后,您可以部署它以確保應用程序的最大安全性。然后,在將 PSU 部署到生產機器之前,您可以花更長時間測試 PSU(通常運行一整套回歸測試)。這確保了您的應用程序的最大穩定性。

這里需要注意的一點是,并非所有 OpenJDK 二進制提供程序都了解 CPU 和 PSU 之間的區別。有些人稱他們的更新為 CPU,而實際上它是 PSU。在部署之前,您應該仔細查看所獲得的內容。

為了突出同時擁有 CPU 和 PSU 的好處,我們只需要看看 2020 年 7 月的更新。這包括對一個本身引入回歸的錯誤的修復。這種回歸的影響是大量使用的軟件,如 Hadoop Cluster、Solr 和 Lucene 不再可靠地工作,這對于使用它們的任務關鍵型應用程序來說是一個嚴重的問題?;貧w不在安全補丁中,因此不包含在 CPU 中。

7 月 27 日(即預定的 7 月更新發布后的 12 天)發布了作為更新 265 的修復,從而解決了回歸問題。初始更新包含對基本分數為 8.3 的 CVE 的修復,其詳細信息已在發行說明中公開。如果您使用的是受影響的軟件系統之一,如果您只有全包式 PSU,黑客將有近兩周的時間來嘗試利用它。如果您還可以訪問 CPU,您就可以推出必要的安全補丁,保護您的系統免受威脅,然后無憂無慮地等待修訂后的 PSU 發布。

Azul 的 Zulu Enterprise 版本的 OpenJDK 面向希望確保其系統提供最高級別的安全性和穩定性的用戶。除了提供每個更新的 CPU(安全)和 PSU(完整)版本之外,我們還努力在 Oracle 發布它們的版本后盡快交付這些更新。自 JDK 8 的免費公開更新結束后,Zulu Enterprise 客戶可以在 Oracle 發布后的一小時內下載更新。這基本上是同時的。

總之,很明顯,確保所有運行基于 JVM 的應用程序的系統都保持最新更新是多么重要。

感謝各位的閱讀!關于“怎么確保Java應用程序安全”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女