国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

Oracle數(shù)據(jù)庫補(bǔ)丁問題研究

2014-01-24 12:25劉立康
電子設(shè)計工程 2014年20期
關(guān)鍵詞:版本號安全漏洞補(bǔ)丁

姜 文,劉立康

(1.文思海輝技術(shù)有限公司西安分公司 陜西 西安710075;2.西安電子科技大學(xué) 通信工程學(xué)院,陜西 西安710071)

Oracle數(shù)據(jù)庫是一個對象一關(guān)系數(shù)據(jù)庫管理系統(tǒng)。它提供開放的、全面的、和集成的信息管理方法。Oracle數(shù)據(jù)庫具有場地自治性(Site Autonomy)和實現(xiàn)數(shù)據(jù)存儲透明性。由于這些特性,Oracle數(shù)據(jù)庫各組件存在安全漏洞[1],漏洞可能會被各種類型的所協(xié)議利用,使未經(jīng)身份驗證的遠(yuǎn)程攻擊者可利用漏洞影響Oracle數(shù)據(jù)庫各版本的機(jī)密性、完整性、可用性。同時數(shù)據(jù)庫在用戶使用過程中會不斷暴露各種功能和性能BUG,也會影響Oracle數(shù)據(jù)庫的正常使用。

為了解決這些問題,Oracle的技術(shù)人員編寫各種補(bǔ)丁。除去修改功能和性能BUG的補(bǔ)丁,還有應(yīng)對安全漏洞的安全補(bǔ)丁。Oracle官方網(wǎng)站會定期向用戶提供不同版本和不同操作系統(tǒng)環(huán)境下的Oracle補(bǔ)丁。

文中詳細(xì)敘述了Oracle數(shù)據(jù)庫補(bǔ)丁類別和各類補(bǔ)丁的特點,Oracle補(bǔ)丁管理工具Opatch,最后介紹一個實施Oracle安全補(bǔ)丁的安裝實例。實際應(yīng)用表明及時實施補(bǔ)丁安裝可以確保Oracle數(shù)據(jù)庫系統(tǒng)安全穩(wěn)定運(yùn)行。

1 Oracle數(shù)據(jù)庫補(bǔ)丁類別

Oracle數(shù)據(jù)庫的補(bǔ)丁通常有以下幾種[2-6]。

1.1 PSR(Patch Set Release)和 PSU(Patch Set Update)

PSR(Patch Set Release)是按 Oracle數(shù)據(jù)庫標(biāo)準(zhǔn)產(chǎn)品發(fā)布“補(bǔ)丁包“。Oracle數(shù)據(jù)庫的主要版本號是8i,9i,10g,11g,每一版本會陸續(xù)有兩至三個發(fā)行版,如 10.1,10.2,和 11.1,11.2分別是10g和11g的兩個發(fā)行版。對于每一個發(fā)行版軟件中發(fā)現(xiàn)的BUG,給出相應(yīng)的修復(fù)補(bǔ)丁。每隔一定時期,會將所有補(bǔ)丁集成到軟件中,經(jīng)過集成測試后,進(jìn)行發(fā)布,也稱為PSR(Patch Set Release)。

Oracle公司對處于標(biāo)準(zhǔn)技術(shù)支持的產(chǎn)品不定期地提供PSR,每個PSR修改5位版本號的第4位。以11.1為例,11.1.0.1.0是基礎(chǔ)發(fā)行版,11.1的PSR為11.1.0.4.0。

這些在主版本號上發(fā)布的補(bǔ)丁集,修復(fù)了較多的Bug,可能會包含一些增強(qiáng)功能(Enhancement)。比如11.2.0.1是一個主版本,那么11.2.0.2、11.2.0.3就是2個不同的Patch set。這種補(bǔ)丁集經(jīng)過了嚴(yán)格的集成測試,也是累積型的,推薦安裝最新的Patch Set。

由于數(shù)據(jù)庫在信息系統(tǒng)的核心地位,對其性能和安全性的要求非常高。應(yīng)及時安裝所有重要補(bǔ)?。↖nterim Patch),但是這些補(bǔ)?。↖nterim Patch)之間可能相互影響,從而影響系統(tǒng)的性能。而等待下一個版本PSR,一般又需要一年時間。因此,出現(xiàn)了 PSU(Patch Set Update)。

PSU具有如下特點:

