中文字幕一区二区人妻电影,亚洲av无码一区二区乱子伦as ,亚洲精品无码永久在线观看,亚洲成aⅴ人片久青草影院按摩,亚洲黑人巨大videos

確保您的Java應(yīng)用程序安全

發(fā)布于:2021-01-07 17:22:25

0

130

0

Java 應(yīng)用程序 安全

對(duì)于所有使用Java應(yīng)用程序的企業(yè)來(lái)說(shuō),Java安全性都是重要的主題。Java冠軍Simon Ritter深入研究了JDK,以及未使您的應(yīng)用程序保持最新?tīng)顟B(tài)的潛在缺點(diǎn),以及為什么重要的補(bǔ)丁更新(CPU)和補(bǔ)丁集更新(PSU)之間的區(qū)別至關(guān)重要。

一年多以前,即2019年4月,大多數(shù)Java用戶訪問(wèn)JDK更新的方式發(fā)生了變化。原因是Oracle對(duì)JDK的開(kāi)發(fā)方式和Oracle JDK的許可條款進(jìn)行的更改綜合起來(lái)。

現(xiàn)在,Oracle JDK 11和Oracle JDK 8(來(lái)自更新211)使用Oracle技術(shù)網(wǎng)絡(luò)許可協(xié)議。這將免費(fèi)使用限制為僅以下四種情況:

  1. 個(gè)人使用(用于個(gè)人應(yīng)用程序的筆記本電腦或臺(tái)式機(jī))

  2. 開(kāi)發(fā)用途

  3. Oracle批準(zhǔn)的產(chǎn)品使用

  4. Oracle云基礎(chǔ)架構(gòu)使用

對(duì)于所有其他情況,必須從Oracle購(gòu)買Java SE訂閱。

這要求用戶做出有關(guān)其JDK部署策略的決策。一種這樣的方法是:“嗯,它在我們現(xiàn)在擁有的JDK上運(yùn)行良好;讓我們堅(jiān)持下去”。

這有一個(gè)明顯的缺陷,那就是該決定將對(duì)應(yīng)用程序的安全性產(chǎn)生影響。

自從人們開(kāi)始開(kāi)發(fā)軟件以來(lái),其他人一直在嘗試尋找以最初不想要的方式使用它的方法。這通常是出于惡意目的,例如竊取信用卡號(hào)或用戶身份。我們使用“黑客”一詞來(lái)描述能夠顛覆計(jì)算機(jī)安全性的人。黑客使用多種方法來(lái)實(shí)現(xiàn)其目標(biāo)。從欺騙人們到泄露機(jī)密信息(網(wǎng)絡(luò)釣魚),再到通過(guò)緩沖區(qū)溢出之類的技術(shù)對(duì)軟件進(jìn)行復(fù)雜的操縱。

不幸的是,軟件越復(fù)雜,黑客就越容易利用該漏洞。JDK是一個(gè)非常復(fù)雜的軟件,因此可能包含漏洞。

發(fā)現(xiàn)軟件中的漏洞后,通常會(huì)將它們記錄為常見(jiàn)漏洞和披露(CVE)。由Miter公司運(yùn)營(yíng)的國(guó)家網(wǎng)絡(luò)安全FFRDC維護(hù)CVE數(shù)據(jù)庫(kù)。每個(gè)CVE(由唯一編號(hào)標(biāo)識(shí))均具有該漏洞的文字描述。

此外,每個(gè)CVE都有一個(gè)通用漏洞評(píng)分系統(tǒng)(CVSS)值。它不包括在CVE中,而是在由美國(guó)國(guó)家科學(xué)技術(shù)研究院(NIST)托管的國(guó)家漏洞數(shù)據(jù)庫(kù)中維護(hù)。CVSS提供基本分?jǐn)?shù)和一組指標(biāo)。基本分?jǐn)?shù)是表示漏洞嚴(yán)重性的0.1到10.0之間的值(從技術(shù)上講,基本分?jǐn)?shù)從0.0開(kāi)始,但從定義上講,分?jǐn)?shù)為零的任何東西都不是脆弱性)?;痉?jǐn)?shù)是根據(jù)一組指標(biāo)計(jì)算得出的,這些指標(biāo)表明漏洞的不同方面。這些指標(biāo)與諸如是否可以通過(guò)網(wǎng)絡(luò)利用漏洞,是否需要對(duì)計(jì)算機(jī)進(jìn)行物理訪問(wèn)等相關(guān)。

  • 0.0:無(wú)

  • 0.1-3.9:低

  • 4.0-6.9:中

  • 7.0-8.9:高

  • 9.0-10.0:嚴(yán)重

讓我們看一下保持JDK最新的重要性。

首先,我回顧了過(guò)去三年的更新,并提取了每個(gè)漏洞都具有最高CVSS基本分?jǐn)?shù)的漏洞。如下表所示。

CPU日期

最高CVSS

受影響的JDK版本

2020年7月2020年4月


2020年1月

2019年十月

2019年七月

8.38.3(多個(gè))


8.1

6.8(多個(gè))

6.8

7,8,11,147,8,11,13,14


7,8,11,13

7,8,11,13

7,8,11,12

2019年四月

9.0

8

一月2019

6.1

6,7,8,11

2018年十月

9.0

8,11

2018年七月

