專利名稱:插件下載控制方法及插件下載控制系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本申請(qǐng)涉及一種軟件控制,尤其涉及一種插件下載控制方法及插件下載控制系統(tǒng)。
背景技術(shù):
插件是計(jì)算機(jī)軟件中的一種特殊程序,它不能單獨(dú)執(zhí)行,而必須依賴于某個(gè)軟件。 很多軟件都有插件,插件有無數(shù)種,插件由于其小而精的特點(diǎn),并且能夠?qū)崿F(xiàn)該軟件本身不 具有的功能,因此在軟件上得到很廣泛的使用。例如在IE中,安裝相關(guān)的插件后,TOB瀏 覽器能夠直接調(diào)用插件程序,用于處理特定類型的文件。通常,我們將插件必須依賴于某 個(gè)軟件稱之為宿主程序。從物理形式上來看,插件包含但不局限于動(dòng)態(tài)鏈接庫DLL。插件 要實(shí)現(xiàn)宿主程序不具有的功能,需要使用宿主程序提供的諸如提供給插件開發(fā)者使用的 SDK (Software Development Kit軟件工具開發(fā)包)等服務(wù)。插件是由不同的插件開發(fā)者開發(fā)的,提供插件的服務(wù)器或終端,我們稱之為插件 第三方開發(fā)平臺(tái)。安裝有宿主程序的客戶端要使用某一插件時(shí),需要下載該插件的所有文 件才能使用。請(qǐng)參閱圖1,其為現(xiàn)有的一種插件下載控制系統(tǒng)的原理結(jié)構(gòu)示意圖。它包括安 裝有宿主程序的客戶端11、第三方開發(fā)平臺(tái)12、插件管理平臺(tái)13??蛻舳?1和第三方開發(fā) 平臺(tái)12通常有多個(gè),而插件管理平臺(tái)13只有一個(gè)。插件管理平臺(tái)13—般是宿主程序服務(wù) 商提供的平臺(tái)。目前,對(duì)插件進(jìn)行下載有以下幾種控制方法。第一種插件下載控制方法為插件的所有文件保存在第三方開發(fā)平臺(tái)12上,插件 管理平臺(tái)13提供下載該插件的鏈接,即插件管理平臺(tái)13提供該插件所在的第三方開發(fā)平 臺(tái)12上的下載網(wǎng)址。當(dāng)客戶端11需要下載某一插件時(shí),先登錄至插件管理平臺(tái)13上,再從 插件管理平臺(tái)13上獲得該插件的下載地址,后從下載網(wǎng)址上下載到對(duì)應(yīng)插件的所有文件。第二種插件下載控制方法為第三方開發(fā)平臺(tái)12將本端開發(fā)的插件的所有文件 上傳至插件管理平臺(tái)13,由插件管理平臺(tái)13進(jìn)行統(tǒng)一管理。當(dāng)客戶端11需要下載某一插 件時(shí),可以登錄至插件管理平臺(tái)12上進(jìn)行下載對(duì)應(yīng)插件的所有文件。第一種插件下載控制方法的缺陷是插件管理平臺(tái)13不能監(jiān)控所有的第三方開發(fā) 平臺(tái)12,由此存在安全性差的技術(shù)問題,比如,第三方開發(fā)平臺(tái)12向客戶端11提供某些惡 意插件,通過插件來獲得客戶端11上的敏感信息,由此使得客戶端11上個(gè)人信息或重要數(shù) 據(jù)被泄露。第二種插件下載控制方法雖然能夠克服第三種插件控制方法的缺陷,能對(duì)各個(gè)插 件做到集中控制,但是,每一個(gè)客戶端11下載都需要登錄到插件管理平臺(tái)13,當(dāng)客戶端11 個(gè)數(shù)不斷地增加時(shí),插件管理平臺(tái)13很容易存在網(wǎng)絡(luò)下載速度的瓶頸問題。特別是,所有 的第三方開發(fā)平臺(tái)12還需要登錄至插件管理平臺(tái)13上上傳插件的所有文件,由此更容易 引起整個(gè)插件管理平臺(tái)13的處理效率低下,甚至引起上傳/下載的網(wǎng)絡(luò)堵塞。
發(fā)明內(nèi)容
本申請(qǐng)的目的在于提供一種插件下載控制方法,以解決現(xiàn)有技術(shù)中由插件管理平 臺(tái)提供第三方開發(fā)平臺(tái)上插件的下載鏈接地址而實(shí)現(xiàn)下載時(shí)安全性差,而通過插件管理平 臺(tái)提供插件集中管理、集中下載時(shí)網(wǎng)絡(luò)速度慢,即現(xiàn)有技術(shù)中不能兼顧安全性和下載速度 的技術(shù)問題。本申請(qǐng)的另一目的在于提供一種插件下載控制系統(tǒng),以解決現(xiàn)有技術(shù)中由插件管 理平臺(tái)提供第三方開發(fā)平臺(tái)上插件的下載鏈接地址而實(shí)現(xiàn)下載時(shí)安全性差,而通過插件管 理平臺(tái)提供插件集中管理、集中下載時(shí)網(wǎng)絡(luò)速度慢,即現(xiàn)有技術(shù)中不能兼顧安全性和下載 速度的技術(shù)問題。插件下載控制方法,用于插件管理平臺(tái)控制客戶端下載插件,包括(1)插件管理平臺(tái)對(duì)第三方開發(fā)平臺(tái)提供的插件文件,進(jìn)行安全性審核,對(duì)安全性 審核通過的插件中各個(gè)文件生成摘要,寫入摘要清單文件,保存到清單文件存儲(chǔ)單元中;(2)插件管理平臺(tái)對(duì)通過安全性審核的插件進(jìn)行測試,測試通過的插件進(jìn)行發(fā) 布;(3)客戶端按照插件管理平臺(tái)提供的第三方開發(fā)平臺(tái)上的下載地址下載插件文 件,并驗(yàn)證該些文件的正確性Al 客戶端從插件管理平臺(tái)上下載該插件的摘要信息;A2 客戶端從第三方開發(fā)平臺(tái)上下載插件的文件,并將該些插件文件分別利用哈 希算法生成摘要,依次匹配步驟Al得到的摘要,若存在不同,則下載插件失敗,若相同,則 下載插件成功較佳地,步驟(1)包括將插件文件進(jìn)行病毒檢查,若檢測到某一文件存在病毒, 則安全性審核不通過。最佳地,步驟(1)中的安全性審核包括從插件文件中所有的二進(jìn)制文件中找到 對(duì)應(yīng)的導(dǎo)入函數(shù)表,檢測導(dǎo)入函數(shù)表中是否有預(yù)先設(shè)定的敏感函數(shù)列表中的API函數(shù),如 果有,則安全性審核不通過。另外,安全性檢測還包括獲得提供插件文件的第三方開發(fā)平臺(tái)對(duì)應(yīng)的授權(quán)級(jí)別; 判斷插件文件調(diào)用的函數(shù)是否超過該授權(quán)級(jí)別規(guī)定的函數(shù),若是,則安全性審核不通過。較佳地,插件管理平臺(tái)提供的下載地址為第三方開發(fā)平臺(tái)提供的下載鏈接地址。一種插件下載控制系統(tǒng),包括第三方開發(fā)平臺(tái)、插件管理平臺(tái)和客戶端,它們通過 網(wǎng)絡(luò)連接,其中第三方開發(fā)平臺(tái)用于提供插件文件;插件管理平臺(tái)用于對(duì)第三方開發(fā)平臺(tái)提供的插件文件,進(jìn)行安全性審核,并對(duì)通 過安全性審核的插件進(jìn)行測試,后對(duì)測試通過的插件進(jìn)行發(fā)布;客戶端用于在插件管理平臺(tái)提供的下載地址下載插件文件,并驗(yàn)證該些文件的 正確性。與現(xiàn)有技術(shù)相比,本申請(qǐng)存在以下的優(yōu)點(diǎn)首先,本申請(qǐng)將審核和下載分成兩個(gè)部分,只有經(jīng)過審核通過的插件,插件管理平 臺(tái)才對(duì)其進(jìn)行發(fā)布,這樣插件管理平臺(tái)就可以對(duì)經(jīng)過審核通過的插件提供下載地址,供客 戶端下載,對(duì)沒有經(jīng)過審核的插件就不需要進(jìn)行發(fā)布,由此能夠控制插件的安全性,并且,5插件提供下載地址可以是第三方開發(fā)平臺(tái)所在的鏈接地址,還可以是另外方所在的鏈接地 址或者是插件管理平臺(tái)所提供的鏈接地址,由此也解決了現(xiàn)有技術(shù)中所有插件統(tǒng)一放置在 插件管理平臺(tái)上下載容易造成網(wǎng)絡(luò)堵塞的技術(shù)問題。插件管理平臺(tái)對(duì)審核通過的插件生成 各個(gè)文件摘要信息,在客戶端進(jìn)行文件下載時(shí),根據(jù)摘要信息驗(yàn)證下載到的文件的正確性, 這種校驗(yàn)方式安全性高,準(zhǔn)確性高。其次,考慮到在第三方開發(fā)平臺(tái)上下載插件文件,存在文件被修改的技術(shù)問題,為 此,本申請(qǐng)?jiān)诳蛻舳嗽O(shè)置對(duì)下載的插件文件進(jìn)行校驗(yàn)的步驟,只有經(jīng)過校驗(yàn)的插件文件才 是下載成功的,由此使得安全性更提升一步。再次,在插件管理平臺(tái)上審核插件文件時(shí),要對(duì)插件文件中所有的二進(jìn)制文件中 找到對(duì)應(yīng)的導(dǎo)入函數(shù)表,檢測導(dǎo)入函數(shù)表中是否有預(yù)先設(shè)定的敏感函數(shù),由此提高插件的 安全性,盡量減少一些鉤函數(shù)之類的敏感函數(shù)造成安裝該插件客戶端的不安全性。
圖1為現(xiàn)有的一種插件下載控制系統(tǒng)的原理結(jié)構(gòu)示意圖;圖2為本申請(qǐng)的一種插件下載控制系統(tǒng)的原理結(jié)構(gòu)示意圖;圖3為本申請(qǐng)的插件管理平臺(tái)的原理結(jié)構(gòu)示意圖;圖4為本申請(qǐng)客戶端的原理結(jié)構(gòu)示意圖;圖5為本申請(qǐng)的一種插件下載控制方法的流程圖;圖6為本申請(qǐng)的一種插件下載控制方法的應(yīng)用流程圖。
具體實(shí)施例方式請(qǐng)參閱圖2,其為本申請(qǐng)一種插件下載控制系統(tǒng)的原理結(jié)構(gòu)示意圖。它包括第三方 開發(fā)平臺(tái)21、插件管理平臺(tái)22和客戶端23,它們通過網(wǎng)絡(luò)連接。第三方開發(fā)平臺(tái)21 用于提供插件文件;插件管理平臺(tái)22 用于對(duì)第三方開發(fā)平臺(tái)21提供的插件文件,進(jìn)行安全性審核, 并對(duì)通過安全性審核的插件進(jìn)行測試,然后對(duì)測試通過的插件進(jìn)行發(fā)布;客戶端23 用于從插件管理平臺(tái)22提供的下載地址上下載插件文件,并驗(yàn)證該些 文件的正確性。有一個(gè)地方需要說明的是,在宿主程序中執(zhí)行插件能實(shí)現(xiàn)某一應(yīng)用。我們把能實(shí) 現(xiàn)某一應(yīng)用的程序統(tǒng)稱為插件。插件在執(zhí)行之前,是包含很多文件的(可以稱之為插件文 件)。插件文件包括可執(zhí)行文件、配置文件等??蓤?zhí)行文件包括保存有導(dǎo)入函數(shù)表的二進(jìn)制 文件。對(duì)于第三方開發(fā)平臺(tái)21與現(xiàn)有技術(shù)相比,可以不做大的改動(dòng)。第三方開發(fā)平臺(tái)21 還是提供本端開發(fā)的插件文件,以及根據(jù)插件管理平臺(tái)22的要求來提供下載插件文件的 鏈接地址。請(qǐng)參閱圖3,插件管理平臺(tái)22包括服務(wù)器31和數(shù)據(jù)庫32。數(shù)據(jù)庫32中可以進(jìn)一步設(shè)置第三方開發(fā)平臺(tái)存儲(chǔ)單元321 用于存儲(chǔ)第三方開發(fā)平臺(tái)21的信息,包括但不局 限于第三方開發(fā)平臺(tái)21的標(biāo)號(hào)信息、授權(quán)級(jí)別、開發(fā)的插件信息等。6
插件信息存儲(chǔ)單元322,用于存儲(chǔ)插件信息,包括插件介紹、插件版本、插件的下 載地址、插件的安裝方法、插件使用參數(shù)、插件的發(fā)布情況、插件文件信息、插件的歷史情況等。授權(quán)級(jí)別允許函數(shù)存儲(chǔ)單元323,用于存儲(chǔ)每一授權(quán)級(jí)別允許的插件使用函數(shù)信 息。授權(quán)級(jí)別允許函數(shù)存儲(chǔ)單元323主要保存每一授權(quán)級(jí)別對(duì)應(yīng)可以使用的函數(shù),或者保 存每一授權(quán)級(jí)別對(duì)應(yīng)不可以使用的函數(shù)。敏感函數(shù)列表324 用于存儲(chǔ)影響客戶端安全性的API (應(yīng)用程序編程接口)函 數(shù)。該些影響客戶端安全性的API函數(shù)主要包括操作系統(tǒng)函數(shù)等,特別是鉤子函數(shù)。鉤子 函數(shù)包括但不局限于ktWindowsHookEx,一般是指可以給WINDOWS —個(gè)處理或過濾事件的 回調(diào)函數(shù)。形象地說,鉤子函數(shù)就是Windows系統(tǒng)自帶的“監(jiān)工”、“監(jiān)視者”,它們負(fù)責(zé)監(jiān)視 系統(tǒng)內(nèi)各個(gè)進(jìn)程的運(yùn)行狀況,并從中獲得數(shù)據(jù),比如獲得鼠標(biāo)激活、鍵盤響應(yīng)等信息,客戶 端正是根據(jù)鉤子函數(shù)對(duì)該信息作出的處理。當(dāng)被不良的第三方開發(fā)平臺(tái)21利用鉤子函數(shù) 監(jiān)控并收集客戶端23上用戶在鍵盤上敲擊的每一個(gè)按鍵時(shí),容易使得諸如銀行賬戶、密碼 等重要信息泄露。清單文件存儲(chǔ)單元325,用于保存各個(gè)插件對(duì)應(yīng)的清單文件。對(duì)插件的文件進(jìn)行加 密后生成摘要信息,該插件的所有摘要信息可以放置在一個(gè)清單文件中,存儲(chǔ)在清單文件 存儲(chǔ)單元325中。服務(wù)器31進(jìn)一步包括接口單元311,用于建立與第三方開發(fā)平臺(tái)21、客戶端23的連接。安全性審核器312 用于對(duì)插件進(jìn)行安全性審核。它包括病毒檢測單元313、敏感 函數(shù)檢測單元314和授權(quán)級(jí)別允許函數(shù)判斷單元315。其中,病毒檢測單元313 用于將插件文件進(jìn)行病毒檢查,若檢測到某一文件存在病毒, 則安全性審核不通過。敏感函數(shù)檢測單元314 用于從插件文件中找到所有的二進(jìn)制文件,并從二進(jìn)制 文件中找到對(duì)應(yīng)的導(dǎo)入函數(shù)表,檢測導(dǎo)入函數(shù)表中是否有預(yù)先設(shè)定的敏感函數(shù)列表324中 的API函數(shù),如果有,則安全性審核不通過。授權(quán)級(jí)別允許函數(shù)判斷單元315,用于判斷插件文件調(diào)用的函數(shù)是否超過該授權(quán) 級(jí)別允許的函數(shù),若是,則安全性審核不通過。測試處理單元316 用于對(duì)經(jīng)過安全性審核的插件,建立與對(duì)應(yīng)的第三方開發(fā)平 臺(tái)21之間的通信,讓其發(fā)送審核通過的消息給第三方開發(fā)平臺(tái)21,并測試插件;發(fā)布處理單元317 用于對(duì)測試通過的插件進(jìn)行發(fā)布,發(fā)布的信息包括但不局限 于插件介紹、插件版本、插件的下載地址、插件的安裝方法、插件使用參數(shù)等。在本實(shí)例中,還包括摘要生成單元318,用于對(duì)安全性審核通過的插件中各個(gè)文件 生成摘要,寫入摘要清單文件,保存到清單文件存儲(chǔ)單元325中。在本實(shí)例中,還包括下載處理單元319,用于接收到客戶端23發(fā)送出的下載請(qǐng)求 時(shí),從清單文件存儲(chǔ)單元325中下載對(duì)應(yīng)插件的清單文件。請(qǐng)參閱圖4,客戶端23進(jìn)一步包括接口單元231,用于建立插件管理平臺(tái)、第三方開發(fā)平臺(tái)21上的連接;檢驗(yàn)單元232 用于從第三方開發(fā)平臺(tái)21上下載插件,并將該些插件文件分別利用哈希算法生成摘要,依次匹配上述得到的文件清單中的摘要,若存在不同,則下載插件失 敗,若都相同,則下載插件成功。基于上述公開的系統(tǒng),本申請(qǐng)還提供一種插件下載控制方法的流程(請(qǐng)參閱圖 5)。它包括SllO 第三方開發(fā)平臺(tái)提供插件文件,請(qǐng)求安全性審核;S120:插件管理平臺(tái)對(duì)第三方開發(fā)平臺(tái)提供的插件文件,進(jìn)行安全性審核,并將審 核的結(jié)果返回至第三方開發(fā)平臺(tái)。安全性審核主要是從插件文件中所有的二進(jìn)制文件中找到對(duì)應(yīng)的導(dǎo)入函數(shù)表,檢 測導(dǎo)入函數(shù)表中是否有預(yù)先設(shè)定的敏感函數(shù)列表中的API函數(shù),如果有,則安全性審核不 通過。S130 插件管理平臺(tái)對(duì)通過安全性審核的插件進(jìn)行測試,并將測試結(jié)果返回至對(duì) 應(yīng)的第三方開發(fā)平臺(tái)。S140 插件管理平臺(tái)將測試通過的插件進(jìn)行發(fā)布,并對(duì)安全性審核通過的插件中 各個(gè)文件生成摘要,寫入摘要清單文件,保存到清單文件存儲(chǔ)單元中。發(fā)布主要是將包括插 件介紹、插件的下載地址、插件的安裝方法等信息展示給客戶端或第三方開發(fā)平臺(tái)。發(fā)布就 是指將插件的相關(guān)信息通過網(wǎng)絡(luò)公布出去,客戶端或其它第三方平臺(tái)能夠通過訪問插件管 理平臺(tái)查看到公布的信息。S130和S140是現(xiàn)有技術(shù)相同,不再詳細(xì)說明。S150 客戶端按照插件管理平臺(tái)提供的下載地址下載插件文件。插件管理理平臺(tái) 提供可以下載插件信息的下載地址,通常有兩種情況。一種是插件文件存放在第三方開發(fā) 平臺(tái)上,第三方開發(fā)平臺(tái)上傳本端下載插件的下載地址。第二種情況是插件管理平臺(tái)統(tǒng)一 將插件文件放置在某一服務(wù)器上,由插件管理平臺(tái)統(tǒng)一提供并管理插件文件的下載地址。 通過這種方式,可以使得客戶端下載插件時(shí)不容易造成網(wǎng)絡(luò)堵塞。S160 客戶端驗(yàn)證該些插件文件的正確性。客戶端驗(yàn)證該些插件文件的正確性,進(jìn)一步包括Al 客戶端從插件管理平臺(tái)上下載該插件的清單文件;A2 客戶端從第三方開發(fā)平臺(tái)上下載插件的文件,并將該些插件文件生成摘要,依 次匹配步驟Al得到的清單文件中的摘要,若存在不同,則下載插件失敗,若都相同,則下載 插件成功。也就是說,插件管理平臺(tái)可以對(duì)插件文件中的某些文件生成摘要,比如,對(duì)某些文 件通過MDC (報(bào)文摘要生成算法)生成摘要。一種驗(yàn)證下載的插件文件的方式為客戶端在本端的宿主程序安裝對(duì)應(yīng)的插件時(shí),設(shè)置一觸發(fā)標(biāo)志。當(dāng)下載的插件文 件經(jīng)驗(yàn)證后,觸發(fā)標(biāo)志為“ 1 ”,才能安裝對(duì)應(yīng)的插件文件。當(dāng)下載的插件文件未經(jīng)驗(yàn)證,則相 應(yīng)的觸發(fā)標(biāo)志為“0”,不能安裝對(duì)應(yīng)的插件文件??蛻舳讼葟牡谌介_發(fā)平臺(tái)上下載插件的文件,此時(shí)是不能將插件文件直接在本 端進(jìn)行安裝的??蛻舳诉€需要從插件管理平臺(tái)上下載對(duì)應(yīng)的清單文件,所述清單文件中包含有對(duì) 應(yīng)的MDC算法信息??蛻舳死脤?duì)應(yīng)的算法將從第三方開發(fā)平臺(tái)下載的各種插件文件生成摘要??蛻舳吮葘?duì)從插件管理平臺(tái)上下載的清單文件與上述生成的摘要,若相同,則驗(yàn) 證通過,若存在不相同,則不能通過驗(yàn)證。請(qǐng)參閱圖6,其為本申請(qǐng)的一應(yīng)用例。S210:第三方開發(fā)平臺(tái)提供插件文件,請(qǐng)求安全性審核。第三方開發(fā)平臺(tái)每開發(fā)出 一新的插件,都需要請(qǐng)求安全性審核。并且,第三方開發(fā)平臺(tái)對(duì)舊的插件文件進(jìn)行修改時(shí), 也需要重新請(qǐng)求安全性審核。S220:插件管理平臺(tái)對(duì)第三方開發(fā)平臺(tái)提供的插件文件,進(jìn)行安全性審核。安全性審核主要進(jìn)行以下三步首先進(jìn)行步驟S221 將插件文件進(jìn)行病毒檢查,若檢測到某一文件存在病毒,則 安全性審核不通過,若通過,則進(jìn)行步驟S222 ;隨后進(jìn)行步驟S222 從插件文件中所有的二進(jìn)制文件中找到對(duì)應(yīng)的導(dǎo)入函數(shù)表, 檢測導(dǎo)入函數(shù)表中是否有預(yù)先設(shè)定的敏感函數(shù)列表中的API函數(shù),如果有,則安全性審 核不通過,若通過,則進(jìn)行步驟S223 ;敏感函數(shù)列表包括操作系統(tǒng)API函數(shù),特別是包含 SetffindowsHookEx在內(nèi)的鉤函數(shù);最后進(jìn)行步驟S223 獲得提供插件文件的第三方開發(fā)平臺(tái)對(duì)應(yīng)的授權(quán)級(jí)別;判斷 插件文件調(diào)用的函數(shù)是否超過該授權(quán)級(jí)別規(guī)定的函數(shù),若是,則安全性審核不通過,若否, 則安全性通過。如果授權(quán)級(jí)別允許函數(shù)存儲(chǔ)單元中存儲(chǔ)的是每一授權(quán)級(jí)別對(duì)應(yīng)的允許函 數(shù),則先找到該第三方開發(fā)平臺(tái)對(duì)應(yīng)的授權(quán)級(jí)別,然后再根據(jù)授權(quán)級(jí)別找到對(duì)應(yīng)的允許函 數(shù),后依次判斷插件文件調(diào)用的函數(shù)是否是上述允許函數(shù),若是,則安全性通過,上述安全性審核時(shí),步驟S222是必選地,步驟S221、步驟S223是可選的。另外,還 可以增加額外的安全性審核步驟。S230:安全性審核通過后,對(duì)插件中各個(gè)文件生成摘要,寫入摘要清單文件,保存 到清單文件存儲(chǔ)單元中。在本實(shí)例中,為了安全性是對(duì)插件中所有文件都依據(jù)哈希算法生成摘要。當(dāng)然,也 可以選擇其中某些重要文件生成摘要。將生成的摘要都保存到插件對(duì)應(yīng)的一個(gè)清單文件 中。S240 插件管理平臺(tái)對(duì)通過安全性審核的插件進(jìn)行測試,并將測試結(jié)果返回至對(duì) 應(yīng)的第三方開發(fā)平臺(tái)。S250 插件管理平臺(tái)將測試通過的插件進(jìn)行發(fā)布。發(fā)布的信息主要是包括插件介 紹、插件的下載地址、插件的安裝方法等。由于上述測試和發(fā)布步驟與現(xiàn)有技術(shù)中的插件測試和插件發(fā)布相同,在此就不再 詳細(xì)說明了。在本實(shí)例中,插件管理平臺(tái)提供的下載地址為第三方開發(fā)平臺(tái)提供的下載鏈接地 址。S260 客戶端下載插件文件??蛻舳送ㄟ^插件管理平臺(tái)發(fā)布的信息即可獲得插件的下載地址和插件的安裝方 法??蛻舳死蒙鲜鲂畔⒓纯蛇M(jìn)行下載。
S270 客戶端驗(yàn)證該些插件文件的正確性。Al 客戶端從插件管理平臺(tái)上下載該插件的文件清單;A2 客戶端從第三方開發(fā)平臺(tái)上下載插件文件,并將該些插件文件分別利用哈希 算法生成摘要,依次匹配步驟Al得到的文件清單中的摘要,若存在不同,則下載插件失敗, 若都相同,則下載插件成功。另外,還需要說明的是,第三方開發(fā)平臺(tái)提供的插件文件發(fā)生修改時(shí),需要重新進(jìn) 行安全性審核。以上公開的僅為本申請(qǐng)的幾個(gè)具體實(shí)施例,但本申請(qǐng)并非局限于此,任何本領(lǐng)域 的技術(shù)人員能思之的變化,都應(yīng)落在本實(shí)用新型的保護(hù)范圍內(nèi)。
權(quán)利要求
1.一種插件下載控制方法,用于插件管理平臺(tái)控制客戶端下載插件,其特征在于,包括(1)插件管理平臺(tái)對(duì)第三方開發(fā)平臺(tái)提供的插件文件,進(jìn)行安全性審核;(2)插件管理平臺(tái)對(duì)通過安全性審核的插件進(jìn)行測試,測試通過的插件進(jìn)行發(fā)布,并且 插件管理平臺(tái)對(duì)審核通過的插件中的插件文件生成摘要信息;(3)客戶端按照插件管理平臺(tái)提供的第三方開發(fā)平臺(tái)上的下載地址下載插件文件,并 驗(yàn)證該些文件的正確性Al 客戶端從插件管理平臺(tái)上下載該插件的摘要信息;A2 客戶端從第三方開發(fā)平臺(tái)上下載插件的文件,并將該些插件文件分別生成摘要,依 次匹配步驟Al得到的摘要,若存在不同,則下載插件失敗,若相同,則下載插件成功,允許安裝。
2.如權(quán)利要求1所述的插件下載控制方法,其特征在于,步驟(1)包括 將插件文件進(jìn)行病毒檢查,若檢測到某一文件存在病毒,則安全性審核不通過。
3.如權(quán)利要求1或2所述的插件下載控制方法,其特征在于,步驟(1)包括從插件文件中所有的二進(jìn)制文件中找到對(duì)應(yīng)的導(dǎo)入函數(shù)表,檢測導(dǎo)入函數(shù)表中是否有 預(yù)先設(shè)定的敏感函數(shù)列表中的敏感函數(shù),如果有,則安全性審核不通過。
4.如權(quán)利要求3所述的插件控制方法,其特征在于,敏感函數(shù)列表包括操作系統(tǒng)API函 數(shù)、API函數(shù)包括包含ktWindowsHookEx在內(nèi)的鉤函數(shù)。
5.如權(quán)利要求3所述的插件下載控制方法,其特征在于,步驟(1)還包括獲得提供插 件文件的第三方開發(fā)平臺(tái)對(duì)應(yīng)的授權(quán)級(jí)別;判斷插件文件調(diào)用的函數(shù)是否超過該授權(quán)級(jí)別規(guī)定的函數(shù),若是,則安全性審核不通過。
6.如權(quán)利要求1所述的插件下載控制方法,其特征在于,步驟( 中發(fā)布插件包括插件 介紹、插件版本、插件的下載地址、插件的安裝方法、插件使用參數(shù)的至少其中之一。
7.如權(quán)利要求1所述的插件下載控制方法,其特征在于,還包括第三方開發(fā)平臺(tái)提供的插件文件發(fā)生修改時(shí),需要重新進(jìn)行安全性審核。
8.如權(quán)利要求1所述的插件下載控制方法,其特征在于,還包括所述摘要信息保存于 清單文件中。
9.一種插件下載控制方法,用于客戶端從第三方開發(fā)平臺(tái)上下載插件,其特征在于,包括客戶端從插件管理平臺(tái)上下載所述插件的摘要信息,所述摘要信息是插件管理平臺(tái)對(duì) 第三方開發(fā)平臺(tái)提供的插件文件進(jìn)行安全性審核后生成的;客戶端按照所述插件管理平臺(tái)提供的第三方開發(fā)平臺(tái)上的下載地址下載插件文件,并 將該些插件文件分別生產(chǎn)摘要信息;依次匹配客戶端生成的摘要信息以及從插件管理平臺(tái)上下載的摘要信息,若存在不 同,則下載插件失敗,若相同,則下載插件成功,允許安裝。
10.一種插件下載控制系統(tǒng),其特征在于,包括第三方開發(fā)平臺(tái)、插件管理平臺(tái)和客戶 端,它們通過網(wǎng)絡(luò)連接,其中第三方開發(fā)平臺(tái)用于提供插件文件;插件管理平臺(tái)用于對(duì)第三方開發(fā)平臺(tái)提供的插件文件,進(jìn)行安全性審核,并對(duì)通過安 全性審核的插件進(jìn)行測試,后對(duì)測試通過的插件進(jìn)行發(fā)布,包括摘要生成單元,用于對(duì)安全性審核通過的插件中各個(gè)文件生成摘要;客戶端用于在插件管理平臺(tái)提供的下載地址下載插件文件,并驗(yàn)證該些文件的正確 性;其進(jìn)一步包括檢驗(yàn)單元用于從第三方開發(fā)平臺(tái)上下載插件的文件,并將該些插件文件分別生成摘 要,依次匹配上述摘要生成單元生成的摘要,若存在不同,則下載插件失敗,若相同,則下載 插件成功。
11.如權(quán)利要求10所述的系統(tǒng),其特征在于,所述插件管理平臺(tái)進(jìn)一步包括清單文件 存儲(chǔ)單元,用于保存各個(gè)插件對(duì)應(yīng)的清單文件。
12.如權(quán)利要求10所述的系統(tǒng),其特征在于,所述插件管理平臺(tái)進(jìn)一步包括敏感函數(shù)列表用于存儲(chǔ)影響客戶端安全性的API函數(shù);敏感函數(shù)檢測單元用于從插件文件中所有的二進(jìn)制文件中找到對(duì)應(yīng)的導(dǎo)入函數(shù)表, 檢測導(dǎo)入函數(shù)表中是否有預(yù)先設(shè)定的敏感函數(shù)列表中的API函數(shù),如果有,則安全性審核 不通過。
13.如權(quán)利要求10所述的系統(tǒng),其特征在于,插件管理平臺(tái)還包括病毒檢測單元用于將插件文件進(jìn)行病毒檢查,若檢測到某一文件存在病毒,則安全性 審核不通過。
14.如權(quán)利要求10所述的系統(tǒng),其特征在于,插件管理平臺(tái)還包括授權(quán)級(jí)別允許函數(shù)存儲(chǔ)單元,用于存儲(chǔ)每一授權(quán)級(jí)別插件允許的使用函數(shù)信息;授權(quán)級(jí)別允許函數(shù)判斷單元,用于判斷插件文件調(diào)用的函數(shù)是否超過該授權(quán)級(jí)別規(guī)定 的函數(shù),若是,則安全性審核不通過。
全文摘要
一種插件下載控制方法,用于插件管理平臺(tái)控制客戶端下載插件,包括(1)插件管理平臺(tái)對(duì)第三方開發(fā)平臺(tái)提供的插件文件,進(jìn)行安全性審核;(2)插件管理平臺(tái)對(duì)通過安全性審核的插件進(jìn)行測試,測試通過的插件進(jìn)行發(fā)布;(3)客戶端按照插件管理平臺(tái)提供的下載地址下載插件文件,并驗(yàn)證該些文件的正確性。將審核和下載分成兩部分,只有經(jīng)過審核通過的插件,插件管理平臺(tái)才對(duì)其進(jìn)行發(fā)布,插件管理平臺(tái)就可以對(duì)經(jīng)過審核通過的插件提供下載地址,供客戶端下載,對(duì)沒有經(jīng)過審核的插件就不需要進(jìn)行發(fā)布,由此能夠控制插件的安全性,另外,本申請(qǐng)人在客戶端設(shè)置對(duì)下載的插件文件進(jìn)行校驗(yàn)的步驟,只有經(jīng)過校驗(yàn)的插件文件才是下載成功的,安全性高。
文檔編號(hào)G06F21/22GK102043649SQ20091020827
公開日2011年5月4日 申請(qǐng)日期2009年10月23日 優(yōu)先權(quán)日2009年10月23日
發(fā)明者何治華, 孔勇偉, 彭衛(wèi) 申請(qǐng)人:阿里巴巴集團(tuán)控股有限公司