1)Oracle選取被用戶下載數(shù)量多的,并且被驗證過具有較低風(fēng)險的補(bǔ)丁放入每個季度的PSU中。每個PSU中包含25至100個重要補(bǔ)丁,作為一個整體進(jìn)行嚴(yán)格測試,解決沖突問題,保證系統(tǒng)的穩(wěn)定性。PSU不僅包括對功能、性能修復(fù)的一般補(bǔ)丁,也包括最新的安全補(bǔ)丁CPU。

2)PSU是PSR的補(bǔ)充,在兩次PSR發(fā)布之間發(fā)布多個PSU,加快更新速度。每個PSU修改5位版本號的第5位。每個數(shù)據(jù)庫版本都有自己的PSU,PSU版本號體現(xiàn)在數(shù)據(jù)庫版本的最后一位,比如10.2.0.5的PSU是10.2.0.5.3,而11.2.0.2的PSU則是11.2.0.2.2。

3)PSU定期(一年四期)發(fā)布,發(fā)布日期與CPU發(fā)布日期相同。由于PSU包括同期發(fā)布的CPU,只要安裝PSU即可。(對部分平臺,仍提供單獨(dú)的CPU,供客戶選擇)

4)PSU是累積型的,最新的PSU自動包括以前所有PSU的內(nèi)容。

5)個別補(bǔ)?。↖nterim Patch)與PSU的關(guān)系分為三類:完全獨(dú)立;是PSU的一部分;與PSU沖突。第一類的個別補(bǔ)丁與PSU相互沒有影響,可以獨(dú)立的安裝或刪除。對于第二類,在安裝PSU之后,自然沒有必要安裝。若在PSU之前已安裝,則在安裝PSU時會被自動刪除。對于第三類個別補(bǔ)丁,如在PSU之前已安裝,必須在安裝PSU時刪除。

1.2 CPU(Critical Patch Update)補(bǔ)丁

除去修改功能和性能BUG的補(bǔ)丁,還有應(yīng)對安全漏洞的安全補(bǔ)丁。Oracle公司定期(一年四期)發(fā)布安全補(bǔ)丁集,稱之為CPU(Critical Patch Updates)。安全補(bǔ)丁用來修復(fù)軟件的安全漏洞。這類問題本來不屬于軟件錯誤,在正常使用中不會出現(xiàn)任何問題。但是別有用心的人可以通過運(yùn)行非常精巧設(shè)計的代碼,繞過數(shù)據(jù)庫系統(tǒng)的安全管理機(jī)制,達(dá)到非授權(quán)存取的目的。一個CPU內(nèi)包含了對多個安全漏洞的修復(fù),并且也包括相應(yīng)必需的非安全漏洞的補(bǔ)丁。CPU是累積型的,其中包括之前發(fā)布的所有CPU的內(nèi)容。

Oracle公司只對處于標(biāo)準(zhǔn)技術(shù)支持和延長支持期間的產(chǎn)品提供CPU更新,對處于維持支持范圍的產(chǎn)品不提供新的CPU.(對于9.2以前的版本,只對處于ECS和EMS期間的版本提供CPU更新。)

2012年10月CPU (Critical Patch Update)已經(jīng)更名為Security Patch Update(SPU)

1.3 Interim Patch

Interim Patch是常說的小補(bǔ)丁,也稱為個別補(bǔ)丁(oneoff patch 或 Patch Set Exception)。

由于PSR的發(fā)行有一定間隔,如果有些Bug對用戶有比較大的影響,Oracle公司也會向用戶公開和提供這些補(bǔ)丁,而對于最終補(bǔ)丁發(fā)行版而言,由于不再有下一個PSR,當(dāng)發(fā)現(xiàn)影響系統(tǒng)的新Bug時,個別補(bǔ)丁成為唯一選擇。

在某個PSR之后編寫的補(bǔ)丁,在還沒有加入到下一個PSR之前,以個別補(bǔ)?。↖nterim Patch)的形式提供給客戶。某個個別補(bǔ)丁是針對Oracle公司發(fā)現(xiàn)的或客戶報告的某一個BUG編寫的補(bǔ)丁,多個個別補(bǔ)丁之間同時安裝可能會有沖突。即便在安裝時沒有發(fā)現(xiàn)沖突,由于沒有進(jìn)行嚴(yán)格的集成測試,運(yùn)行過程中由于相互作用而發(fā)生意外也不能完全排除。這種補(bǔ)丁推薦在測試庫上測試無誤后再安裝在數(shù)據(jù)庫上。

