補丁包的安裝方法及裝置制造方法
【專利摘要】本申請實施例公開了一種補丁包的安裝方法及裝置,該方法包括:根據(jù)漏洞及其相關補丁包生成基于每個補丁包的注冊表和/或文件信息的補丁包安裝條件;判斷所述補丁包對應的安裝對象是否滿足補丁包安裝條件;當滿足所述補丁包安裝條件時,下載并安裝所述補丁包;其中,所述下載并安裝補丁包包括:下載并按照順序安裝所述每個補丁包,或者下載每個補丁包并僅安裝所述每個補丁包中最新的補丁包,或者僅下載并安裝所述每個補丁包中最新的補丁包。應用本申請實施例進行補丁安裝時,漏洞補丁包的判定條件簡單,當同時檢出多個漏洞時,補丁包安裝順序可能避免補丁包安裝失?。徊⑶疫€可以選擇安裝最新的補丁包,因此不會對漏洞進行重復修復,節(jié)省系統(tǒng)資源。
【專利說明】補丁包的安裝方法及裝置
[0001]本發(fā)明專利申請是申請日為2011年2月21日、申請?zhí)枮?01110041779.8、名稱為“補丁包的安裝方法及裝置”的中國發(fā)明專利申請的分案申請。
【技術領域】
[0002]本申請涉及計算機【技術領域】,特別是涉及一種補丁包的安裝方法及裝置。
【背景技術】
[0003]在軟件應用過程中,例如,各種操作系統(tǒng)、各種游戲等,可能會發(fā)現(xiàn)軟件存在問題或漏洞,也可稱為BUG,漏洞會使用戶在使用軟件時出現(xiàn)被木馬、病毒或惡意軟件利用的情況干擾,或者降低系統(tǒng)和軟件的安全性能,因此可以通過修改或更新受影響的程序或模塊寫出一些可插入源程序的程序語言,對這些漏洞進行修復,上述用于修復漏洞的程序語言就稱為補丁包。
[0004]以操作系統(tǒng)軟件為例,現(xiàn)有技術中專門的網(wǎng)站會定期發(fā)布一段時間內(nèi)的補丁包,用戶可以通過下載補丁包并安裝,以修復操作系統(tǒng)的相關漏洞。但是,發(fā)明人在對現(xiàn)有技術的研究過程中發(fā)現(xiàn),在漏洞判定和安裝補丁的過程中存在如下的問題:
[0005]1、同時檢出多個漏洞時,補丁安裝順序可能導致部分補丁安裝失?。?br>
[0006]2、重復修復同樣受影響的文件,導致系統(tǒng)資源浪費和用戶體驗差。
【發(fā)明內(nèi)容】
[0007]本申請實施例的目的在于提供了一種補丁包的安裝方法及裝置,以提高補丁包的安裝成功率,保證系統(tǒng)安全性能。
[0008]為了解決上述技術問題,本申請實施例公開了如下技術方案:
[0009]一種補丁包的安裝方法,包括:
[0010]根據(jù)漏洞及其相關補丁包生成基于每個補丁包的注冊表和/或文件信息的補丁包安裝條件;
[0011]判斷所述補丁包對應的安裝對象是否滿足所述補丁包安裝條件;
[0012]當滿足所述補丁包安裝條件時,下載并安裝所述補丁包;其中,
[0013]所述下載并安裝補丁包包括:
[0014]下載并按照順序安裝所述每個補丁包,或者下載所述每個補丁包并僅安裝所述每個補丁包中最新的補丁包,或者僅下載并安裝所述每個補丁包中最新的補丁包。
[0015]所述補丁包安裝條件中的注冊表信息包括:注冊表鍵、注冊表鍵值;
[0016]所述補丁包安裝條件中的文件信息包括:文件版本信息、文件屬性。
[0017]所述判斷當前補丁包對應的安裝對象是否滿足補丁包安裝條件包括:
[0018]判斷系統(tǒng)中是否存在指定的注冊表鍵、指定注冊表鍵的值、或指定的文件。
[0019]所述判斷補丁包對應的安裝對象是否滿足補丁包安裝條件包括:
[0020]判斷指定的注冊表鍵值和/或文件的版本號是否滿足預設條件或在指定的范圍內(nèi)。
[0021 ] 所述下載并按照順序安裝所述補丁包:
[0022]分析每個補丁包的發(fā)布時間和順序;
[0023]根據(jù)分析結(jié)果確定補丁包的安裝順序,并按照所述安裝順序安裝所述每個補丁包。
[0024]所述下載每個補丁包并僅安裝每個補丁包中最新的補丁包包括:
[0025]判斷下載的所述每個補丁包是否使用相同的補丁安裝判別條件;
[0026]當使用相同的補丁安裝判別條件時,根據(jù)所述補丁包的發(fā)布時間選擇最新的補丁包進行安裝。
[0027]還包括:
[0028]所述補丁包安裝結(jié)束后,返回安裝結(jié)果信息;
[0029]當所述安裝結(jié)果信息表示所述補丁包安裝失敗時,判斷所述補丁包是否安裝成功。
[0030]還包括:
[0031]所述補丁包安裝結(jié)束后,在輸出界面中顯示所述補丁包的信息。
[0032]一種補丁包的安裝裝置,包括:
[0033]生成單元,用于根據(jù)漏洞及其相關補丁包生成基于每個補丁包的注冊表和/或文件信息的補丁包安裝條件;
[0034]判斷單元,用于判斷所述補丁包對應的安裝對象是否滿足所述補丁包安裝條件;
[0035]安裝單元,用于當滿足所述補丁包安裝條件時,下載并安裝所述補丁包;其中,所述下載并安裝補丁包包括:下載并按照順序安裝所述每個補丁包,或者下載所述每個補丁包并僅安裝所述每個補丁包中最新的補丁包,或者僅下載并安裝所述每個補丁包中最新的補丁包。
[0036]所述生成單元生成的每個補丁包安裝條件中的注冊表信息包括:注冊表鍵、注冊表鍵值;文件信息包括:文件版本信息、文件屬性。
[0037]所述判斷單元包括至少一個下述單元:
[0038]第一信息判斷單元,用于判斷系統(tǒng)中是否存在指定的注冊表鍵、指定注冊表鍵的值、或指定的文件;
[0039]第二信息判斷單元,用于判斷指定的注冊表鍵值和/或文件的版本號是否滿足預設條件或在指定的范圍內(nèi)。
[0040]所述安裝單元包括至少一個下述單元:
[0041]順序安裝單元,用于分析每個補丁包的發(fā)布時間和順序,根據(jù)分析結(jié)果確定補丁包的安裝順序,并按照所述安裝順序安裝所述每個補丁包;
[0042]選擇安裝單元,用于判斷下載的所述每個補丁包是否使用相同的補丁安裝判別條件,當使用相同的補丁安裝判別條件時,根據(jù)所述補丁包的發(fā)布時間選擇最新的補丁包進行安裝;
[0043]直接安裝單元,用于僅下載并安裝所述每個補丁包中最新的補丁包。
[0044]還包括:
[0045]返回單元,用于在所述補丁包安裝結(jié)束后,返回安裝結(jié)果信息;[0046]所述判斷單元,還用于當所述安裝結(jié)果信息表示所述補丁包安裝失敗時,判斷所述補丁包是否安裝成功。
[0047]還包括:
[0048]顯示單元,用于所述補丁包安裝結(jié)束后,在輸出界面中顯示所述補丁包的信息。
[0049]由上述本申請實施例提供的技術方案可以看出,本申請實施例中根據(jù)漏洞及其相關補丁包生成基于每個補丁包的注冊表和/或文件信息的補丁包安裝條件,判斷補丁包對應的安裝對象是否滿足所述補丁包安裝條件,當滿足補丁包安裝條件時,下載并安裝補丁包。應用本申請實施例進行補丁安裝時,可以下載并按照順序安裝每個補丁包,或者下載每個補丁包并僅安裝每個補丁包中最新的補丁包,或者僅下載并安裝每個補丁包中最新的補丁包;應用本申請實施例,當同時檢出多個漏洞時,按照順序安裝補丁包可以避免發(fā)布時間在后的補丁包先安裝所導致的安裝失?。徊⑶彝ㄟ^選擇安裝最新的補丁包,使得在下載了多個具有相同判別條件的補丁包時,不會對漏洞進行重復修復,由此節(jié)省系統(tǒng)資源。
【專利附圖】
【附圖說明】
[0050]為了更清楚地說明本申請實施例或現(xiàn)有技術中的技術方案,下面將對實施例或現(xiàn)有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,對于本領域普通技術人員而言,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0051]圖1為本申請補丁包的安裝方法的第一實施例流程圖;
[0052]圖2為本申請補丁包的安裝方法的第二實施例流程圖;
[0053]圖3為本申請補丁包的安裝方法的第三實施例流程圖;
[0054]圖4A為本申請補丁包的安裝裝置的實施例框圖;
[0055]圖4B為本申請圖4A中判斷單元的實施例框圖;
[0056]圖4C為本申請圖4A中安裝單元的實施例框圖。
【具體實施方式】
[0057]本發(fā)明如下實施例提供了一種補丁包的安裝方法及裝置。
[0058]為了使本【技術領域】的人員更好地理解本發(fā)明實施例中的技術方案,并使本發(fā)明實施例的上述目的、特征和優(yōu)點能夠更加明顯易懂,下面結(jié)合附圖對本發(fā)明實施例中技術方案作進一步詳細的說明。
[0059]參見圖1,為本申請補丁包的安裝方法的第一實施例流程圖:
[0060]步驟101:根據(jù)漏洞及其相關補丁包生成基于每個補丁包的注冊表和/或文件信息的補丁包安裝條件。
[0061]其中,補丁包安裝條件中的注冊表信息可以包括:注冊表鍵、注冊表鍵值;補丁包安裝條件中的文件信息可以包括:文件版本信息、文件屬性。
[0062]步驟102:判斷補丁包對應的安裝對象是否滿足所述補丁包安裝條件,若是,則執(zhí)行步驟103 ;否則,執(zhí)行步驟104。
[0063]具體的,可以判斷系統(tǒng)中是否存在指定的注冊表鍵、指定注冊表鍵的值、或指定的文件;也可以判斷指定的注冊表鍵值和/或文件的版本號是否滿足特定的條件或在指定的范圍內(nèi)。[0064]以注冊表區(qū)間為例,假設補丁 kb370009為對Adobe Flash Player遠程代碼執(zhí)行漏洞,該補丁的條件掃描邏輯包括如下兩個條件:
[0065]HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ffindows\CurrentVersi on\Uninstall\Adobe Flash Player ActiveX\DisplayVersion 小于 10.1.102.64 ;以及
[0066]HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ffindows\CurrentVersi on\Uninstall\Adobe Flash Player ActiveX\DisplayVersion 大于等于 10.0.0.0 ;
[0067]根據(jù)上述兩個判斷條件可知,在獲取當前系統(tǒng)的注冊表版本號后,可以比較該版本號是否在上述兩個判斷條件所限定的注冊表范圍內(nèi)。
[0068]需要說明的是,由于Adobe Flash Playerl的補丁在每次升級時,并非累積更新某個固定位置的文件,而是每次在注冊表中寫此次需要更新的版本號,或者在C:\WIND0WS\system32\Macromed\Flash文件夾下釋放一個全新文件,例如,上一版本為FlashlOl.0cx,則此次為FlashlOm.0cx。由此可知,根據(jù)文件名稱難以對該漏洞進行掃描,因此選擇對注冊表進行掃描。
[0069]以文件版本區(qū)間為例,由于對于Adobe的升級有一定的范圍,因此判斷條件會限制在對一定區(qū)間內(nèi)的用戶進行升級。假設補丁 kb2416400用于對IE瀏覽器漏洞進行修復,IE瀏覽器針對版本為IE6.7.8。其中,微軟也對IE版本進行了劃分升級,例如,IE7的升級所增加的限制條件如下:
[0070]programf iles\internet exp1rer\IEXPL0RE.EXE 大于等于 ?.0.5730.11 ;以及
[0071]programf iles\internet exp1rer\IEXPL0RE.EXE 小于 7.1.0.0 ;
[0072]根據(jù)上述兩個判斷條件可知,對此本次發(fā)布的補丁包,只針對上述IE區(qū)間內(nèi)的用戶進行升級。
[0073]又例如,ΙΕ8的升級所增加的限制條件如下:
[0074]programf iles\internet exp lorer \i exp lore, exe 大于等于 8.0.6001.18702 ;
[0075]programf iles\internet exp lorer \i exp lore, exe 小于 8.1.0.0。
[0076]步驟103:下載并安裝補丁包,結(jié)束當前流程。
[0077]安裝補丁包包括:下載并按照順序安裝每個補丁包,或者下載每個補丁包并僅安裝每個補丁包中最新的補丁包,或者僅下載并安裝每個補丁包中最新的補丁包。
[0078]其中,下載并按照順序安裝每個補丁包時,分析每個補丁包的發(fā)布時間和順序,根據(jù)分析結(jié)果確定補丁包的安裝順序,并按照安裝順序安裝每個補丁包;具體應用時,可以在服務器端完成對每個補丁包的下載以及安裝順序的分析,然后由客戶端按照確定的安裝順序獲取補丁包并進行安裝,也可以由客戶端直接從服務器下載補丁包,并對每個補丁包的發(fā)布時間和順序進行分析,然后按照分析結(jié)果進行順序安裝。
[0079]下載每個補丁包并僅安裝每個補丁包中最新的補丁包時,判斷下載的每個補丁包是否使用相同的補丁安裝判別條件,當使用相同的補丁安裝判別條件時,根據(jù)補丁包的發(fā)布時間選擇最新的補丁包進行安裝;具體應用時,客戶端可以從服務器下載所有的補丁包,然后由客戶端判斷所下載的每個補丁包的補丁安裝判別條件,對于補丁安裝判別條件一致的補丁包,從中選擇發(fā)布時間最新的補丁包。
[0080]僅下載并安裝每個補丁包中最新的補丁包時,可以在服務器完成對所有補丁包的下載,以及判斷存在使用相同的判別條件的補丁包時,選擇最新的補丁包,然后客戶端下載該最新的補丁包進行安裝,由于由服務器統(tǒng)一進行分析,因此減少了每個客戶端對補丁包判別條件的判斷所耗費的資源。
[0081]進一步,在補丁包安裝結(jié)束后,系統(tǒng)還可以返回安裝結(jié)果信息,例如返回安裝成功或者安裝失敗的代碼。由于某些補丁包在實際安裝成功后,系統(tǒng)仍然可能返回當安裝失敗的代碼,例如,office類補丁包,因此系統(tǒng)可以針對這些補丁包的安裝返回失敗信息時,進一步判斷該補丁包是否實際安裝成功。
[0082]另外,在補丁包安裝結(jié)束后,系統(tǒng)可以在用戶界面中輸出所安裝補丁包的詳細信息,例如,該補丁包的名稱,補丁包的主要用途等等,以便向用戶展示補丁包的功能,提升用戶體驗。
[0083]步驟104:不安裝獲取的補丁包,結(jié)束當前流程。
[0084]參見圖2,為本申請補丁包的安裝方法的第二實施例流程圖,該實施例示出了按照順序安裝補丁包的過程:
[0085]步驟201:根據(jù)漏洞及其相關補丁包生成基于每個補丁包的注冊表和/或文件信息的補丁包安裝條件。
[0086]其中,補丁包安裝條件中的注冊表信息可以包括:注冊表鍵、注冊表鍵值。根據(jù)注冊表鍵值及鍵值大小可以判斷系統(tǒng)中已經(jīng)存在的注冊表是否包含獲取的注冊表。
[0087]補丁包安裝條件中的文件信息可以包括:文件版本信息、文件屬性。根據(jù)文件屬性可以判斷文件是否存在,根據(jù)文件版本信息可以確定系統(tǒng)中已存在的文件版本號是否包含了文件版本號。
[0088]步驟202:判斷補丁包對應的安裝對象是否滿足補丁包安裝條件,若是,則執(zhí)行步驟203 ;否則,執(zhí)行步驟205。
[0089]需要說明的是,當從補丁包中獲取到注冊表信息和文件信息中的一種信息時,則僅需要對獲取到的信息進行判斷。例如,對于補丁 KB2467659來說,假設該補丁僅修改注冊表,因此不用通過文件信息來判斷這個補丁是否安裝,僅需要通過判斷注冊表項中此補丁是否已安裝來判斷即可,該注冊表信息如下所示:
[0090]HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ffindows\CurrentVersion\Component Based Servicing\Packages\package_[*]_for_KB24676 59 [*]\installtimelow
[0091]步驟203:通過分析下載的補丁包中每個補丁包的發(fā)布時間和順序,確定補丁包的安裝順序。
[0092]每次下載的補丁包可能包含多個,這些補丁包的更新時間可能不同,因此在安裝時,需要按照補丁包之間的更新時間和相互之間的關系確定安裝的順序。例如,對于補丁包KB2416400和KB2467659來說,假設這兩個補丁包的發(fā)布日期相同,其中補丁包KB2416400用于解決IE瀏覽器的CSSOday漏洞問題,但此補丁修復后會導致郵件檢測日語郵件(JIS)編碼錯誤,而補丁包KB2467659用于解決該問題,因此在安裝補丁包時,通過比較發(fā)布日期、及相互之間的關系等,將補丁包KB2416400的安裝順序置前,補丁包KB2467659的安裝順序置后,以保證在解決了 IE瀏覽器CSSOday漏洞問題的同時,解決郵件檢測日語郵件(JIS)編碼錯誤的問題。
[0093]步驟204:按照安裝順序安裝獲取的補丁包,結(jié)束當前流程。[0094]步驟205:不安裝獲取的補丁包,結(jié)束當前流程。
[0095]當包含了獲取的注冊表信息和文件信息時,則說明系統(tǒng)中不存在相應漏洞,或者已經(jīng)安裝了補丁包,因此無需安裝補丁包。
[0096]參見圖3,為本申請補丁包的安裝方法的第三實施例流程圖,該實施例示出了安裝最新補丁包的過程:
[0097]步驟301:根據(jù)漏洞及其相關補丁包生成基于每個補丁包的注冊表和/或文件信息的補丁包安裝條件。
[0098]其中,補丁包安裝條件中的注冊表信息可以包括:注冊表鍵、注冊表鍵值。根據(jù)注冊表鍵值及鍵值大小可以判斷系統(tǒng)中已經(jīng)存在的注冊表是否包含獲取的注冊表。
[0099]文件信息可以包括:文件版本號、文件標識。根據(jù)文件標識可以判斷文件是否存在,根據(jù)文件版本號可以確定系統(tǒng)中已存在的文件版本號是否包含了獲取的文件版本號。
[0100]步驟302:判斷補丁包對應的安裝對象是否滿足補丁包安裝條件,若是,則執(zhí)行步驟303 ;否則,執(zhí)行步驟306。
[0101]步驟303:判斷下載的每個補丁包是否使用相同的補丁安裝判別條件,若是,則執(zhí)行步驟304 ;否則,執(zhí)行步驟305。
[0102]每次下載的補丁包可能包含多個,這些補丁包的更新時間可能不同,因此在安裝時,更新時間在后的補丁包中可能包含了更新在前的補丁包的功能,如果通過這些補丁包對同一漏洞進行多次修復,將耗費系統(tǒng)資源。因此本申請實施例中判斷補丁包是否使用相同的補丁安裝判別條件,以便確定補丁包是否對同一漏洞進行修復,如果有多個補丁包對同一漏洞進行修復,則可以選擇發(fā)布時間最近的一個補丁包進行修復即可。
[0103]步驟304:根據(jù)補丁包的發(fā)布時間選擇最新的補丁包進行安裝,結(jié)束當前流程。
[0104]步驟305:安裝所獲取的所有補丁包,結(jié)束當前流程。
[0105]步驟306:不安裝獲取的補丁包,結(jié)束當前流程。
[0106]若當前系統(tǒng)不滿足補丁包安裝條件,則說明系統(tǒng)中不存在相應漏洞,或者已經(jīng)安裝了補丁包,因此無需安裝補丁包。
[0107]與本申請補丁包的安裝方法的實施例相對應,本申請還提供了補丁包的安裝裝置的實施例。
[0108]參見圖4A,為本申請補丁包的安裝裝置的實施例框圖:
[0109]該補丁包的安裝裝置包括:生成單元410、判斷單元420和安裝單元430。
[0110]其中,生成單元410,用于根據(jù)漏洞及其相關補丁包生成基于每個補丁包的注冊表和/或文件信息的補丁包安裝條件;
[0111]判斷單元420,用于判斷所述補丁包對應的安裝對象是否滿足所述補丁包安裝條件;
[0112]安裝單元430,用于當滿足所述補丁包安裝條件時,下載并安裝所述補丁包;其中,所述下載并安裝補丁包包括:下載并按照順序安裝所述每個補丁包,或者下載所述每個補丁包并僅安裝所述每個補丁包中最新的補丁包,或者僅下載并安裝所述每個補丁包中最新的補丁包。
[0113]其中,補丁包安裝條件中的注冊表信息可以包括:注冊表鍵、注冊表鍵值;補丁包安裝條件中的文件信息可以包括:文件版本信息、文件屬性。[0114]進一步,該補丁包的安裝裝置還可以包括(圖4A中未示出):返回單元,用于在所述補丁包安裝結(jié)束后,返回安裝結(jié)果信息;所述判斷單元420,還用于當所述安裝結(jié)果信息表示所述補丁包安裝失敗時,判斷所述補丁包是否安裝成功。
[0115]進一步,該補丁包的安裝裝置還可以包括(圖4A中未示出):顯示單元,用于所述補丁包安裝結(jié)束后,在輸出界面中顯示所述補丁包的信息。
[0116]參見圖4B,為圖4A中判斷單元的實施例框圖:
[0117]該判斷單元420可以包括至少一個下述單元(圖4B將兩個單元均示出):
[0118]第一信息判斷單元421,用于判斷系統(tǒng)中是否存在指定的注冊表鍵、指定注冊表鍵的值、或指定的文件;
[0119]第二信息判斷單元422,用于判斷指定的注冊表鍵值和/或文件的版本號是否滿足預設條件或在指定的范圍內(nèi)。
[0120]參見圖4C,為本申請圖4A中安裝單元的實施例框圖:
[0121]該安裝單元430可以包括至少一個下述單元(圖4C將三個單元均示出):
[0122]順序安裝單元431,用于分析每個補丁包的發(fā)布時間和順序,根據(jù)分析結(jié)果確定補丁包的安裝順序,并按照所述安裝順序安裝所述每個補丁包;
[0123]選擇安裝單元432,用于判斷下載的所述每個補丁包是否使用相同的補丁安裝判別條件,當使用相同的補丁安裝判別條件時,根據(jù)所述補丁包的發(fā)布時間選擇最新的補丁包進行安裝;
[0124]直接安裝單元,用于僅下載并安裝所述每個補丁包中最新的補丁包。
[0125]通過對以上實施方式的描述可知,本申請實施例中根據(jù)漏洞及其相關補丁包生成基于每個補丁包的注冊表和/或文件信息的補丁包安裝條件,判斷補丁包對應的安裝對象是否滿足所述補丁包安裝條件,當滿足補丁包安裝條件時,下載并安裝補丁包。應用本申請實施例進行補丁安裝時,可以下載并按照順序安裝每個補丁包,或者下載每個補丁包并僅安裝每個補丁包中最新的補丁包,或者僅下載并安裝每個補丁包中最新的補丁包;應用本申請實施例,當同時檢出多個漏洞時,按照順序安裝補丁包可以避免發(fā)布時間在后的補丁包先安裝所導致的安裝失?。徊⑶彝ㄟ^選擇安裝最新的補丁包,使得在下載了多個具有相同判別條件的補丁包時,不會對漏洞進行重復修復,由此節(jié)省系統(tǒng)資源。
[0126]本領域的技術人員可以清楚地了解到本發(fā)明實施例中的技術可借助軟件加必需的通用硬件平臺的方式來實現(xiàn)?;谶@樣的理解,本發(fā)明實施例中的技術方案本質(zhì)上或者說對現(xiàn)有技術做出貢獻的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品可以存儲在存儲介質(zhì)中,如R0M/RAM、磁碟、光盤等,包括若干指令用以使得一臺計算機設備(可以是個人計算機,服務器,或者網(wǎng)絡設備等)執(zhí)行本發(fā)明各個實施例或者實施例的某些部分所述的方法。
[0127]本說明書中的各個實施例均采用遞進的方式描述,各個實施例之間相同相似的部分互相參見即可,每個實施例重點說明的都是與其他實施例的不同之處。尤其,對于系統(tǒng)實施例而言,由于其基本相似于方法實施例,所以描述的比較簡單,相關之處參見方法實施例的部分說明即可。
[0128]以上所述的本發(fā)明實施方式,并不構(gòu)成對本發(fā)明保護范圍的限定。任何在本發(fā)明的精神和原則之內(nèi)所作的修改、等同替換和改進等,均應包含在本發(fā)明的保護范圍之內(nèi)。
【權利要求】
1.一種補丁包的安裝方法,其特征在于,包括: 根據(jù)漏洞及其相關補丁包生成基于每個補丁包的注冊表和/或文件信息的補丁包安裝條件; 判斷所述補丁包對應的安裝對象是否滿足所述補丁包安裝條件; 當滿足所述補丁包安裝條件時,下載并安裝所述補丁包;其中, 所述下載并安裝補丁包包括: 下載并按照順序安裝所述每個補丁包,或者下載所述每個補丁包并僅安裝所述每個補丁包中最新的補丁包,或者僅下載并安裝所述每個補丁包中最新的補丁包。
2.根據(jù)權利要求1所述的方法,其特征在于, 所述補丁包安裝條件中的注冊表信息包括:注冊表鍵、注冊表鍵值; 所述補丁包安裝條件中的文件信息包括:文件版本信息、文件屬性。
3.根據(jù)權利要求2所述的方法,其特征在于,所述判斷當前補丁包對應的安裝對象是否滿足補丁包安裝條件包括: 判斷系統(tǒng)中是否存在指定的注冊表鍵、指定注冊表鍵的值、或指定的文件。
4.根據(jù)權利要求2所述的方法,其特征在于,所述判斷補丁包對應的安裝對象是否滿足補丁包安裝條件包括: 判斷指定的注冊表鍵值和/或文件的版本號是否滿足預設條件或在指定的范圍內(nèi)。
5.根據(jù)權利要求1所述的方法,其特征在于,所述下載并按照順序安裝所述補丁包: 分析每個補丁包的發(fā)布時間和順序; 根據(jù)分析結(jié)果確定補丁包的安裝順序,并按照所述安裝順序安裝所述每個補丁包。
6.根據(jù)權利要求1所述的方法,其特征在于,所述下載每個補丁包并僅安裝每個補丁包中最新的補丁包包括: 判斷下載的所述每個補丁包是否使用相同的補丁安裝判別條件; 當使用相同的補丁安裝判別條件時,根據(jù)所述補丁包的發(fā)布時間選擇最新的補丁包進行安裝。
7.根據(jù)權利要求1所述的方法,其特征在于,還包括: 所述補丁包安裝結(jié)束后,返回安裝結(jié)果信息; 當所述安裝結(jié)果信息表示所述補丁包安裝失敗時,判斷所述補丁包是否安裝成功。
8.根據(jù)權利要求1所述的方法,其特征在于,還包括: 所述補丁包安裝結(jié)束后,在輸出界面中顯示所述補丁包的信息。
9.一種補丁包的安裝裝置,其特征在于,包括: 生成單元,用于根據(jù)漏洞及其相關補丁包生成基于每個補丁包的注冊表和/或文件信息的補丁包安裝條件; 判斷單元,用于判斷所述補丁包對應的安裝對象是否滿足所述補丁包安裝條件; 安裝單元,用于當滿足所述補丁包安裝條件時,下載并安裝所述補丁包;其中,所述下載并安裝補丁包包括:下載并按照順序安裝所述每個補丁包,或者下載所述每個補丁包并僅安裝所述每個補丁包中最新的補丁包,或者僅下載并安裝所述每個補丁包中最新的補丁包。
10.根據(jù)權利要求9所述的裝置,其特征在于,所述生成單元生成的每個補丁包安裝條件中的注冊表信息包括:注冊表鍵、注冊表鍵值;文件信息包括:文件版本信息、文件屬性。
11.根據(jù)權利要求10所述的裝置,其特征在于,所述判斷單元包括至少一個下述單元: 第一信息判斷單元,用于判斷系統(tǒng)中是否存在指定的注冊表鍵、指定注冊表鍵的值、或指定的文件; 第二信息判斷單元,用于判斷指定的注冊表鍵值和/或文件的版本號是否滿足預設條件或在指定的范圍內(nèi)。
12.根據(jù)權利要求9所述的裝置,其特征在于,所述安裝單元包括至少一個下述單元: 順序安裝單元,用于分析每個補丁包的發(fā)布時間和順序,根據(jù)分析結(jié)果確定補丁包的安裝順序,并按照所述安裝順序安裝所述每個補丁包; 選擇安裝單元,用于判斷下載的所述每個補丁包是否使用相同的補丁安裝判別條件,當使用相同的補丁安裝判別條件時,根據(jù)所述補丁包的發(fā)布時間選擇最新的補丁包進行安裝; 直接安裝單元,用于僅下載并安裝所述每個補丁包中最新的補丁包。
13.根據(jù)權利要求9所述的裝置,其特征在于,還包括: 返回單元,用于在所述補丁包安裝結(jié)束后,返回安裝結(jié)果信息; 所述判斷單元,還用于當所述安裝結(jié)果信息表示所述補丁包安裝失敗時,判斷所述補丁包是否安裝成功。
14.根據(jù)權利要求9所述的裝置,其特征在于,還包括:顯示單元,用于所述補丁包安裝結(jié)束后,在輸出界面中顯示所述補丁包的信息。
【文檔編號】G06F9/445GK103810006SQ201410028477
【公開日】2014年5月21日 申請日期:2011年2月21日 優(yōu)先權日:2011年2月21日
【發(fā)明者】浦欣, 萬立新, 趙君 申請人:北京奇虎科技有限公司, 奇智軟件(北京)有限公司