5.9

6,7,8,10

2018年四月

8.3

6,7,8,9,10

一月2018

8.3(多個(gè))

6,7,8,9

2017年十月

9.6(多個(gè))

6,7,8,9

2017年七月

9.6(多個(gè))

7,8

如您所見(jiàn),大多數(shù)更新解決了至少一個(gè)得分高的漏洞,其中一些解決了關(guān)鍵漏洞。當(dāng)我們僅將此限制為自O(shè)racle Java SE許可更改以來(lái)的更新時(shí),我們?nèi)匀豢吹狡渲幸粋€(gè)具有嚴(yán)重漏洞,而三個(gè)則具有較高漏洞。有趣的是,2019年4月更新中解決的關(guān)鍵漏洞位于用于構(gòu)建JDK的Windows DLL中,而不是任何JDK代碼中。

接下來(lái),我分析了自2015年1月以來(lái)的所有更新,這些都是隨時(shí)可用的信息。查看所有已解決的漏洞并將其分為風(fēng)險(xiǎn)組,我們可以生成一個(gè)條形圖,如下所示:

{xunruicms_img_title}

我將關(guān)鍵的一分為二,以突出顯示得分為10的得分。

如您所見(jiàn),總共解決了320個(gè)CVE,其中大多數(shù)處于中低范圍。關(guān)鍵CVE的數(shù)量為59,這應(yīng)該使您考慮使JDK保持最新?tīng)顟B(tài)的重要性。

但是,還有更多的復(fù)雜性。

Oracle為每個(gè)更新提供兩個(gè)不同的版本。他們的所有軟件都一樣。這些稱為關(guān)鍵補(bǔ)丁更新(CPU)和補(bǔ)丁集更新(PSU)。

CPU僅包含與解決安全漏洞有關(guān)的更改。PSU提供了所有這些更改,以及所有其他錯(cuò)誤修復(fù),較小的增強(qiáng)等。這樣做的目的是在需要修補(bǔ)關(guān)鍵漏洞時(shí)能夠快速推出更新。由于CPU包含的更改集較小,因此它不太可能對(duì)應(yīng)用程序的穩(wěn)定性產(chǎn)生影響(即,不太可能使您的應(yīng)用程序無(wú)法運(yùn)行)。使用CPU進(jìn)行觸摸測(cè)試后,可以對(duì)其進(jìn)行部署以確保應(yīng)用程序的最大安全性。然后,您可以在將PSU部署到生產(chǎn)計(jì)算機(jī)之前花費(fèi)更長(zhǎng)的時(shí)間測(cè)試PSU(通常運(yùn)行全套回歸測(cè)試)。這樣可以確保您的應(yīng)用程序具有最大的穩(wěn)定性。

這里的重要說(shuō)明是,并非所有OpenJDK二進(jìn)制提供程序都了解CPU和PSU之間的區(qū)別。實(shí)際上,有些人將它們稱為CPU更新,實(shí)際上是PSU。在部署之前,您應(yīng)該仔細(xì)查看所獲得的內(nèi)容。

為了強(qiáng)調(diào)同時(shí)擁有CPU和PSU的好處,我們只需要查看2020年7月的更新即可。其中包括對(duì)錯(cuò)誤的修正,該修正本身引入了回歸。這種回歸的影響是,Hadoop集群,Solr和Lucene等頻繁使用的軟件不再可靠運(yùn)行,這對(duì)于使用它們的關(guān)鍵任務(wù)應(yīng)用程序來(lái)說(shuō)是一個(gè)嚴(yán)重的問(wèn)題。回歸不在安全補(bǔ)丁程序中,因此不包含在CPU中。

通過(guò)在7月27日發(fā)布更新265的修復(fù)程序解決了回歸問(wèn)題,該修復(fù)程序是計(jì)劃的7月更新發(fā)布后的十二天。初始更新包含對(duì)CVE的修復(fù),其基本分?jǐn)?shù)為8.3,其詳細(xì)信息已在發(fā)行說(shuō)明中公開(kāi)。如果您一直在使用其中一個(gè)受影響的軟件系統(tǒng),那么如果您只有全包的PSU,黑客將有將近兩個(gè)星期的時(shí)間來(lái)嘗試?yán)么塑浖?。如果您還可以訪問(wèn)CPU,則可能已經(jīng)推出了必要的安全補(bǔ)丁程序,可以保護(hù)系統(tǒng)免受威脅,并且可以放心地等待發(fā)布修訂的PSU。

Azul的OpenJDK構(gòu)建的Zulu Enterprise面向希望確保其系統(tǒng)提供最高級(jí)別的安全性和穩(wěn)定性的用戶。除了提供每個(gè)更新的CPU(安全)和PSU(完整)版本外,我們還努力在Oracle發(fā)布其版本后盡快提供這些更新。自從JDK 8的免費(fèi)公共更新結(jié)束以來(lái),Zulu Enterprise客戶已經(jīng)能夠在Oracle版本發(fā)布后的一小時(shí)內(nèi)下載更新。本質(zhì)上,這是同時(shí)的。

總而言之,很明顯,確保使用最新更新維護(hù)所有運(yùn)行基于JVM的應(yīng)用程序的系統(tǒng)非常重要。

您的Java運(yùn)行時(shí)是否應(yīng)有的安全?