個別補(bǔ)丁 (Interim Patch)是針對特定的情況下觸發(fā)的Bug,沒有經(jīng)過Oracle系統(tǒng)的認(rèn)證,Oracle會根據(jù)Bug的嚴(yán)重性和需要在下一次的patch set中包含此Interim patch。Interim patch對環(huán)境和版本有特定的要求,即不同操作系統(tǒng)平臺和數(shù)據(jù)庫版本的會有不同的Interim patch。

1.4 Com posite Patch

從2012年4月份的 Database PSU 11.2.0.3.2和11.2.0.2.0.7開始,推出一種新的概念叫Composite Patches。這是一種新型的補(bǔ)丁包,它不同于其他的累積型補(bǔ)丁包。如果是第一次安裝Composite Patches,那么該Composite Patches所包括的全部補(bǔ)丁都會被安裝,后續(xù)安裝的Composite Patches,只會安裝對比前一次Composite Patches有變化的部分和新增加的補(bǔ)丁。

Composite Patche的改進(jìn)包括減少補(bǔ)丁安裝時間,減少回滾以前應(yīng)用的overlay patches的需要。 新的Composite Patches格式,使以前PSU應(yīng)用的overlay patches和新安裝的PSU并存成為可能。

1.5 diagnostic patch

診斷用補(bǔ)?。╠iagnostic patch)不是用來解決問題的,而是用來尋找問題。這類補(bǔ)丁只在Oracle技術(shù)支持部門要求安裝時,才需要安裝。在得到需要的診斷信息后,應(yīng)立即卸載這一補(bǔ)丁。

2 Oracle補(bǔ)丁管理工具

從9.2版開始,Oracle公司設(shè)計實現(xiàn)了個別補(bǔ)丁(Interim Patch)安裝管理工具Opatch[7-8],使用稱為 inventory的系統(tǒng)數(shù)據(jù)結(jié)構(gòu)(嚴(yán)格說是與oui共享inventory),集中管理所有已安裝的個別補(bǔ)丁;個別補(bǔ)丁的安裝和卸載都使用Opatch命令完成,沖突檢測也由Opatch在安裝時自動完成;提供列表命令可以很方便得到已安裝個別補(bǔ)丁的信息。10g(10.1)和11g(11.1)版本中,Opatch作為一個標(biāo)準(zhǔn)工具,在軟件安裝時自動安裝。(安裝在$ORACLE_HOME/OPatch下。)而對于9.2版,需要從metalink下載Opatch。無論數(shù)據(jù)庫是哪一個版本,系統(tǒng)中是否已經(jīng)安裝Opatch,在使用之前,應(yīng)從metalink下載最新版本的Opatch。由于系統(tǒng)實現(xiàn)的問題,11.1使用的Opatch與之前版本(10.1和9.2)使用的Opatch不兼容,不能混用。

Opatch命令的存放位置在$ORACLE_HOME下的Opatch目錄下。

Opatch命令格式為:

Opatch[][-h[elp]]

