国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      對(duì)瀏覽器下載文件的保護(hù)方法及裝置制造方法

      文檔序號(hào):6544257閱讀:236來源:國知局
      對(duì)瀏覽器下載文件的保護(hù)方法及裝置制造方法
      【專利摘要】本發(fā)明公開了一種對(duì)瀏覽器下載文件的保護(hù)方法及裝置。其中方法包括:截獲瀏覽器進(jìn)程創(chuàng)建下載窗口的行為;接管下載窗口對(duì)應(yīng)的窗口過程,并在瀏覽器進(jìn)程根據(jù)用戶在下載窗口中觸發(fā)的命令將文件下載到緩存文件夾之后,將緩存文件夾的文件復(fù)制到指定的本地文件夾或運(yùn)行緩存文件夾中的文件。由于瀏覽器是基于沙箱技術(shù)而運(yùn)行,通過截獲瀏覽器進(jìn)程創(chuàng)建下載窗口的行為并接管下載窗口對(duì)應(yīng)的窗口可以使本發(fā)明提供的裝置準(zhǔn)確獲知用戶的操作,在用戶在下載窗口中觸發(fā)的命令將文件下載到緩存文件夾之后,將緩存文件夾的文件復(fù)制到指定的本地文件夾或運(yùn)行緩存文件夾中的文件,這樣在瀏覽器程序退出后,下載文件也會(huì)永久保存在本地文件夾中或者在真實(shí)系統(tǒng)上運(yùn)行。
      【專利說明】對(duì)瀏覽器下載文件的保護(hù)方法及裝置
      【技術(shù)領(lǐng)域】
      [0001]本發(fā)明涉及互聯(lián)網(wǎng)領(lǐng)域,具體涉及一種對(duì)瀏覽器下載文件的保護(hù)方法及裝置。
      【背景技術(shù)】
      [0002]隨著網(wǎng)絡(luò)安全問題的日益突出,更多的將沙箱(SandBox)技術(shù)應(yīng)用于網(wǎng)頁安全訪問方面。所謂的沙箱技術(shù),從技術(shù)實(shí)現(xiàn)角度而言,就是從原有的阻止可疑程序?qū)ο到y(tǒng)訪問,轉(zhuǎn)變成將可疑程序?qū)Υ疟P、注冊(cè)表等的訪問重定向到指定文件夾下,從而消除對(duì)系統(tǒng)的危害。對(duì)于瀏覽器而言,沙箱系統(tǒng)構(gòu)建了一個(gè)安全的虛擬執(zhí)行環(huán)境。通過瀏覽器所作的任何寫磁盤操作,都將重定向到一個(gè)特定的臨時(shí)文件夾中。這樣,即使網(wǎng)頁中包含病毒、木馬、廣告等惡意程序,即使被強(qiáng)行安裝,也都只是安裝到了臨時(shí)文件夾中,不會(huì)對(duì)用戶的實(shí)際系統(tǒng)造成危吾。
      [0003]這種技術(shù)的使用,提高了用戶系統(tǒng)的安全性,但同時(shí)也帶來了一些限制。例如,用戶有時(shí)可能需要通過瀏覽器真實(shí)的下載網(wǎng)絡(luò)上的文件,這時(shí)由于沙箱的限制,文件只能下載到虛擬目錄下,并且在瀏覽器程序退出后,沙箱會(huì)自動(dòng)刪除這些臨時(shí)文件,造成文件不能永久保存??梢姡仨殞?duì)現(xiàn)有沙箱技術(shù)的使用作出必要的調(diào)整,才能滿足瀏覽器的需要。

      【發(fā)明內(nèi)容】

      [0004]鑒于上述問題,提出了本發(fā)明以便提供一種克服上述問題或者至少部分地解決上述問題的對(duì)瀏覽器下載文件的保護(hù)方法和相應(yīng)的對(duì)瀏覽器下載文件的保護(hù)裝置。
      [0005]根據(jù)本發(fā)明的一個(gè)方面,提供了一種對(duì)瀏覽器下載文件的保護(hù)方法,所述瀏覽器基于沙箱技術(shù)而運(yùn)行,所述方法包括:
      [0006]截獲瀏覽器進(jìn)程創(chuàng)建下載窗口的行為;
      [0007]接管所述下載窗口對(duì)應(yīng)的窗口過程,并在所述瀏覽器進(jìn)程根據(jù)用戶在所述下載窗口中觸發(fā)的命令將文件下載到緩存文件夾之后,將所述緩存文件夾的所述文件復(fù)制到指定的本地文件夾或運(yùn)行所述緩存文件夾中的文件。
      [0008]可選地,將所述緩存文件夾的所述文件復(fù)制到指定的本地文件夾具體包括:通過接管所述下載窗口對(duì)應(yīng)的窗口過程,截獲用戶在所述下載窗口中觸發(fā)的下載文件的命令;根據(jù)所述下載文件的命令,將所述緩存文件夾的所述文件復(fù)制到指定的本地文件夾。
      [0009]可選地,所述運(yùn)行所述緩存文件夾中的文件具體包括:通過接管所述下載窗口對(duì)應(yīng)的窗口過程,截獲用戶在所述下載窗口中觸發(fā)的運(yùn)行文件的命令;根據(jù)所述運(yùn)行文件的命令,運(yùn)行所述緩存文件夾中的文件。
      [0010]可選地,所述運(yùn)行所述緩存文件夾中的文件具體為:調(diào)用非自保進(jìn)程運(yùn)行所述緩存文件夾中的文件。
      [0011]可選地,在將所述緩存文件夾的所述文件復(fù)制到指定的本地文件夾之后進(jìn)一步包括:通過接管所述下載窗口對(duì)應(yīng)的窗口過程,截獲用戶在所述下載窗口中觸發(fā)的運(yùn)行文件的命令;調(diào)用非自保進(jìn)程運(yùn)行所述本地文件夾中的文件。[0012]可選地,所述截獲瀏覽器進(jìn)程創(chuàng)建下載窗口的行為進(jìn)一步包括:截獲瀏覽器進(jìn)程創(chuàng)建對(duì)話窗口的行為,根據(jù)所述對(duì)話窗口的資源標(biāo)識(shí)確定所述對(duì)話窗口是否為下載窗口。
      [0013]可選地,在所述截獲瀏覽器進(jìn)程創(chuàng)建對(duì)話窗口的行為之前還包括:判斷系統(tǒng)是否啟用下載文件的保護(hù)功能;
      [0014]在判斷出系統(tǒng)啟用下載文件的保護(hù)功能的情況下,進(jìn)行截獲瀏覽器進(jìn)程創(chuàng)建對(duì)話窗口的行為。
      [0015]可選地,在將所述緩存文件夾的所述文件復(fù)制到指定的本地文件夾之前還包括:判斷所述文件在本地文件夾中是否存在,若是則提示用戶是否覆蓋所述本地文件夾中存在的文件;
      [0016]在用戶選擇覆蓋所述本地文件夾中存在的文件之后,執(zhí)行將所述緩存文件夾的所述文件復(fù)制到指定的本地文件夾的步驟。
      [0017]根據(jù)本發(fā)明的另一方面,提供了一種對(duì)瀏覽器下載文件的保護(hù)裝置,所述瀏覽器基于沙箱技術(shù)而運(yùn)行,所述裝置包括:
      [0018]截獲模塊,適于截獲瀏覽器進(jìn)程創(chuàng)建下載窗口的行為;
      [0019]接管模塊,適于接管所述下載窗口對(duì)應(yīng)的窗口過程,所述瀏覽器進(jìn)程根據(jù)用戶在所述下載窗口中觸發(fā)的命令將文件下載到緩存文件夾之后,將所述緩存文件夾的所述文件復(fù)制到指定的本地文件夾;
      [0020]運(yùn)行模塊,適于根據(jù)用戶在所述下載窗口中觸發(fā)的命令運(yùn)行所述緩存文件夾中的文件。
      [0021]可選地,所述接管模塊具體適于:通過接管所述下載窗口對(duì)應(yīng)的窗口過程,截獲用戶在所述下載窗口中觸發(fā)的下載文件的命令;根據(jù)所述下載文件的命令,將所述緩存文件夾的所述文件復(fù)制到指定的本地文件夾。
      [0022]可選地,所述接管模塊具體適于:通過接管所述下載窗口對(duì)應(yīng)的窗口過程,截獲用戶在所述下載窗口中觸發(fā)的運(yùn)行文件的命令。
      [0023]可選地,運(yùn)行模塊具體適于:在所述接管模塊的調(diào)用下,啟動(dòng)非自保進(jìn)程運(yùn)行所述緩存文件夾中的文件。
      [0024]可選地,所述接管模塊進(jìn)一步適于:通過接管所述下載窗口對(duì)應(yīng)的窗口過程,截獲用戶在所述下載窗口中觸發(fā)的運(yùn)行文件的命令;
      [0025]所述運(yùn)行模塊還適于在所述接管模塊的調(diào)用下,啟動(dòng)非自保進(jìn)程運(yùn)行所述本地文件夾中的文件。
      [0026]可選地,所述截獲模塊具體用于:截獲瀏覽器進(jìn)程創(chuàng)建對(duì)話窗口的行為,根據(jù)所述對(duì)話窗口的資源標(biāo)識(shí)確定所述對(duì)話窗口是否為下載窗口。
      [0027]可選地,該裝置還包括:第一判斷模塊,用于判斷系統(tǒng)是否啟用下載文件的保護(hù)功能,在判斷出系統(tǒng)啟用下載文件的保護(hù)功能的情況下,觸發(fā)所述截獲模塊進(jìn)行截獲瀏覽器進(jìn)程創(chuàng)建對(duì)話窗口的行為。
      [0028]可選地,該裝置還包括:第二判斷模塊,適于判斷所述文件在本地文件夾中是否存在;
      [0029]提示模塊,適于在所述判斷模塊判定所述文件在本地文件夾存在的情況下,提示用戶是否覆蓋所述本地文件夾中存在的文件;[0030]所述接管模塊進(jìn)一步適于在用戶選擇覆蓋后,將所述緩存文件夾的所述文件復(fù)制到所述本地文件夾。
      [0031 ] 根據(jù)本發(fā)明的方案,在截獲瀏覽器進(jìn)程創(chuàng)建下載窗口的行為之后,接管所述下載窗口對(duì)應(yīng)的窗口過程,并在所述瀏覽器進(jìn)程根據(jù)用戶在所述下載窗口中觸發(fā)的命令將文件下載到緩存文件夾之后,將所述緩存文件夾的所述文件復(fù)制到指定的本地文件夾或運(yùn)行所述緩存文件夾中的文件。由于瀏覽器是基于沙箱技術(shù)而運(yùn)行,通過截獲瀏覽器進(jìn)程創(chuàng)建下載窗口的行為并接管下載窗口對(duì)應(yīng)的窗口過程可以使本發(fā)明提供的裝置準(zhǔn)確獲知用戶的操作,在用戶在下載窗口中觸發(fā)的命令將文件下載到緩存文件夾之后,將緩存文件夾的文件復(fù)制到指定的本地文件夾或運(yùn)行緩存文件夾中的文件,這樣在瀏覽器程序退出后,下載文件也會(huì)永久保存在本地文件夾中或者在真實(shí)系統(tǒng)上運(yùn)行,而且也不會(huì)影響瀏覽器在沙箱中運(yùn)行的原有機(jī)制。
      [0032]上述說明僅是本發(fā)明技術(shù)方案的概述,為了能夠更清楚了解本發(fā)明的技術(shù)手段,而可依照說明書的內(nèi)容予以實(shí)施,并且為了讓本發(fā)明的上述和其它目的、特征和優(yōu)點(diǎn)能夠更明顯易懂,以下特舉本發(fā)明的【具體實(shí)施方式】。
      【專利附圖】

      【附圖說明】
      [0033]通過閱讀下文優(yōu)選實(shí)施方式的詳細(xì)描述,各種其他的優(yōu)點(diǎn)和益處對(duì)于本領(lǐng)域普通技術(shù)人員將變得清楚明了。附圖僅用于示出優(yōu)選實(shí)施方式的目的,而并不認(rèn)為是對(duì)本發(fā)明的限制。而且在整個(gè)附圖中,用相同的參考符號(hào)表示相同的部件。在附圖中:
      [0034]圖1示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的對(duì)瀏覽器下載文件的保護(hù)方法的流程圖;
      [0035]圖2示出了根據(jù)本發(fā)明另一個(gè)實(shí)施例的對(duì)瀏覽器下載文件的保護(hù)方法的流程圖;
      [0036]圖3示出了根據(jù)本發(fā)明又一個(gè)實(shí)施例的對(duì)瀏覽器下載文件的保護(hù)方法的流程圖;
      [0037]圖4示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的對(duì)瀏覽器下載文件的保護(hù)裝置的結(jié)構(gòu)框圖;
      [0038]圖5示出了根據(jù)本發(fā)明另一個(gè)實(shí)施例的對(duì)瀏覽器下載文件的保護(hù)裝置的結(jié)構(gòu)框圖。
      【具體實(shí)施方式】
      [0039]下面將參照附圖更詳細(xì)地描述本公開的示例性實(shí)施例。雖然附圖中顯示了本公開的示例性實(shí)施例,然而應(yīng)當(dāng)理解,可以以各種形式實(shí)現(xiàn)本公開而不應(yīng)被這里闡述的實(shí)施例所限制。相反,提供這些實(shí)施例是為了能夠更透徹地理解本公開,并且能夠?qū)⒈竟_的范圍完整的傳達(dá)給本領(lǐng)域的技術(shù)人員。
      [0040]在本發(fā)明中,瀏覽器是基于沙箱技術(shù)而運(yùn)行。具體實(shí)現(xiàn)時(shí),可以是默認(rèn)為只要啟動(dòng)瀏覽器,就需要在沙箱內(nèi)進(jìn)行網(wǎng)頁瀏覽,此時(shí),只要接收到啟動(dòng)瀏覽器的指令,就相當(dāng)于接收到在沙箱內(nèi)進(jìn)行網(wǎng)頁瀏覽的指令。
      [0041]圖1示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的對(duì)瀏覽器下載文件的保護(hù)方法的流程圖。如圖1所示,該方法包括以下步驟:
      [0042]步驟S100,截獲瀏覽器進(jìn)程創(chuàng)建下載窗口的行為。
      [0043]下載窗口指用戶在瀏覽網(wǎng)頁時(shí)點(diǎn)擊下載鏈接時(shí)彈出的窗口。以chrome瀏覽器為例,瀏覽器會(huì)集成一個(gè)下載組件,用于實(shí)現(xiàn)在瀏覽器中發(fā)起的網(wǎng)頁資源類型是文件類型的下載。對(duì)于網(wǎng)頁中一個(gè)普通的鏈接,當(dāng)用戶點(diǎn)擊以后,渲染進(jìn)程會(huì)立即調(diào)用相應(yīng)的接口加載資源,該接口通過發(fā)IPC消息到瀏覽器主進(jìn)程,由瀏覽器主進(jìn)程統(tǒng)一進(jìn)行網(wǎng)絡(luò)請(qǐng)求。當(dāng)瀏覽器進(jìn)程接收到數(shù)據(jù)后,判定是否應(yīng)對(duì)資源進(jìn)行下載處理,若是則瀏覽器進(jìn)程啟動(dòng)下載組件創(chuàng)建下載窗口。
      [0044]本發(fā)明利用鉤子(hook)函數(shù)進(jìn)行截獲瀏覽器進(jìn)程創(chuàng)建窗口。hook是一種回調(diào)函數(shù),也可以說是系統(tǒng)提供的一種機(jī)制,可以在信息到達(dá)其他進(jìn)程之前將信息攔截和處理。hook機(jī)制允許應(yīng)用程序截獲并處理發(fā)往指定窗口的消息或特定事件。本發(fā)明的保護(hù)裝置利用hook機(jī)制,用于截獲瀏覽器進(jìn)程創(chuàng)建窗口。
      [0045]步驟S110,接管下載窗口對(duì)應(yīng)的窗口過程,并在瀏覽器進(jìn)程根據(jù)用戶在下載窗口中觸發(fā)的命令將文件下載到緩存文件夾之后,將緩存文件夾的文件復(fù)制到指定的本地文件夾或運(yùn)行緩存文件夾中的文件。
      [0046]在現(xiàn)有技術(shù)中,瀏覽器進(jìn)程根據(jù)用戶下載文件的命令將文件下載到緩存文件夾,而本發(fā)明通過接管下載窗口對(duì)應(yīng)的窗口過程,可以獲知用戶通過下載窗口執(zhí)行的任何操作,并在瀏覽器進(jìn)程根據(jù)用戶下載文件的命令將文件下載到緩存文件夾之后,將緩存文件夾的文件復(fù)制到指定的本地文件夾或運(yùn)行緩存文件夾中的文件,從而實(shí)現(xiàn)將文件保存到真實(shí)系統(tǒng)上或在真實(shí)系統(tǒng)上運(yùn)行。
      [0047]根據(jù)本發(fā)明上述實(shí)施例提供的方法,截獲瀏覽器進(jìn)程創(chuàng)建下載窗口的行為;接管下載窗口對(duì)應(yīng)的窗口過程,瀏覽器進(jìn)程根據(jù)用戶在下載窗口中觸發(fā)的命令將文件下載到緩存文件夾之后,將緩存文件夾的文件復(fù)制到指定的本地文件夾或運(yùn)行緩存文件夾中的文件。由于瀏覽器是基于沙箱技術(shù)而運(yùn)行,通過截獲瀏覽器進(jìn)程創(chuàng)建下載窗口的行為并接管下載窗口對(duì)應(yīng)的窗口過程可以準(zhǔn)確獲知用戶的操作,在用戶在下載窗口中觸發(fā)的命令將文件下載到緩存文件夾之后,將緩存文件夾的文件復(fù)制到指定的本地文件夾或運(yùn)行緩存文件夾中的文件,這樣在瀏覽器程序退出后,下載文件也會(huì)永久保存在本地文件夾中或者在真實(shí)系統(tǒng)上運(yùn)行,而且也不會(huì)影響瀏覽器在沙箱中運(yùn)行的原有機(jī)制。
      [0048]圖2示出了根據(jù)本發(fā)明另一個(gè)實(shí)施例的對(duì)瀏覽器下載文件的保護(hù)方法的流程圖。如圖2所示,該方法包括以下步驟:
      [0049]步驟S200,判斷系統(tǒng)是否啟用下載文件的保護(hù)功能,若是,則執(zhí)行步驟S210。
      [0050]本發(fā)明提供的對(duì)瀏覽器下載文件的保護(hù)功能是一種用戶可以選擇是否啟用的功能,在用戶選擇啟用的前提下,執(zhí)行本實(shí)施例提供的方法。
      [0051]本發(fā)明基于上網(wǎng)沙箱進(jìn)行網(wǎng)頁瀏覽。上網(wǎng)沙箱用來隔離上網(wǎng)環(huán)境,可以指定一個(gè)目錄是下載目錄,在這個(gè)目錄當(dāng)中的內(nèi)容會(huì)漏沙,其他的本地文檔文件都是默認(rèn)不可訪問的(主要根據(jù)后綴進(jìn)行判定,也可以根據(jù)需要進(jìn)行配置),該沙箱可以聯(lián)網(wǎng),允許訪問網(wǎng)絡(luò)。
      [0052]沙箱部分需要一個(gè)配置界面來對(duì)程序開啟沙箱支持,并可以配置沙箱的參數(shù)。內(nèi)容記錄在一個(gè)配置文件當(dāng)中,由沙箱引擎讀取、解析和使用。
      [0053]步驟S210,截獲瀏覽器進(jìn)程創(chuàng)建對(duì)話窗口的行為。
      [0054]創(chuàng)建對(duì)話窗口的行為指用戶除了瀏覽網(wǎng)頁之外進(jìn)行的點(diǎn)擊操作而彈出窗口的行為。例如,用戶在使用瀏覽器瀏覽網(wǎng)頁時(shí),想要觀看瀏覽的網(wǎng)頁中存在一個(gè)視頻,而如果要播放該視頻,需要首先下載并安裝一個(gè)插件之后才可以,此時(shí),瀏覽器進(jìn)程就可能會(huì)產(chǎn)生創(chuàng)建對(duì)話窗口的行為。[0055]在瀏覽器進(jìn)程中,具體通過執(zhí)行CreateDialogParam函數(shù)用于創(chuàng)建對(duì)話窗口,并且CreateDialogParam函數(shù)可向?yàn)g覽器進(jìn)程傳輸資源標(biāo)識(shí)。CreateDialogParam函數(shù)根據(jù)對(duì)話框模板資源創(chuàng)建一個(gè)無模式的對(duì)話框,在顯示對(duì)話框之前,函數(shù)把一個(gè)應(yīng)用程序定義的值作為WM_INITDIALOG消息IParam參數(shù)傳到對(duì)話框過程,應(yīng)用程序可用此值來初始化對(duì)話框控制。
      [0056]在啟動(dòng)瀏覽器進(jìn)程后,本發(fā)明向沙箱中注入名為SXIN.dll的進(jìn)程,用于監(jiān)控瀏覽器進(jìn)程中創(chuàng)建對(duì)話窗口的行為。具體地,SXI N.dll進(jìn)程hook上述CreateDialogParam函數(shù),并根據(jù)CreateDialogParam函數(shù)傳輸?shù)膮?shù)得到對(duì)話窗口的資源標(biāo)識(shí)。
      [0057]步驟S220,根據(jù)對(duì)話窗口的資源標(biāo)識(shí)確定對(duì)話窗口是否為下載窗口,若是,則執(zhí)行步驟S230 ;否則執(zhí)行步驟S210。
      [0058]下載窗口指用戶在瀏覽網(wǎng)頁時(shí)點(diǎn)擊下載鏈接時(shí)彈出的窗口。具體地,用戶點(diǎn)擊下載該插件的下載鏈接,瀏覽器會(huì)彈出一個(gè)下載窗口,在chrome瀏覽器中該下載窗口為下載資源管理器。在步驟S210之后,截獲一對(duì)話窗口,通過判定所截獲的對(duì)話窗口的資源標(biāo)識(shí)是否與chrome瀏覽器的下載窗口的資源標(biāo)識(shí)一致,來確定對(duì)話窗口是否為下載窗口。其中,該下載窗口的資源標(biāo)識(shí)可以是但不限于ID。
      [0059]步驟S230,接管下載窗口對(duì)應(yīng)的窗口過程,截獲用戶在下載窗口中觸發(fā)的下載文件的命令。
      [0060]由于系統(tǒng)開啟了盾甲保護(hù)功能,在判定步驟S220中的對(duì)話窗口為下載窗口之后,實(shí)現(xiàn)盾甲保護(hù)功能的裝置接管下載窗口對(duì)應(yīng)的窗口過程,用戶通過下載窗口執(zhí)行的任何操作都被接管。這樣,若用戶點(diǎn)擊下載按鈕,裝置獲知用戶下載文件的命令。
      [0061]步驟S240,瀏覽器進(jìn)程根據(jù)下載文件的命令將文件下載到緩存文件夾。
      [0062]步驟S250,判斷文件在本地文件夾中是否存在,若是則執(zhí)行步驟S260,若否則執(zhí)行步驟S270。
      [0063]通過查詢比對(duì)本地文件夾中的文件名與下載到緩存文件夾中的文件名是否相同來判斷文件在本地文件夾中是否存在。
      [0064]步驟S260,提示用戶是否覆蓋本地文件夾中存在的文件,若用戶選擇覆蓋本地文件夾中存在的文件,則執(zhí)行步驟S270 ;若用戶選擇不覆蓋本地文件夾中存在的文件,則方法結(jié)束。
      [0065]若步驟S250中判斷本地文件夾中存在該文件,則以彈出框的形式提示用戶是否覆蓋本地文件夾中文件。
      [0066]步驟S270,將緩存文件夾的文件復(fù)制到指定的本地文件夾。
      [0067]舉例來說,將保存在緩存文件夾的下載插件復(fù)制到指定的本地文件夾。
      [0068]步驟S280,通過接管下載窗口對(duì)應(yīng)的窗口過程,截獲用戶在下載窗口中觸發(fā)的運(yùn)行文件的命令。
      [0069]下載完成后會(huì)繼續(xù)以下載窗口的形式提示用戶下載已完成,用戶根據(jù)提示可以選擇運(yùn)行該文件。當(dāng)用戶選擇運(yùn)行文件時(shí),SXIN.dll進(jìn)程可以截獲用戶運(yùn)行文件的命令。
      [0070]步驟S290,調(diào)用非自保進(jìn)程運(yùn)行本地文件夾中的文件。
      [0071]在本步驟中,用戶運(yùn)行文件的命令包括但不限于安裝文件。若用戶點(diǎn)擊運(yùn)行文件,則啟動(dòng)非自保進(jìn)程,即第三方程序,將安裝參數(shù)傳給第三方程序,由第三方程序來運(yùn)行。本方法利用非自保進(jìn)程而不是自保進(jìn)程執(zhí)行運(yùn)行文件的操作,這是因?yàn)樽员_M(jìn)程是實(shí)現(xiàn)盾甲保護(hù)功能的裝置的一個(gè)核心模塊,為了避免裝置及整個(gè)計(jì)算機(jī)系統(tǒng)受到病毒或惡意程序的侵害,在實(shí)現(xiàn)盾甲保護(hù)功能的裝置中添加了非自保進(jìn)程。本方法在啟動(dòng)非自保進(jìn)程運(yùn)行文件的過程中,可以同時(shí)監(jiān)控文件的運(yùn)行過程,一旦發(fā)現(xiàn)用戶點(diǎn)擊運(yùn)行的文件是惡意程序,則直接中斷運(yùn)行,并對(duì)復(fù)制到本地文件夾的文件進(jìn)行查殺處理,從而不會(huì)對(duì)裝置及計(jì)算機(jī)系統(tǒng)產(chǎn)生影響,避免自保進(jìn)程根據(jù)其監(jiān)控規(guī)則而放行一些文件。
      [0072]舉例來說,實(shí)現(xiàn)盾甲保護(hù)功能的裝置將瀏覽器緩存文件中的插件復(fù)制到本地文件夾之后,用戶點(diǎn)擊安裝該插件,此時(shí)裝置啟動(dòng)第三方程序,并將安裝參數(shù)傳給第三方程序,由第三方程序安裝該插件。
      [0073]可選地,在將緩存文件中的文件復(fù)制到指定的本地文件夾之后,本發(fā)明實(shí)施例還可以截獲用戶在下載窗口執(zhí)行的打開文件夾的窗口行為,執(zhí)行打開本地文件夾的操作。
      [0074]在上述實(shí)施例中,SXIN.dll進(jìn)程用于截獲創(chuàng)建對(duì)話窗口的行為,在截獲創(chuàng)建對(duì)話窗口的行為之后,由接管進(jìn)程接管窗口過程,接管進(jìn)程可以通過調(diào)用來啟動(dòng)非自保進(jìn)程實(shí)現(xiàn)瀏覽器保護(hù)。可選地,SXIN.dll進(jìn)程也可直接與非自保進(jìn)程之間進(jìn)行一定的通訊交互。
      [0075]根據(jù)本發(fā)明上述實(shí)施例提供的方法,判斷系統(tǒng)是否啟用下載文件的保護(hù)功能,若是,則截獲瀏覽器進(jìn)程創(chuàng)建對(duì)話窗口的行為,根據(jù)對(duì)話窗口的資源標(biāo)識(shí)確定對(duì)話窗口是否為下載窗口,若是則進(jìn)行接管下載窗口對(duì)應(yīng)的窗口過程,截獲用戶在下載窗口中觸發(fā)的下載文件的命令,瀏覽器進(jìn)程根據(jù)用戶在下載窗口中觸發(fā)的下載文件的命令將文件下載到緩存文件夾之后,判斷文件在本地文件夾中是否存在,在判定文件在本地文件夾中存在的情況下,提示用戶是否覆蓋本地文件夾中存在的文件,在用戶選擇覆蓋本地文件夾中的文件后,將緩存文件夾的文件復(fù)制到指定的本地文件夾,調(diào)用非自保進(jìn)程運(yùn)行本地文件夾中的文件。通過啟用下載文件的保護(hù)功能,可以防止漏洞對(duì)系統(tǒng)造成損害,截獲瀏覽器進(jìn)程創(chuàng)建下載窗口的行為并接管下載窗口對(duì)應(yīng)的窗口過程可以使本發(fā)明提供的裝置準(zhǔn)確獲知用戶的操作,根據(jù)用戶在下載窗口中觸發(fā)的下載文件的命令將文件下載到緩存文件夾之后,本實(shí)施例將緩存文件夾的文件復(fù)制到指定的本地文件夾,這樣在瀏覽器程序退出后,下載文件也會(huì)永久保存在本地文件夾中,而且也不會(huì)影響瀏覽器在沙箱中運(yùn)行的原有機(jī)制。采用非自保進(jìn)程運(yùn)行復(fù)制到本地文件夾的文件使得啟用的下載文件的保護(hù)功能的裝置免于惡意程序的攻擊,來保證整個(gè)計(jì)算機(jī)系統(tǒng)的安全。
      [0076]圖3示出了根據(jù)本發(fā)明又一個(gè)實(shí)施例的對(duì)瀏覽器下載文件的保護(hù)方法的流程圖。圖3所示實(shí)施例與圖2所示實(shí)施例不同之處在于,該方法針對(duì)運(yùn)行文件的命令進(jìn)行瀏覽器下載文件的保護(hù),該方法包括如下步驟:
      [0077]步驟S300,判斷系統(tǒng)是否啟用下載文件的保護(hù)功能,若是,則執(zhí)行步驟S310。
      [0078]步驟S310,截獲瀏覽器進(jìn)程創(chuàng)建對(duì)話窗口的行為。
      [0079]步驟S320,根據(jù)對(duì)話窗口的資源標(biāo)識(shí)確定對(duì)話窗口是否為下載窗口,若是,則執(zhí)行步驟S330 ;否則執(zhí)行步驟S310。
      [0080]其中,步驟S300-步驟S320的具體執(zhí)行方式與圖2所示實(shí)施例的步驟S200-S220相同,在此不再贅述。
      [0081]步驟S330,接管下載窗口對(duì)應(yīng)的窗口過程,截獲用戶在下載窗口中觸發(fā)的運(yùn)行文件的命令。[0082]由于系統(tǒng)開啟了盾甲保護(hù)功能,在判定步驟S320中的對(duì)話窗口為下載窗口之后,實(shí)現(xiàn)盾甲保護(hù)功能的裝置接管下載窗口對(duì)應(yīng)的窗口過程,用戶通過下載窗口執(zhí)行的任何操作都被接管。這樣,若用戶點(diǎn)擊運(yùn)行按鈕,裝置獲知用戶運(yùn)行文件的命令。
      [0083]在截獲用戶在下載窗口中觸發(fā)的運(yùn)行文件的命令之后,瀏覽器進(jìn)程根據(jù)用戶在下載窗口中觸發(fā)的命令將文件下載到緩存文件夾。
      [0084]步驟S340,根據(jù)運(yùn)行文件的命令,調(diào)用非自保進(jìn)程運(yùn)行緩存文件夾中的文件。
      [0085]本步驟與圖2所示實(shí)施例的步驟S290類似,再此不再贅述。
      [0086]根據(jù)本發(fā)明上述實(shí)施例提供的方法,判斷系統(tǒng)是否啟用下載文件的保護(hù)功能,若是,則截獲瀏覽器進(jìn)程創(chuàng)建對(duì)話窗口的行為,根據(jù)對(duì)話窗口的資源標(biāo)識(shí)確定對(duì)話窗口是否為下載窗口,若是則接管下載窗口對(duì)應(yīng)的窗口過程,截獲用戶在下載窗口中觸發(fā)的運(yùn)行文件的命令,根據(jù)運(yùn)行文件的命令,調(diào)用非自保進(jìn)程運(yùn)行緩存文件夾中的文件。通過啟用下載文件的保護(hù)功能,可以防止漏洞對(duì)系統(tǒng)造成損害,接管下載窗口對(duì)應(yīng)的窗口過程可以使本發(fā)明提供的裝置準(zhǔn)確獲知用戶的操作,運(yùn)行的文件包括但不限于.exe文件,通過啟動(dòng)非自保進(jìn)程在真實(shí)系統(tǒng)上運(yùn)行緩存文件夾中的文件,而且也不會(huì)影響瀏覽器在沙箱中運(yùn)行的原有機(jī)制,采用非自保進(jìn)程運(yùn)行文件使得啟用的下載文件的保護(hù)功能的裝置免于惡意程序的攻擊,來保證整個(gè)計(jì)算機(jī)系統(tǒng)的安全。
      [0087]圖4示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的對(duì)瀏覽器下載文件的保護(hù)裝置的結(jié)構(gòu)圖。如圖4所示,該裝置包括:第一判斷模塊400、截獲模塊410、接管模塊420、運(yùn)行模塊430。
      [0088]第一判斷模塊400,適于判斷系統(tǒng)是否啟用下載文件的保護(hù)功能,在判斷出系統(tǒng)啟用下載文件的保護(hù)功能的情況下,觸發(fā)截獲模塊進(jìn)行截獲瀏覽器進(jìn)程創(chuàng)建對(duì)話窗口的行為。該第一判斷模塊400為本實(shí)施例的可選模塊。
      [0089]本發(fā)明中對(duì)瀏覽器下載文件的保護(hù)功能可以是盾甲保護(hù)中的一個(gè)子功能。盾甲保護(hù)具有程序加固引擎、補(bǔ)天熱補(bǔ)丁引擎、關(guān)鍵程序隔離引擎功能,程序加固引擎具體包括:設(shè)置界面,主要負(fù)責(zé)產(chǎn)品配置;常駐模塊,主要負(fù)責(zé)彈窗、程序初始化等;安裝打包,主要負(fù)責(zé)安裝程序。程序加固引擎主要使用內(nèi)置的主動(dòng)防御引擎加固敏感應(yīng)用程序,防止漏洞攻擊。補(bǔ)天熱補(bǔ)丁引擎主要提供最全面的熱補(bǔ)丁防護(hù)。關(guān)鍵程序隔離引擎可以對(duì)重要程序和數(shù)據(jù)進(jìn)行隔離,防止漏洞對(duì)系統(tǒng)造成損害。盾甲保護(hù)的三個(gè)功能是相互獨(dú)立的,本發(fā)明主要涉及關(guān)鍵程序隔離引擎功能。關(guān)鍵程序隔離引擎功能結(jié)合沙箱技術(shù),對(duì)關(guān)鍵進(jìn)程進(jìn)行隔離。
      [0090]本發(fā)明基于上網(wǎng)沙箱進(jìn)行網(wǎng)頁瀏覽。上網(wǎng)沙箱用來隔離上網(wǎng)環(huán)境,可以指定一個(gè)目錄是下載目錄,在這個(gè)目錄當(dāng)中的內(nèi)容會(huì)漏沙,其他的本地文檔文件都是默認(rèn)不可訪問的(主要根據(jù)后綴進(jìn)行判定,也可以根據(jù)需要進(jìn)行配置),該沙箱可以聯(lián)網(wǎng),允許訪問網(wǎng)絡(luò)。
      [0091]沙箱部分需要一個(gè)配置界面來對(duì)程序開啟沙箱支持,并可以配置沙箱的參數(shù)。內(nèi)容記錄在一個(gè)配置文件當(dāng)中,由沙箱引擎讀取、解析和使用。
      [0092]截獲模塊410,適于截獲瀏覽器進(jìn)程創(chuàng)建下載窗口的行為。
      [0093]創(chuàng)建對(duì)話窗口的行為指用戶除了瀏覽網(wǎng)頁之外進(jìn)行的點(diǎn)擊操作而彈出窗口的行為。例如,用戶在使用瀏覽器瀏覽網(wǎng)頁時(shí),想要觀看瀏覽的網(wǎng)頁中存在一個(gè)視頻,而如果要播放該視頻,需要首先下載并安裝一個(gè)插件之后才可以,此時(shí),瀏覽器進(jìn)程就可能會(huì)產(chǎn)生創(chuàng)建對(duì)話窗口的行為。
      [0094]在瀏覽器進(jìn)程中,具體通過執(zhí)行CreateDialogParam函數(shù)用于創(chuàng)建對(duì)話窗口,并且CreateDialogParam函數(shù)可向?yàn)g覽器進(jìn)程傳輸資源標(biāo)識(shí)。該CreateDialogParam函數(shù)根據(jù)對(duì)話框模板資源創(chuàng)建一個(gè)無模式的對(duì)話框,在顯示對(duì)話框之前,函數(shù)把一個(gè)應(yīng)用程序定義的值作為WM_INITDIALOG消息IParam參數(shù)傳到對(duì)話框過程,應(yīng)用程序可用此值來初始化對(duì)話框控制。
      [0095]在啟動(dòng)瀏覽器進(jìn)程后,本發(fā)明向沙箱中注入名為SXIN.dll的進(jìn)程,即截獲模塊對(duì)應(yīng)的進(jìn)程,用于監(jiān)控瀏覽器進(jìn)程中創(chuàng)建對(duì)話窗口的行為。具體地,SXIN.dll進(jìn)程hook上述CreateDialogParam函數(shù),并根據(jù)CreateDialogParam函數(shù)傳輸?shù)膮?shù)得到對(duì)話窗口的資源標(biāo)識(shí)。
      [0096]具體地,截獲模塊410適于截獲瀏覽器進(jìn)程創(chuàng)建對(duì)話窗口的行為,根據(jù)對(duì)話窗口的資源標(biāo)識(shí)確定對(duì)話窗口是否為下載窗口。
      [0097]下載窗口指用戶在瀏覽網(wǎng)頁時(shí)點(diǎn)擊下載鏈接時(shí)彈出的窗口。具體地,用戶點(diǎn)擊下載該插件的下載鏈接,瀏覽器會(huì)彈出一個(gè)下載窗口,在chrome瀏覽器中該下載窗口為下載資源管理器。截獲模塊410截獲了一對(duì)話窗口,通過判定所截獲的對(duì)話窗口的資源標(biāo)識(shí)是否與chrome瀏覽器的下載窗口的資源標(biāo)識(shí)一致,來確定對(duì)話窗口是否為下載窗口。其中,該下載窗口的資源標(biāo)識(shí)可以是但不限于ID。
      [0098]接管模塊420,適于接管下載窗口對(duì)應(yīng)的窗口過程,并在瀏覽器進(jìn)程根據(jù)用戶在下載窗口中觸發(fā)的命令將文件下載到緩存文件夾之后,將緩存文件夾的文件復(fù)制到指定的本地文件夾。
      [0099]接管模塊420具體適于通過接管下載窗口對(duì)應(yīng)的窗口過程,截獲用戶在下載窗口中觸發(fā)的下載文件的命令;根據(jù)下載文件的命令,將緩存文件夾的文件復(fù)制到指定的本地文件夾。
      [0100]由于系統(tǒng)開啟了盾甲保護(hù)功能,在截獲模塊410截獲的的對(duì)話窗口為下載窗口之后,實(shí)現(xiàn)盾甲保護(hù)功能的裝置接管下載窗口對(duì)應(yīng)的窗口過程,用戶通過下載窗口執(zhí)行的任何操作都被接管。這樣,若用戶點(diǎn)擊下載按鈕,裝置獲知用戶下載文件的命令。
      [0101]接管模塊420進(jìn)一步適于通過接管下載窗口對(duì)應(yīng)的窗口過程,截獲用戶在下載窗口中觸發(fā)的運(yùn)行文件的命令。
      [0102]運(yùn)行模塊430,適于在接管模塊的調(diào)用下,啟動(dòng)非自保進(jìn)程運(yùn)行本地文件夾中的文件。
      [0103]在本模塊中,用戶運(yùn)行文件的命令包括但不限于安裝文件。若用戶點(diǎn)擊運(yùn)行文件,則啟動(dòng)非自保進(jìn)程,即第三方程序,將安裝參數(shù)傳給第三方程序,由第三方程序來運(yùn)行。
      [0104]舉例來說,實(shí)現(xiàn)盾甲保護(hù)功能的裝置將瀏覽器緩存文件中的插件復(fù)制到本地文件夾之后,用戶點(diǎn)擊安裝該插件,此時(shí)裝置啟動(dòng)第三方進(jìn)程,并將安裝參數(shù)傳給第三方程序,由第三方程序安裝該插件。
      [0105]有時(shí)用戶已經(jīng)下載了某文件,但忘記已下載過該文件,為了提示用戶已經(jīng)下載該文件是否覆蓋本地文件夾中的文件,該裝置還包括:第二判斷模塊440、提示模塊450。
      [0106]第二判斷模塊430,適于判斷文件在本地文件夾中是否存在。
      [0107]通過查詢比對(duì)本地文件夾中的文件名與下載到緩存文件夾中的文件名是否相同來判斷文件在本地文件夾中是否存在。
      [0108]提示模塊440,適于在第二判斷模塊430判定文件在本地文件夾存在的情況下,提示用戶是否覆蓋本地文件夾中存在的文件。
      [0109]若第二判斷模塊430判斷本地文件夾中存在該文件,則以彈出框的形式提示用戶是否覆蓋本地文件夾中文件。
      [0110]接管模塊420進(jìn)一步適于在用戶選擇覆蓋后,將緩存文件夾的文件復(fù)制到本地文件夾。
      [0111]根據(jù)本發(fā)明上述實(shí)施例提供的裝置,判斷系統(tǒng)是否啟用下載文件的保護(hù)功能,若是,則由截獲模塊截獲瀏覽器進(jìn)程創(chuàng)建對(duì)話窗口的行為,根據(jù)對(duì)話窗口的資源標(biāo)識(shí)確定對(duì)話窗口是否為下載窗口,若是則由接管模塊接管下載窗口對(duì)應(yīng)的窗口過程,并在瀏覽器進(jìn)程根據(jù)用戶在下載窗口中觸發(fā)的命令將文件下載到緩存文件夾之后,第二判斷模塊判斷文件在本地文件夾中是否存在,在判定文件在本地文件夾中存在的情況下,提示用戶是否覆蓋本地文件夾中存在的文件,在用戶選擇覆蓋后,接管模塊將緩存文件夾的文件復(fù)制到指定的本地文件夾。通過啟用下載文件的保護(hù)功能,可以防止漏洞對(duì)系統(tǒng)造成損害,截獲瀏覽器進(jìn)程創(chuàng)建下載窗口的行為并接管下載窗口的對(duì)應(yīng)的窗口過程可以使本發(fā)明提供的裝置準(zhǔn)確獲知用戶的操作,根據(jù)用戶在下載窗口中觸發(fā)的下載文件的命令將文件下載到緩存文件夾之后,本實(shí)施例將緩存文件夾的文件復(fù)制到指定的本地文件夾,這樣在瀏覽器程序退出后,下載文件也會(huì)永久保存在本地文件夾中,而且也不會(huì)影響瀏覽器在沙箱中運(yùn)行的原有機(jī)制,采用非自保進(jìn)程運(yùn)行復(fù)制到本地文件夾的文件使得啟用的下載文件的保護(hù)功能的裝置免于惡意程序的攻擊,來保證整個(gè)計(jì)算機(jī)系統(tǒng)的安全。
      [0112]圖5示出了根據(jù)本發(fā)明另一個(gè)實(shí)施例的對(duì)瀏覽器下載文件的保護(hù)裝置的結(jié)構(gòu)圖。圖5所示的實(shí)施例與圖4所示的實(shí)施例的不同之處在于,該裝置針對(duì)運(yùn)行文件的命令進(jìn)行瀏覽器下載文件的保護(hù)。該裝置包括:第一判斷模塊500、截獲模塊510、接管模塊520、運(yùn)行模塊530。
      [0113]第一判斷模塊500,適于判斷系統(tǒng)是否啟用下載文件的保護(hù)功能,在判斷出系統(tǒng)啟用下載文件的保護(hù)功能的情況下,觸發(fā)截獲模塊進(jìn)行截獲瀏覽器進(jìn)程創(chuàng)建對(duì)話窗口的行為。其中第一判斷模塊500為本實(shí)施例的可選模塊。
      [0114]截獲模塊510,適于截獲瀏覽器進(jìn)程創(chuàng)建下載窗口的行為。
      [0115]接管模塊520,適于接管下載窗口對(duì)應(yīng)的窗口過程。
      [0116]接管模塊520具體適于:通過接管下載窗口對(duì)應(yīng)的窗口過程,截獲用戶在下載窗口中觸發(fā)的運(yùn)行文件的命令。
      [0117]在瀏覽器進(jìn)程根據(jù)用戶在下載窗口中觸發(fā)的命令將文件下載到緩存文件夾之后,接管模塊520調(diào)用運(yùn)行模塊530。
      [0118]運(yùn)行模塊530,適于在接管模塊520的調(diào)用下,啟動(dòng)非自保進(jìn)程運(yùn)行緩存文件夾中的文件。
      [0119]根據(jù)本發(fā)明上述實(shí)施例提供的裝置,判斷系統(tǒng)是否啟用下載文件的保護(hù)功能,若是,則由截獲模塊截獲瀏覽器進(jìn)程創(chuàng)建對(duì)話窗口的行為,根據(jù)對(duì)話窗口的資源標(biāo)識(shí)確定對(duì)話窗口是否為下載窗口,若是則接管下載窗口對(duì)應(yīng)的窗口過程,在接管模塊的調(diào)用下,啟動(dòng)非自保進(jìn)程運(yùn)行緩存文件夾中的文件。通過啟用下載文件的保護(hù)功能,可以防止漏洞對(duì)系統(tǒng)造成損害,接管下載窗口對(duì)應(yīng)的窗口可以使本發(fā)明提供的裝置準(zhǔn)確獲知用戶的操作,運(yùn)行的文件包括但不限于.exe文件,通過啟動(dòng)非自保進(jìn)程在真實(shí)系統(tǒng)上運(yùn)行緩存文件夾中的文件,而且也不會(huì)影響瀏覽器在沙箱中運(yùn)行的原有機(jī)制,采用非自保進(jìn)程運(yùn)行文件使得啟用的下載文件的保護(hù)功能的裝置免于惡意程序的攻擊,來保證整個(gè)計(jì)算機(jī)系統(tǒng)的安全。
      [0120]在此提供的算法和顯示不與任何特定計(jì)算機(jī)、虛擬系統(tǒng)或者其它設(shè)備固有相關(guān)。各種通用系統(tǒng)也可以與基于在此的示教一起使用。根據(jù)上面的描述,構(gòu)造這類系統(tǒng)所要求的結(jié)構(gòu)是顯而易見的。此外,本發(fā)明也不針對(duì)任何特定編程語言。應(yīng)當(dāng)明白,可以利用各種編程語言實(shí)現(xiàn)在此描述的本發(fā)明的內(nèi)容,并且上面對(duì)特定語言所做的描述是為了披露本發(fā)明的最佳實(shí)施方式。
      [0121]在此處所提供的說明書中,說明了大量具體細(xì)節(jié)。然而,能夠理解,本發(fā)明的實(shí)施例可以在沒有這些具體細(xì)節(jié)的情況下實(shí)踐。在一些實(shí)例中,并未詳細(xì)示出公知的方法、結(jié)構(gòu)和技術(shù),以便不模糊對(duì)本說明書的理解。
      [0122]類似地,應(yīng)當(dāng)理解,為了精簡(jiǎn)本公開并幫助理解各個(gè)發(fā)明方面中的一個(gè)或多個(gè),在上面對(duì)本發(fā)明的示例性實(shí)施例的描述中,本發(fā)明的各個(gè)特征有時(shí)被一起分組到單個(gè)實(shí)施例、圖、或者對(duì)其的描述中。然而,并不應(yīng)將該公開的方法解釋成反映如下意圖:即所要求保護(hù)的本發(fā)明要求比在每個(gè)權(quán)利要求中所明確記載的特征更多的特征。更確切地說,如下面的權(quán)利要求書所反映的那樣,發(fā)明方面在于少于前面公開的單個(gè)實(shí)施例的所有特征。因此,遵循【具體實(shí)施方式】的權(quán)利要求書由此明確地并入該【具體實(shí)施方式】,其中每個(gè)權(quán)利要求本身都作為本發(fā)明的單獨(dú)實(shí)施例。
      [0123]本領(lǐng)域那些技術(shù)人員可以理解,可以對(duì)實(shí)施例中的設(shè)備中的模塊進(jìn)行自適應(yīng)性地改變并且把它們?cè)O(shè)置在與該實(shí)施例不同的一個(gè)或多個(gè)設(shè)備中。可以把實(shí)施例中的模塊或單元或組件組合成一個(gè)模塊或單元或組件,以及此外可以把它們分成多個(gè)子模塊或子單元或子組件。除了這樣的特征和/或過程或者單元中的至少一些是相互排斥之外,可以采用任何組合對(duì)本說明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的所有特征以及如此公開的任何方法或者設(shè)備的所有過程或單元進(jìn)行組合。除非另外明確陳述,本說明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的每個(gè)特征可以由提供相同、等同或相似目的的替代特征來代替。
      [0124]此外,本領(lǐng)域的技術(shù)人員能夠理解,盡管在此所述的一些實(shí)施例包括其它實(shí)施例中所包括的某些特征而不是其它特征,但是不同實(shí)施例的特征的組合意味著處于本發(fā)明的范圍之內(nèi)并且形成不同的實(shí)施例。例如,在下面的權(quán)利要求書中,所要求保護(hù)的實(shí)施例的任意之一都可以以任意的組合方式來使用。
      [0125]本發(fā)明的各個(gè)部件實(shí)施例可以以硬件實(shí)現(xiàn),或者以在一個(gè)或者多個(gè)處理器上運(yùn)行的軟件模塊實(shí)現(xiàn),或者以它們的組合實(shí)現(xiàn)。本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,可以在實(shí)踐中使用微處理器或者數(shù)字信號(hào)處理器(DSP )來實(shí)現(xiàn)根據(jù)本發(fā)明實(shí)施例的對(duì)瀏覽器下載文件的保護(hù)設(shè)備中的一些或者全部部件的一些或者全部功能。本發(fā)明還可以實(shí)現(xiàn)為用于執(zhí)行這里所描述的方法的一部分或者全部的設(shè)備或者裝置程序(例如,計(jì)算機(jī)程序和計(jì)算機(jī)程序產(chǎn)品)。這樣的實(shí)現(xiàn)本發(fā)明的程序可以存儲(chǔ)在計(jì)算機(jī)可讀介質(zhì)上,或者可以具有一個(gè)或者多個(gè)信號(hào)的形式。這樣的信號(hào)可以從因特網(wǎng)網(wǎng)站上下載得到,或者在載體信號(hào)上提供,或者以任何其他形式提供。
      [0126]應(yīng)該注意的是上述實(shí)施例對(duì)本發(fā)明進(jìn)行說明而不是對(duì)本發(fā)明進(jìn)行限制,并且本領(lǐng)域技術(shù)人員在不脫離所附權(quán)利要求的范圍的情況下可設(shè)計(jì)出替換實(shí)施例。在權(quán)利要求中,不應(yīng)將位于括號(hào)之間的任何參考符號(hào)構(gòu)造成對(duì)權(quán)利要求的限制。單詞“包含”不排除存在未列在權(quán)利要求中的元件或步驟。位于元件之前的單詞“一”或“一個(gè)”不排除存在多個(gè)這樣的元件。本發(fā)明可以借助于包括有若干不同元件的硬件以及借助于適當(dāng)編程的計(jì)算機(jī)來實(shí)現(xiàn)。在列舉了若干裝置的單元權(quán)利要求中,這些裝置中的若干個(gè)可以是通過同一個(gè)硬件項(xiàng)來具體體現(xiàn)。單詞第一、第二、以及第三等的使用不表示任何順序??蓪⑦@些單詞解釋為名稱。
      [0127]本發(fā)明公開了:A1、一種對(duì)瀏覽器下載文件的保護(hù)方法,所述瀏覽器基于沙箱技術(shù)而運(yùn)行,所述方法包括:
      [0128]截獲瀏覽器進(jìn)程創(chuàng)建下載窗口的行為;
      [0129]接管所述下載窗口對(duì)應(yīng)的窗口過程,并在所述瀏覽器進(jìn)程根據(jù)用戶在所述下載窗口中觸發(fā)的命令將文件下載到緩存文件夾之后,將所述緩存文件夾的所述文件復(fù)制到指定的本地文件夾或運(yùn)行所述緩存文件夾中的文件。
      [0130]A2、根據(jù)Al所述的方法,其中,將所述緩存文件夾的所述文件復(fù)制到指定的本地文件夾具體包括:通過接管所述下載窗口對(duì)應(yīng)的窗口過程,截獲用戶在所述下載窗口中觸發(fā)的下載文件的命令;根據(jù)所述下載文件的命令,將所述緩存文件夾的所述文件復(fù)制到指定的本地文件夾。
      [0131]A3、根據(jù)Al所述的方法,其中,所述運(yùn)行所述緩存文件夾中的文件具體包括:通過接管所述下載窗口對(duì)應(yīng)的窗口過程,截獲用戶在所述下載窗口中觸發(fā)的運(yùn)行文件的命令;根據(jù)所述運(yùn)行文件的命令,運(yùn)行所述緩存文件夾中的文件。
      [0132]A4、根據(jù)A3所述的方法,其中,所述運(yùn)行所述緩存文件夾中的文件具體為:調(diào)用非自保進(jìn)程運(yùn)行所述緩存文件夾中的文件。
      [0133]A5、根據(jù)A2所述的方法,其中,在將所述緩存文件夾的所述文件復(fù)制到指定的本地文件夾之后進(jìn)一步包括:通過接管所述下載窗口對(duì)應(yīng)的窗口過程,截獲用戶在所述下載窗口中觸發(fā)的運(yùn)行文件的命令;調(diào)用非自保進(jìn)程運(yùn)行所述本地文件夾中的文件。
      [0134]A6、根據(jù)A1-A5任一項(xiàng)所述的方法,其中,所述截獲瀏覽器進(jìn)程創(chuàng)建下載窗口的行為進(jìn)一步包括:截獲瀏覽器進(jìn)程創(chuàng)建對(duì)話窗口的行為,根據(jù)所述對(duì)話窗口的資源標(biāo)識(shí)確定所述對(duì)話窗口是否為下載窗口。
      [0135]A7、根據(jù)A1-A6任一項(xiàng)所述的方法,其中,在所述截獲瀏覽器進(jìn)程創(chuàng)建對(duì)話窗口的行為之前還包括:判斷系統(tǒng)是否啟用下載文件的保護(hù)功能;
      [0136]在判斷出系統(tǒng)啟用下載文件的保護(hù)功能的情況下,進(jìn)行截獲瀏覽器進(jìn)程創(chuàng)建對(duì)話窗口的行為。
      [0137]AS、根據(jù)Al所述的方法,其中,在將所述緩存文件夾的所述文件復(fù)制到指定的本地文件夾之前還包括:判斷所述文件在本地文件夾中是否存在,若是則提示用戶是否覆蓋所述本地文件夾中存在的文件;
      [0138]在用戶選擇覆蓋所述本地文件夾中存在的文件之后,執(zhí)行將所述緩存文件夾的所述文件復(fù)制到指定的本地文件夾的步驟。
      [0139]本發(fā)明還公開了:B9、一種對(duì)瀏覽器下載文件的保護(hù)裝置,所述瀏覽器基于沙箱技術(shù)而運(yùn)行,所述裝置包括:
      [0140]截獲模塊,用于截獲瀏覽器進(jìn)程創(chuàng)建下載窗口的行為;[0141]接管模塊,用于接管所述下載窗口對(duì)應(yīng)的窗口過程,并在所述瀏覽器進(jìn)程根據(jù)用戶在所述下載窗口中觸發(fā)的命令將文件下載到緩存文件夾之后,將所述緩存文件夾的所述文件復(fù)制到指定的本地文件夾;
      [0142]運(yùn)行模塊,適于根據(jù)用戶在所述下載窗口中觸發(fā)的命令運(yùn)行所述緩存文件夾中的文件。
      [0143]B10、根據(jù)B9所述的裝置,其中,所述接管模塊具體適于:通過接管所述下載窗口對(duì)應(yīng)的窗口過程,截獲用戶在所述下載窗口中觸發(fā)的下載文件的命令;根據(jù)所述下載文件的命令,將所述緩存文件夾的所述文件復(fù)制到指定的本地文件夾。
      [0144]B11、根據(jù)B9所述的裝置,其中,所述接管模塊具體適于:通過接管所述下載窗口對(duì)應(yīng)的窗口過程,截獲用戶在所述下載窗口中觸發(fā)的運(yùn)行文件的命令。
      [0145]B12、根據(jù)Bll所述的裝置,其中,運(yùn)行模塊具體適于:在所述接管模塊的調(diào)用下,啟動(dòng)非自保進(jìn)程運(yùn)行所述緩存文件夾中的文件。
      [0146]B13、根據(jù)B12所述的裝置,其中,所述接管模塊進(jìn)一步適于:通過接管所述下載窗口對(duì)應(yīng)的窗口過程,截獲用戶在所述下載窗口中觸發(fā)的運(yùn)行文件的命令;
      [0147]所述運(yùn)行模塊還適于在所述接管模塊的調(diào)用下,啟動(dòng)非自保進(jìn)程運(yùn)行所述本地文件夾中的文件。
      [0148]B14、根據(jù)B9-B13任一項(xiàng)所述的裝置,其中,所述截獲模塊具體用于:截獲瀏覽器進(jìn)程創(chuàng)建對(duì)話窗口的行為,根據(jù)所述對(duì)話窗口的資源標(biāo)識(shí)確定所述對(duì)話窗口是否為下載窗□。
      [0149]B15、根據(jù)B9-B14任一項(xiàng)所述的裝置,其中,還包括:第一判斷模塊,用于判斷系統(tǒng)是否啟用下載文件的保護(hù)功能,在判斷出系統(tǒng)啟用下載文件的保護(hù)功能的情況下,觸發(fā)所述截獲模塊進(jìn)行截獲瀏覽器進(jìn)程創(chuàng)建對(duì)話窗口的行為。
      [0150]B16、根據(jù)B9所述的裝置,其中,還包括:第二判斷模塊,適于判斷所述文件在本地文件夾中是否存在;
      [0151]提示模塊,適于在所述第二判斷模塊判定所述文件在本地文件夾存在的情況下,提示用戶是否覆蓋所述本地文件夾中存在的文件;
      [0152]所述接管模塊進(jìn)一步適于在用戶選擇覆蓋后,將所述緩存文件夾的所述文件復(fù)制到所述本地文件夾。
      【權(quán)利要求】
      1.一種對(duì)瀏覽器下載文件的保護(hù)方法,所述瀏覽器基于沙箱技術(shù)而運(yùn)行,所述方法包括: 截獲瀏覽器進(jìn)程創(chuàng)建下載窗口的行為; 接管所述下載窗口對(duì)應(yīng)的窗口過程,并在所述瀏覽器進(jìn)程根據(jù)用戶在所述下載窗口中觸發(fā)的命令將文件下載到緩存文件夾之后,將所述緩存文件夾的所述文件復(fù)制到指定的本地文件夾或運(yùn)行所述緩存文件夾中的文件。
      2.根據(jù)權(quán)利要求1所述的方法,其中,將所述緩存文件夾的所述文件復(fù)制到指定的本地文件夾具體包括:通過接管所述下載窗口對(duì)應(yīng)的窗口過程,截獲用戶在所述下載窗口中觸發(fā)的下載文件的命令;根據(jù)所述下載文件的命令,將所述緩存文件夾的所述文件復(fù)制到指定的本地文件夾。
      3.根據(jù)權(quán)利要求1所述的方法,其中,所述運(yùn)行所述緩存文件夾中的文件具體包括:通過接管所述下載窗口對(duì)應(yīng)的窗口過程,截獲用戶在所述下載窗口中觸發(fā)的運(yùn)行文件的命令;根據(jù)所述運(yùn)行文件的命令,運(yùn)行所述緩存文件夾中的文件。
      4.根據(jù)權(quán)利要求3所述的方法,其中,所述運(yùn)行所述緩存文件夾中的文件具體為:調(diào)用非自保進(jìn)程運(yùn)行所述緩存文件夾中的文件。
      5.根據(jù)權(quán)利要求2所述的方法,其中,在將所述緩存文件夾的所述文件復(fù)制到指定的本地文件夾之后進(jìn)一步包括:通過接管所述下載窗口對(duì)應(yīng)的窗口過程,截獲用戶在所述下載窗口中觸發(fā)的運(yùn)行文件的命令;調(diào)用非自保進(jìn)程運(yùn)行所述本地文件夾中的文件。
      6.根據(jù)權(quán)利要求1-5任一項(xiàng)所述的方法,其中,所述截獲瀏覽器進(jìn)程創(chuàng)建下載窗口的行為進(jìn)一步包括:截獲瀏覽器進(jìn)程創(chuàng)建對(duì)話窗口的行為,根據(jù)所述對(duì)話窗口的資源標(biāo)識(shí)確定所述對(duì)話窗口是否為下載窗口。
      7.根據(jù)權(quán)利要求1-6任一項(xiàng)所述的方法,其中,在所述截獲瀏覽器進(jìn)程創(chuàng)建對(duì)話窗口的行為之前還包括:判斷系統(tǒng)是否啟用下載文件的保護(hù)功能; 在判斷出系統(tǒng)啟用下載文件的保護(hù)功能的情況下,進(jìn)行截獲瀏覽器進(jìn)程創(chuàng)建對(duì)話窗口的行為。
      8.根據(jù)權(quán)利要求1所述的方法,其中,在將所述緩存文件夾的所述文件復(fù)制到指定的本地文件夾之前還包括:判斷所述文件在本地文件夾中是否存在,若是則提示用戶是否覆蓋所述本地文件夾中存在的文件; 在用戶選擇覆蓋所述本地文件夾中存在的文件之后,執(zhí)行將所述緩存文件夾的所述文件復(fù)制到指定的本地文件夾的步驟。
      9.一種對(duì)瀏覽器下載文件的保護(hù)裝置,所述瀏覽器基于沙箱技術(shù)而運(yùn)行,所述裝置包括: 截獲模塊,用于截獲瀏覽器進(jìn)程創(chuàng)建下載窗口的行為; 接管模塊,用于接管所述下載窗口對(duì)應(yīng)的窗口過程,并在所述瀏覽器進(jìn)程根據(jù)用戶在所述下載窗口中觸發(fā)的命令將文件下載到緩存文件夾之后,將所述緩存文件夾的所述文件復(fù)制到指定的本地文件夾; 運(yùn)行模塊,適于根據(jù)用戶在所述下載窗口中觸發(fā)的命令運(yùn)行所述緩存文件夾中的文件。
      10.根據(jù)權(quán)利要求9所述的裝置,其中,所述接管模塊具體適于:通過接管所述下載窗口對(duì)應(yīng)的窗口過程,截獲用戶在所述下載窗口中觸發(fā)的下載文件的命令;根據(jù)所述下載文件的命令,將所述緩存文件夾的所述文件復(fù)制到指定的本地文件夾。
      【文檔編號(hào)】G06F21/53GK103916402SQ201410158238
      【公開日】2014年7月9日 申請(qǐng)日期:2014年4月18日 優(yōu)先權(quán)日:2014年4月18日
      【發(fā)明者】秦光遠(yuǎn), 張聰, 潘劍鋒, 董杰, 吳鵬 申請(qǐng)人:北京奇虎科技有限公司, 奇智軟件(北京)有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1