命令有:apply(安裝個別補(bǔ)?。?、rollback(卸載個別補(bǔ)?。sinventory(對 inventory 進(jìn)行列表)、query(顯示某一個別補(bǔ)丁的詳細(xì)信息)、version(顯示Opatch版本信息)。在 Opatch目錄下,有用戶使用指南文件(Users_Guide.txt),其中有詳細(xì)的命令格式和使用示例。Opatch執(zhí)行操作時,除在屏幕輸出結(jié)果外,還生成日志文件。

Opatch也用于安裝管理PSU補(bǔ)丁和CPU安全補(bǔ)丁。

3 實施Oracle安全補(bǔ)丁的安裝實例

本文環(huán)境為:Suse Linux 10 x86,Oracle 11g,Oracle 數(shù)據(jù)庫版本為11.1.0.7.0。Oracle數(shù)據(jù)庫自帶的補(bǔ)丁管理工具是Opatch,工具的版本是11.1.0.6.0。本文選擇的補(bǔ)丁是安全補(bǔ)丁CPU-Oct-2012(2012年10月Oracle公司發(fā)布的CPU補(bǔ)?。?,對應(yīng)的安裝包是:p14275623_111070_LINUX.zip。實施安裝步驟為Oracle系統(tǒng)漏洞掃描,Opatch工具升級和Oracle補(bǔ)丁安裝。

3.1 安全掃描工具(綠盟掃描軟件)掃描Oracle系統(tǒng)

綠盟遠(yuǎn)程安全評估系統(tǒng) (NSFOCUS Remote Security Assessment System, 簡稱:NSFOCUSRSAS)是一個好的“漏洞管理專家”,使用綠盟掃描軟件對Oracle系統(tǒng)進(jìn)行掃描,可發(fā)現(xiàn)表1所示的漏洞。

表1 綠盟掃描漏洞列表Tab.1 The table of the vulnerabilities to the NSFOCUSRSAS

CVE的 英 文 全 稱 是 “Common Vulnerabilities&Exposures”公共漏洞和暴露。CVE就像是一個字典表,CVE是安全信息共享的“關(guān)鍵字”。如果在漏洞報告中指明的漏洞有CVE名稱,就可以快速地在任何其它CVE兼容的數(shù)據(jù)庫中找到相應(yīng)修補(bǔ)的信息,解決安全問題。

綠盟掃描結(jié)束之后,會生成一個掃描報告,對掃描出來的每一條漏洞都會給出相應(yīng)的受影響Oracle數(shù)據(jù)庫版本號、相應(yīng)的漏洞描述以及解決建議。用戶可以根據(jù)掃描報告給出的建議來改進(jìn)自己的系統(tǒng)。

3.2 Opatch工具升級

使用Opatch工具打CPU補(bǔ)丁,升級數(shù)據(jù)庫到11.1.0.7.x時,就必須要求Opatch的版本達(dá)到11.1.0.8.0以上,而目前的Opatch的版本是11.1.0.6.0達(dá)不到所需的要求。如果不升級Opatch工具的版本就直接使用原有的Opatch工具實施安全補(bǔ)丁安裝,實施過程中會出現(xiàn):Opatch failed with error code 73,提示Opatch工具的版本過低。

更新Opatch工具需要從Oracle官方網(wǎng)站上下載高版本的Opatch。本文下載的Opatch安裝包為p6889880_111070_LINUX.zip,Opatch安裝包解壓后覆蓋到 ORACLE_HOME下的Opatch目錄。 當(dāng)然覆蓋之前,最好將原有的Opatch工具備份一下。升級后的Opatch工具的版本是11.1.0.9.9。

3.3 實施Oracle安全補(bǔ)丁

實施Oracle補(bǔ)丁安裝步驟如下所示:

1)確認(rèn)Oracle數(shù)據(jù)庫與監(jiān)聽已經(jīng)關(guān)閉,分別執(zhí)行指令lsnrctl status查看監(jiān)聽是否已經(jīng)停止,以及執(zhí)行指令ps-ef|grep oracle查看Oracle數(shù)據(jù)庫是否還有進(jìn)程在啟動中,如果還有進(jìn)程未停止,則執(zhí)行指令:kill-9進(jìn)程號,殺掉未停止的進(jìn)程。如果在仍有進(jìn)程處于未停止的狀態(tài)下,就實施Oracle安全補(bǔ)丁安裝,實施過程中會出現(xiàn):Opatch failed with error code 42,提示Oracle數(shù)據(jù)庫未停止;

2)將Oracle安全補(bǔ)丁安裝包p14275623_111070_LINUX.zip拷貝至 opt路徑下, 使用指令 unzip 14275623_111070_LINUX.zip解壓Oracle安全補(bǔ)丁安裝包;

3)在/opt/14275623路徑下執(zhí)行指令$ORACLE_HOME/Opatch apply,安裝Oracle安全補(bǔ)丁14275623,執(zhí)行結(jié)果顯示如下內(nèi)容(由于顯示內(nèi)容過多就不全部列出)。顯示結(jié)果主要包括如下內(nèi)容:

1)Oracle數(shù)據(jù)庫相關(guān)目錄的配置信息。

2)Opatch工具的版本信息:11.1.0.9.9和OUI版本信息:11.1.0.7.0。

3)Log文件的定位信息和輸出文件的定位信息。

4)Oracle數(shù)據(jù)庫的版本信息:Oracle Database 11g 11.1.0.6.0和打補(bǔ)丁后的版本信息:Oracle Database 11g Patch Set 1 11.1.0.7.0。

5)補(bǔ)丁(Patch)的相關(guān)信息和修復(fù)Bugs的編號。6)Opatch succeeded。

3.4 實驗結(jié)果

實施安全補(bǔ)丁之后,再次使用綠盟軟件對系統(tǒng)進(jìn)行掃描,發(fā)現(xiàn)之前掃描出來的Oracle數(shù)據(jù)庫安全漏洞已經(jīng)不存在了。由此可見實施Oracle數(shù)據(jù)庫安全補(bǔ)丁安裝可以有效地解決Oracle數(shù)據(jù)庫存在的安全漏洞。

4 結(jié)束語

Oracle數(shù)據(jù)庫在用戶使用過程中會不斷暴露各種功能和性能BUG;同時惡意攻擊者利用Oracle數(shù)據(jù)庫的安全漏洞繞過數(shù)據(jù)庫系統(tǒng)的安全管理機(jī)制,達(dá)到非授權(quán)存取的目的,甚至控制數(shù)據(jù)庫。從而影響Oracle系統(tǒng)的安全穩(wěn)定運(yùn)行。

隨時關(guān)注Oracle官網(wǎng)上發(fā)布的Oracle數(shù)據(jù)庫補(bǔ)丁信息,及時實施相應(yīng)的Oracle補(bǔ)丁安裝,從而修改功能和性能BUG,修復(fù)軟件的安全漏洞。

長期的實際應(yīng)用表明為了確保數(shù)據(jù)庫的正常運(yùn)行,及時更新補(bǔ)丁是必不可少的。

[1]Rajesh Shah.Oracle On Demand Best Practices:Critical Patch Update[R].Oracle Corporation,2008.

[2]Steve Callan.Database Security and Patches-Part 1[EB/OL].(2005-11-8).[2013-11-30].http://www.databasejournal.com/features/oracle/article.php/3562181/Database-Security-and-Patches-150-Part-1.htm.

[3]Steve Callan.Database Security and Patches-Part 2[EB/OL].(2005-11-22)[2013-11-30].http://www.databasejournal.com/features/oracle/article.php/3565096/Database-Security-and-Patches-150-Part-2.htm.

[4]Steve Callan.Database Security and Patches-Part 3[EB/OL].(2005-12-4).[2013-11-30].http://www.databasejournal.com/features/oracle/article.php/3569941/Database-Security-and-Patches-150-Part-3.htm.

[5]Steve Callan.Database Security and Oracle Patches-Part 4[EB/OL].(2005-12-23).[2013-11-30].http://www.databasejournal.com/features/oracle/article.php/3571991/Database-Security-and-Oracle-Patches-150-Part-4.htm.

[6]Steve Callan.Database Security and Patches-Part 5[EB/OL].(2006-1-25).[2013-11-30].http://www.databasejournal.com/features/oracle/article.php/3579306/Database-Security-and-Patches-150-Part-5.htm.

[7]彭賢海,全國慶,張健.基于Oracle的管理信息系統(tǒng)數(shù)據(jù)庫自動升級方法研究及實現(xiàn) [J].計算機(jī)工程與應(yīng)用,2004,40(10):193-194.PENG Xian-hai,OUAN Guo-ging,ZHANG Jian.A study of auto-upgrading for database ofmanagement information system based on Oracle[J].Computer Engineering and Applications,2004,40(10):193-194.

[8]劉志斌.給Oracle數(shù)據(jù)庫打補(bǔ)丁[N].計算機(jī)世界·技術(shù)與應(yīng)用,2006.

猜你喜歡
版本號安全漏洞補(bǔ)丁
基于大數(shù)據(jù)技術(shù)的軟件安全漏洞自動挖掘方法研究
ETCS基線3的系統(tǒng)版本管理方法
基于模糊測試技術(shù)的軟件安全漏洞挖掘方法研究
健胃補(bǔ)丁
繡朵花兒當(dāng)補(bǔ)丁
認(rèn)識vSphere安裝程序
安全漏洞太大亞馬遜、沃爾瑪和Target緊急下架這種玩具
補(bǔ)丁奶奶
深入淺出 全面獲知系統(tǒng)版本號
大病醫(yī)保期待政策“補(bǔ)丁”