新四季網

一種基於雲安全攔截廣告程序的方法、裝置和系統的製作方法

2023-08-02 13:26:31

一種基於雲安全攔截廣告程序的方法、裝置和系統的製作方法
【專利摘要】本發明公開了一種基於雲安全攔截廣告程序的方法、裝置和系統,其中,方法包括:監控瀏覽器進程的創建行為;當監測到瀏覽器進程的創建請求時,獲取瀏覽器進程的父進程的信息;根據瀏覽器進程的父進程的信息,通過遍歷全部的可視化窗口,檢測父進程是否對應於可視化窗口;根據檢測結果對瀏覽器進程的創建行為進行處理。根據本發明提供的方案,可以有效攔截隱藏窗口的後臺進程未經用戶同意而彈出廣告、釣魚網站等瀏覽器頁面,使用戶在操作中避免受到廣告等無效信息的幹擾和各種惡意網站上虛假信息的欺騙,提高了用戶網絡操作的安全性。
【專利說明】一種基於雲安全攔截廣告程序的方法、裝置和系統
【技術領域】
[0001]本發明涉及計算機安全領域,具體涉及一種基於雲安全攔截廣告程序的方法、裝置和系統。
【背景技術】
[0002]隨著網際網路的發展,基於WEB的應用日益普及,人們通過瀏覽器可以查詢銀行帳戶、網上購物、電子商務、查詢信息、獲取知識、進行娛樂等,WEB為人們提供了方便和快捷的交互方式。然而,人們在上網衝浪瀏覽網頁的同時,經常會遇到未經點擊而自動彈出的瀏覽器頁面,例如廣告、遊戲、購物網頁,這些網頁的內容通常對用戶來說毫無意義,只會對用戶的瀏覽行為造成幹擾,更嚴重的問題是,部分彈出頁面還可能來自惡意網站,如釣魚網站,或者欺詐、假冒網站等,這些頁面上通常顯示有虛假信息並且頁面代碼內嵌入有惡意的腳本程序,用於非法獲取用戶輸入的帳號、密碼等個人信息,對用戶利益造成損害。
[0003]其中,部分未經許可而打開的瀏覽器頁面是由在後臺運行的惡意程序的進程開啟的,這些惡意進程通常不具有窗口,或隱藏自身窗口以達到不被用戶發現的目的。對於這類惡意程序,現有技術中仍然採用通用的方法,例如基於特徵庫來分析、匹配程序的特徵碼,這種方式通常具有滯後性,無法應對新的情況,運營成本也較大。因此,對於這類惡意程序,現有技術中缺乏一種具有針對性的檢測方法。

【發明內容】

[0004]鑑於上述問題,提出了本發明以便提供一種克服上述問題或者至少部分地解決上述問題的基於雲安全攔截廣告程序的方法、裝置和系統。
[0005]根據本發明的一個方面,提供了一種基於雲安全攔截廣告程序的方法,包括:監控瀏覽器進程的創建行為;當監測到瀏覽器進程的創建請求時,獲取瀏覽器進程的父進程的信息;根據瀏覽器進程的父進程的信息,通過遍歷全部的可視化窗口,檢測父進程是否對應於可視化窗口 ;根據檢測結果對瀏覽器進程的創建行為進行處理。
[0006]根據本發明的另一方面,提供了一種基於雲安全攔截廣告程序的裝置,包括:監控模塊,適於監控瀏覽器進程的創建行為;獲取模塊,適於當監控模塊監測到瀏覽器進程的創建請求時,獲取瀏覽器進程的父進程的信息;檢測模塊,適於根據瀏覽器進程的父進程的信息,通過遍歷全部的可視化窗口,檢測父進程是否對應於可視化窗口 ;處理模塊,適於根據檢測結果對瀏覽器進程的創建行為進行處理。
[0007]根據本發明的另一方面,提供了一種基於雲安全攔截廣告程序的系統,包括上述基於雲安全攔截廣告程序的裝置,還包括向該裝置提供雲查詢服務的伺服器。
[0008]根據本發明的基於雲安全攔截廣告程序的方法、裝置和系統,監控到瀏覽器進程的創建請求時,獲取要創建該瀏覽器進程的父進程的信息,檢測該父進程是否與當前界面中的至少一個可視化窗口對應,從而判斷出父進程的安全性,根據檢測結果對其創建瀏覽器進程的行為進行相應的處理。根據該方案,可以有效攔截隱藏窗口的後臺進程未經用戶同意而彈出廣告、釣魚網站等瀏覽器頁面,使用戶在操作中避免受到廣告等無效信息的幹擾和各種惡意網站上虛假信息的欺騙,提高了用戶網絡操作的安全性。
[0009]上述說明僅是本發明技術方案的概述,為了能夠更清楚了解本發明的技術手段,而可依照說明書的內容予以實施,並且為了讓本發明的上述和其它目的、特徵和優點能夠更明顯易懂,以下特舉本發明的【具體實施方式】。
【專利附圖】

【附圖說明】
[0010]通過閱讀下文優選實施方式的詳細描述,各種其他的優點和益處對於本領域普通技術人員將變得清楚明了。附圖僅用於示出優選實施方式的目的,而並不認為是對本發明的限制。而且在整個附圖中,用相同的參考符號表示相同的部件。在附圖中:
[0011]圖1示出了根據本發明一個實施例的基於雲安全攔截廣告程序的方法的流程圖;
[0012]圖2示出了根據本發明另一實施例的基於雲安全攔截廣告程序的方法的流程圖;
[0013]圖3示出了根據本發明另一實施例的基於雲安全攔截廣告程序的方法的流程圖;
[0014]圖4示出了根據本發明另一實施例的基於雲安全攔截廣告程序的方法的流程圖;
[0015]圖5示出了本發明另一個實施例的基於雲安全攔截廣告程序的裝置的框圖;
[0016]圖6示出了根據本發明另一實施例的基於雲安全攔截廣告程序的系統的結構框圖。
【具體實施方式】
[0017]下面將參照附圖更詳細地描述本公開的示例性實施例。雖然附圖中顯示了本公開的示例性實施例,然而應當理解,可以以各種形式實現本公開而不應被這裡闡述的實施例所限制。相反,提供這些實施例是為了能夠更透徹地理解本公開,並且能夠將本公開的範圍完整的傳達給本領域的技術人員。
[0018]圖1示出了根據本發明一個實施例的基於雲安全攔截廣告程序的方法的流程圖,如圖1所示,該方法包括如下步驟:
[0019]步驟SI 10,監控瀏覽器進程的創建行為。
[0020]在常見的計算機系統,如Windows系統,對瀏覽器進程的監控通常是基於作業系統提供的API接口函數或系統調用來實現的。
[0021]該步驟中所說的瀏覽器包括但不限於運行在各類計算機系統中的IE、Firefox,Chrome,Safari等獨立內核瀏覽器,以及常見的基於IE內核的,或基於多內核的瀏覽器,如360瀏覽器,搜狗瀏覽器等,還包括運行於各種移動終端作業系統中常見的瀏覽器。一種常見的情況是,系統中安裝有一種以上的瀏覽器,例如,Windows系統中除了自帶的IE瀏覽器,用戶出於豐富功能、更高的安全性和個人喜好,可能安裝並默認使用上述其他瀏覽器。這時,對瀏覽器進程的監控就應該包括對IE進程,及其他全部瀏覽器進程的監控。
[0022]步驟S120,當監測到瀏覽器進程的創建請求時,獲取瀏覽器進程的父進程的信息。
[0023]瀏覽器進程的父進程就是請求創建該瀏覽器進程的進程。以Windows作業系統為例,各種應用層應用程式都是通過調用各種API函數來實現的,父進程創建瀏覽器進程需要調用相應的API函數,檢測瀏覽器進程的創建請求也就是監控創建進程的API函數的調用請求,通過捕獲該API函數,可以從該API函數攜帶的參數中解析出指向的應用程式,判斷出創建的是否為瀏覽器進程。請求調用該函數的進程就是瀏覽器進程的父進程,父進程的進程信息可以包括但不限於進程名稱,進程標識,進程文件的路徑信息以及相關的動態連結庫文件等。
[0024]步驟S130,根據瀏覽器進程的父進程的信息,通過遍歷全部的可視化窗口,檢測父進程是否對應於可視化窗口。
[0025]對大多數的應用程式,用戶一般通過該程序提供的可視化窗口與系統進行交互。本發明通過檢測父進程是否對應於可視化窗口來判斷瀏覽器進程的創建行為是否為用戶觸發。遍歷全部的可視化窗口,如果存在至少一個可視化窗口與瀏覽器進程的父進程相對應,認為瀏覽器進程的創建行為是該可視化窗口對應的應用程式響應於用戶在該窗口中的點擊、輸入等觸發行為而發起的,例如,用戶點擊QQ界面上的空間圖片,彈出了空間頁面,這屬於用戶允許的安全行為,而如果瀏覽器進程的父進程不對應於可視化窗口,認為該次創建行為是後臺進程未經用戶允許而請求的,是可疑的惡意行為。
[0026]步驟S140,根據檢測結果對所述瀏覽器進程的創建行為進行處理。
[0027]對對應於可視化窗口的父進程,允許其創建瀏覽器進程;對不對應可視化窗口的父進程,進行攔截,給出提示信息或進一步確認其安全性。
[0028]根據本發明上述實施例提供的方法,對瀏覽器進程的創建行為進行實時的監控,並找到發起該創建請求的進程,作為瀏覽器進程的父進程,獲取該父進程的信息,遍歷全部的可視化窗口,檢測父進程是否對應於可視化窗口,以此來判斷瀏覽器進程的創建行為是否為用戶的主動選擇,根據檢測的結果對創建行為做相應的處理。根據該方案可以有效攔截隱藏窗口的後臺進程未經用戶同意而彈出廣告、遊戲、購物、釣魚網站等瀏覽器頁面的幹擾或威脅,提高了用戶網絡操作的安全性。
[0029]圖2示出了本發明另一個實施例的基於雲安全攔截廣告程序的方法的流程圖,如圖2所示,該方法包括如下步驟:
[0030]步驟S210,監控瀏覽器進程的創建行為。
[0031]如同在步驟S120中所述的,Windows系統中,監控瀏覽器進程的創建行為實際上是監控對相應的API函數的調用請求。具體地,應用程式要創建一個Win32進程,可能需要調用的API函數有CreateProcess、CreateProcessAsUser等,創建的新進程運行指定的可執行文件,可執行文件的路徑、文件名由API函數的參數指定,例如,參數IpApplicationName指定了可執行模塊的路徑,捕獲該函數,從其參數中獲得可執行文件的路徑,文件名等信息,即可判斷出本次API調用創建的進程是否為瀏覽器進程。
[0032]步驟S220,獲取瀏覽器進程的父進程信息。
[0033]獲取請求調用CreateProcess等API函數的應用程式,從而獲取父進程信息。父進程的進程信息可以包括但不限於進程名稱,進程標識,進程文件的路徑信息以及相關的動態連結庫文件等。
[0034]在獲取父進程信息時,一種可能的情況是,一些惡意程序為了更好地隱藏自己,可能會通過其進程A調用進程B,然後進程B請求調用API函數創建瀏覽器進程,甚至經過更多級的調用。這時,在後續步驟中,僅根據進程B的信息並不能做出準確的判斷。因此,還要獲取進程B所在的進程鏈的多個進程的信息。這可以通過NtQuerylnformationProcess函數實現,利用該函數逐級查找,獲取全部相關進程。[0035]具體地,獲取進程名稱、進程標識等信息也可以通過調用API函數實現,例如,通過Process Status (進程狀態)API函數下的多個函數獲取進程名稱;通過GetCurrentProcessId獲取進程ID等。當然,也可以選擇其他的API函數或者通過高級語
言實現。
[0036]步驟S230,遍歷全部的可視化窗口並獲取每個可視化窗口對應進程的進程標識。
[0037]進程被創建時會被分配給一個進程標識。直到進程中止這個標識都是有效的,並且不會改變,在進程有效的時間內,每個進程的進程標識都是唯一的,因此,它可以被用來唯一標識這個進程。具體地,該步驟中可以用EnumWindows函數遍歷窗口,獲取窗口的句柄,然後用GetWindowThreadProcessId函數獲得每個窗口句柄對應的進程標識。
[0038]步驟S240,在全部的可視化窗口的進程標識中查詢瀏覽器進程的父進程標識,如果能查詢到父進程標識,則表明父進程對應於可視化窗口,執行步驟S250,否則,執行步驟S260。
[0039]在同一時刻,進程標識唯一,因此,如果存在至少一個可視化窗口,其進程標識與瀏覽器進程的父進程的進程標識一致,則認為該父進程對應於該可視化窗口,即可以認為瀏覽器進程的創建行為是該可視化窗口對應的應用程式響應於用戶在該窗口中的點擊、輸入等觸發行為而發起的。
[0040]步驟S250,允許執行父進程創建瀏覽器進程的行為。
[0041]由下文中步驟S260描述可知,一種攔截進程的方法是,在創建進程的任意一個步驟通過鉤子函數的方法攔截其所必須調用的API函數實現的。因此,對於允許所監控到的創建行為請求的情形,在本發明實施例的鉤子函數執行完畢後,跳轉到該文件行為請求對應API的原始入口地址去執行相應的指令即可。
[0042]步驟S260,給出風險提示信息,根據用戶選擇對所述瀏覽器進程的創建行為進行攔截。
[0043]如果在全部的可視化窗口的進程標識中未查詢到父進程標識,認為該父進程創建瀏覽器進程的行為是後臺進程未經用戶允許而發起的,是可疑的惡意行為,如廣告程序行為,可能需要對該行為進行攔截。
[0044]這時,向用戶提供風險提示信息,具體地,可以在桌面指定區域彈出消息窗口,將步驟S220中獲取的父進程信息,如進程名稱,進程路徑,相應的可執行文件名稱等展示給用戶,供用戶分析以做出決定,還可以根據現有的統計結果,給出進程及相應的應用程式的危險等級、安全評分等信息並向用戶提供相應的建議。
[0045]在一些情況下,雖然父進程不對應可視化窗口,但該父進程創建瀏覽器進程的行為並不屬於惡意行為,例如,安裝、卸載軟體時,在安裝、卸載程序結束後,經常彈出一些用於信息反饋的瀏覽器頁面,並不具有危害性,如果用戶需要,可以選擇不對該瀏覽器進程的創建行為進行攔截。還可以在本地設置一個安全名單,將用戶選擇不攔截的進程加入該名單中,下次不再提示。
[0046]對進程創建行為的攔截可以按如下方式實現。通常,一個進程的創建過程如下:打開要被執行的文件映像,創建執行進程對象,創建初始線程及堆棧及上下文,通知Windows子系統有關進程的信息,開始初始線程的執行,執行新進程上下文中的進程初始化。可以在其中任意一個步驟通過鉤子函數的方法攔截其所必須調用的API函數,達到攔截進程創建的目的。例如,通過在開始初始線程的步驟執行之前,通過對系統服務調度表中的NativeAPI函數ZwCreateProcess的攔截來實現,即在系統調用ZwCreateProcess時,轉到鉤子程序中進行處理。或者通過攔截其他步驟中調用的API函數實現,如NtCreateSection函數,該函數用於打開要被執行的文件映像。
[0047]圖3示出了本發明另一個實施例的基於雲安全攔截廣告程序的方法的流程圖,如圖3所示,該方法包括如下步驟:
[0048]步驟S310,監控瀏覽器進程的創建行為;
[0049]步驟S320,獲取瀏覽器進程的父進程信息;
[0050]步驟S330,遍歷全部的可視化窗口並獲取每個可視化窗口對應進程的進程標識;
[0051]其中,步驟S310-S330與上一實施例中的步驟S210-S230相同,此處不再贅述。
[0052]步驟S340,在全部的可視化窗口的進程標識中查詢瀏覽器進程的父進程標識,如果能查詢到父進程標識,則表明父進程對應於可視化窗口,執行步驟S350,否則,執行步驟S360。
[0053]步驟S350,允許執行父進程創建瀏覽器進程的行為。
[0054]步驟S360,在預置的本地進程白名單中查詢不對應於可視化窗口的父進程的進程信息,如果查詢成功,執行步驟S350,否則,執行步驟S370。
[0055]如同在上一實施例中步驟S260裡所述的,不對應於可視化窗口的父進程的創建行為可能是安全的。然而,用戶的判斷未必準確。在本實施例中,通過用戶判斷與黑白名單的方式結合進行更準確的判斷。
[0056]首先在本地預置的進程白名單中查詢父進程信息,本地白名單保存有常見的安全進程,例如,常用軟體的安裝、卸載相關的進程。與步驟S260類似地,在桌面指定區域彈出消息窗口。提示信息窗口還可以接收用戶反饋,用於本地進程白名單的維護和更新。例如,用戶對某一不在白名單中的進程有特殊需求,可以選擇允許其創建瀏覽器進程,記錄用戶對該進程的選擇,將進程加入到本地進程白名單中,下次不再提示。
[0057]步驟S370,將父進程的進程信息上傳至伺服器,以供伺服器通過雲查詢獲知父進程是否屬於伺服器保存的進程黑名單,如果該進程屬於伺服器保存的進程黑名單,執行步驟 S380。
[0058]與本地名單相比,伺服器端的黑名單資料庫保存有更完整的信息,能夠進行更嚴格準確的判斷。具體地,客戶端將檢測到的可疑進程的進程信息上傳至伺服器,伺服器根據進程信息對相應的可執行文件或應用程式進行殺毒分析,可以採用傳統的特徵碼匹配方式,或者採用主動防禦的方法分析應用程式包含的行為特點。找出特徵碼與病毒庫,或惡意程序相匹配的應用程式,或行為動作觸發預設安全規則的應用程式,將相應的進程信息加入到進程黑名單中。
[0059]伺服器上的黑名單也可以通過人工運營的方式產生,伺服器端定期對來自客戶端的病毒或惡意程序數據進行統計,對使用數量排名靠前或者增長速度靠前或者危險性排名靠前的進程,通過分析其彈出網頁的內容等方式判斷其安全性,放入黑名單中。
[0060]步驟S380,給出風險提示信息,根據用戶選擇對瀏覽器進程的創建行為進行攔截。
[0061]實際中,也可以選擇直接攔截創建行為。但考慮用戶可能對某些進程存在特殊需求,通常先給出風險提示信息,接收用戶反饋。該步驟與S260相似,在步驟S260的基礎上,還可以進一步給出伺服器的分析結果。
[0062]對於屬於白名單的進程,可以允許其創建瀏覽器的行為。
[0063]圖4示出了本發明另一個實施例的基於雲安全攔截廣告程序的方法的流程圖。如圖4所示,該方法包括如下步驟:
[0064]步驟S410,監控瀏覽器進程的創建行為;
[0065]步驟S420,獲取瀏覽器進程的父進程信息;
[0066]步驟S430,遍歷全部的可視化窗口並獲取每個可視化窗口對應進程的進程標識;
[0067]其中,步驟S410-S430與前述實施例中的步驟S210-S230相同,此處不再贅述
[0068]步驟S440,在全部的可視化窗口的進程標識中查詢瀏覽器進程的父進程標識,如果能查詢到父進程標識,則表明父進程對應於可視化窗口,執行步驟S450,否則,執行步驟S460。
[0069]步驟S450,允許執行父進程創建瀏覽器進程的行為。
[0070]步驟S460,獲取父進程創建的瀏覽器進程所要訪問的頁面URL。
[0071]一種可能方式是通過瀏覽器中提供的插件機制,例如,在IE瀏覽器中,通過響應「BeforeNavigate2」事件可以獲取IE當前加載的URL。在火狐(Firefox)瀏覽器中使用火狐擴展機制提供的指定響應事件接口,獲取火狐瀏覽器當前加載的URL。在谷歌(chrome)瀏覽器中使用網景插件應用程式編程接口(Netscape Plugin Application ProgrammingInterface,簡稱:NPAPI)插件機制,獲取谷歌瀏覽器當前加載的URL。
[0072]步驟S470,將該頁面URL打包成密文上傳至伺服器,以供伺服器通過雲查詢獲知頁面URL是否屬於伺服器保存的URL黑名單和/或白名單。如果該頁面URL屬於URL黑名單,執行步驟S480 ;如果該頁面URL屬於URL白名單,執行步驟S450。
[0073]伺服器收集常見的廣告、遊戲等頁面的URL,加入黑名單中;對用戶允許放行的瀏覽器創建行為,收集該行為創建的瀏覽器頁面所打開的URL,分析該URL頁面的內容,或者統計大量用戶對該URL頁面的攔截情況,判斷該頁面是否為正常頁面,將判斷出的正常頁面加入白名單中。
[0074]上傳至伺服器時,先將URL加密成密文,然後發送給伺服器。這裡,可以採用可逆加密方法對URL進行加密,也可以採用不可逆加密方法對URL進行加密。舉例來說,計算URL的特徵值作為密文。可選地,特徵值可以為根據MD5 (Message Digest Algorithm,消息摘要算法第五版)計算得到的哈希值,或SHAl (Secure Hash Algorithm,安全哈希算法)碼,或CRC(Cyclic Redundancy Check,循環冗餘校驗)碼等可唯一標識原信息的特徵碼。需要說明的是,在上傳URL的密文到伺服器的時候,需要首先屏蔽可能帶有用戶密碼的網址字符串,不上傳此類URL,以便保證用戶信息的安全。
[0075]步驟S480,給出風險提示信息,根據用戶選擇對瀏覽器進程的創建行為進行攔截。
[0076]出於與步驟S370相同的理由,優選地,先給出風險提示信息。
[0077]對於屬於白名單的URL對應的父進程,可以允許其創建瀏覽器的行為。
[0078]根據本發明上述實施例提供的方法,通過捕獲創建進程所必須的API函數實現對瀏覽器進程創建行為的監控,找到發起該創建請求的父進程,獲取該父進程的進程標識,遍歷全部的可視化窗口並獲取每個可視化窗口對應進程的進程標識,在全部的可視化窗口的進程標識中查詢瀏覽器進程的父進程標識,以此來判斷瀏覽器進程的創建行為是否為用戶的主動選擇,對於非用戶主動選擇的可疑進程,給出風險提示信息,或者進一步通過雲端的進程黑白名單或URL黑白名單確認。根據該方案可以有效攔截隱藏窗口的後臺進程未經用戶同意而彈出廣告、遊戲、購物、釣魚網站等瀏覽器頁面的幹擾或威脅,並且,通過雲查詢的方式,降低了對惡意程序行為和安全行為誤判的概率,進一步提高系統的安全性和用戶的操作體驗。
[0079]圖5示出了本發明另一個實施例的基於雲安全攔截廣告程序的裝置的框圖。如圖5所示,該裝置包括:
[0080]監控模塊510,適於監控瀏覽器進程的創建行為。
[0081]具體地,監控模塊510通過監控創建進程的API函數的調用請求實現對創建行為的監控。具體地,應用程式要創建一個Win32進程,可能需要調用的API函數有CreateProcess、CreateProcessAsUser等,倉Il建的新進程運行指定的可執行文件,可執行文件的路徑、文件名由API函數的參數指定,例如,參數IpApplicationName指定了可執行模塊的路徑,監控模塊540捕獲該函數,從其參數中獲得可執行文件的路徑及文件名,即可判斷出本次API調用創建的進程是否為瀏覽器進程。
[0082]獲取模塊520,適於當監控模塊510監測到瀏覽器進程的創建請求時,獲取瀏覽器進程的父進程的信息。
[0083]獲取模塊520獲取請求調用CreateProcess等API函數的應用程式,從而獲取父進程信息。獲取模塊520獲取父進程的進程信息可以包括但不限於獲取進程名稱,進程標識,進程文件的路徑信息以及相關的動態連結庫文件等。
[0084]獲取模塊520具體適於:當監控模塊510監測到瀏覽器進程的創建請求時,獲取瀏覽器進程的父進程標識。獲取模塊520獲取進程名稱、進程標識等信息也可以通過調用API函數實現,例如,通過Process Status (進程狀態)API函數下的多個函數獲取進程名稱;通過 GetCurrentProcessId 獲取進程 ID 等。
[0085]檢測模塊530,適於根據瀏覽器進程的父進程的信息,通過遍歷全部的可視化窗口,檢測父進程是否對應於可視化窗口。
[0086]進程被創建時會被分配給一個進程標識。直到進程中止這個標識都是有效的,並且不會改變,在進程有效的時間內,每個進程的進程標識都是唯一的,因此,檢測模塊530通過進程標識檢測父進程是否對應於可視化窗口。
[0087]具體地,檢測模塊530包括:
[0088]遍歷模塊550,適於遍歷全部的可視化窗口並獲取每個可視化窗口對應進程的進程標識;遍歷模塊550可以用EnumWindows函數遍歷窗口,獲取窗口的句柄,然後用GetWindowThreadProcessId函數獲得每個窗口句柄對應的進程標識。
[0089]查詢模塊560,適於在全部的可視化窗口的進程標識中查詢瀏覽器進程的父進程標識,如果查詢到瀏覽器進程的父進程標識,則表明父進程對應於可視化窗口 ;如果沒有查詢到瀏覽器進程的父進程標識,則表明父進程不對應於可視化窗口。
[0090]裝置還包括:處理模塊540,適於根據檢測結果對瀏覽器進程的創建行為進行處理。
[0091]處理模塊540進一步適於:對不對應於可視化窗口的父進程創建瀏覽器進程的行為,給出風險提示信息,根據用戶選擇對所述瀏覽器進程的創建行為進行攔截。[0092]處理模塊540對進程創建行為的攔截可以按如下方式實現。通常,一個進程的創建過程如下:打開要被執行的文件映像,創建執行進程對象,創建初始線程及堆棧及上下文,通知Windows子系統有關進程的信息,開始初始線程的執行,執行新進程上下文中的進程初始化。因此,處理模塊540可以在其中任意一個步驟攔截其所必須調用的API函數,達到攔截進程創建的目的。例如,處理模塊540在開始初始線程的步驟執行之前,對系統服務調度表中的Native API函數ZwCreateProcess的攔截。
[0093]處理模塊540向用戶提供風險提示信息具體為:在桌面指定區域彈出消息窗口,將獲取模塊520獲取的父進程信息,如進程名稱,進程路徑,相應的可執行文件名稱等展示給用戶,供用戶分析以做出決定,處理模塊540還可以根據現有的統計結果,給出進程及相應的應用程式的危險等級、安全評分等信息並向用戶提供相應的建議。
[0094]可選地,裝置還包括:雲查詢接口 580,適於在預置的本地進程白名單中查詢不對應於可視化窗口的父進程的進程信息,將未查詢到的的父進程的進程信息上傳至伺服器,以供伺服器通過雲查詢獲知父進程是否屬於伺服器保存的進程黑名單,並從伺服器接收查詢結果。
[0095]具體地,雲查詢接口 580將檢測模塊530檢測到的可疑進程的進程信息上傳至伺服器,伺服器根據進程信息對相應的可執行文件或應用程式進行殺毒分析,例如傳統的特徵碼匹配方式,或者採用主動防禦的方法,分析應用程式包含的行為特點。找出特徵碼與病毒庫,或惡意程序相匹配的應用程式,或行為動作觸發預設安全規則的應用程式,將相應的進程信息加入到進程黑名單中。
[0096]伺服器上的黑名單也可以通過人工運營的方式產生,伺服器端定期對來自客戶端的病毒或惡意程序數據進行統計,對使用數量排名靠前或者增長速度靠前或者危險性排名靠前的進程,通過分析其彈出網頁的內容等方式判斷其安全性,放入黑名單中。
[0097]則處理模塊540進一步適於:如果雲查詢接口 570從伺服器接收的查詢結果表明所述父進程屬於所述進程黑名單,給出風險提示信息,根據用戶選擇對所述瀏覽器進程的創建行為進行攔截。
[0098]可選地,裝置還包括:頁面URL提取模塊570,適於對不對應於可視化窗口的父進程,獲取父進程創建的瀏覽器進程所要訪問的頁面URL。
[0099]頁面URL提取模塊570獲取URL的一種可能方式是通過瀏覽器中提供的插件機制,例如,在IE瀏覽器中,頁面URL提取模塊570通過響應「BeforeNavigate」事件獲取IE當前加載的URL,在火狐(Firefox)瀏覽器中頁面URL提取模塊570使用火狐擴展機制提供的指定響應事件接口,獲取火狐瀏覽器當前加載的URL。在谷歌(clrome)瀏覽器中使用網景插件應用程式編程接口(Netscape Plugin Application Programming Interface,簡稱:NPAPI)插件機制,獲取谷歌瀏覽器當前加載的URL。
[0100]雲查詢接口 580還可以適於將頁面URL提取模塊570所獲取的頁面URL打包成密文後上傳至伺服器,以供伺服器通過雲查詢獲知頁面URL是否屬於伺服器保存的URL黑名單和/或白名單並從伺服器接收查詢結果。
[0101]處理模塊540進一步適於:如果雲查詢接口 570從伺服器接收的查詢結果表明所述頁面URL屬於所述URL黑名單,給出風險提示信息,根據用戶選擇對所述瀏覽器進程的創建行為進行攔截。[0102]圖6示出了本發明另一實施例提供的基於雲安全攔截廣告程序的系統,如圖6所示,該系統包括上一實施例中的基於雲安全攔截廣告程序的裝置,還包括:向該裝置提供雲查詢服務的伺服器。
[0103]根據本發明上述實施例提供的裝置和系統,監控模塊通過捕獲創建進程所必須的API函數實現對瀏覽器進程創建行為的監控,找到發起該創建請求的父進程,獲取模塊獲取該父進程的進程信息,其中包括進程標識,遍歷模塊遍歷全部的可視化窗口並獲取每個可視化窗口對應進程的進程標識,查詢模塊在全部的可視化窗口的進程標識中查詢瀏覽器進程的父進程標識,以此來判斷瀏覽器進程的創建行為是否為用戶的主動選擇,對於非用戶主動選擇的可疑進程,處理模塊給出風險提示信息,或者進一步地,雲查詢接口將進程信息和待訪問頁面的URL發送至伺服器,通過雲端的進程黑白名單或URL黑白名單確認。根據該方案,可以有效攔截隱藏窗口的後臺進程未經用戶同意而彈出廣告、遊戲、購物、釣魚網站等瀏覽器頁面的幹擾或威脅,並且,通過雲查詢的方式,降低了對惡意程序行為和安全行為誤判的概率,進一步提高系統的安全性和用戶的操作體驗。
[0104]在此提供的算法和顯示不與任何特定計算機、虛擬系統或者其它設備固有相關。各種通用系統也可以與基於在此的示教一起使用。根據上面的描述,構造這類系統所要求的結構是顯而易見的。此外,本發明也不針對任何特定程式語言。應當明白,可以利用各種程式語言實現在此描述的本發明的內容,並且上面對特定語言所做的描述是為了披露本發明的最佳實施方式。
[0105]在此處所提供的說明書中,說明了大量具體細節。然而,能夠理解,本發明的實施例可以在沒有這些具體細節的情況下實踐。在一些實例中,並未詳細示出公知的方法、結構和技術,以便不模糊對本說明書的理解。
[0106]類似地,應當理解,為了精簡本公開並幫助理解各個發明方面中的一個或多個,在上面對本發明的示例性實施例的描述中,本發明的各個特徵有時被一起分組到單個實施例、圖、或者對其的描述中。然而,並不應將該公開的方法解釋成反映如下意圖:即所要求保護的本發明要求比在每個權利要求中所明確記載的特徵更多的特徵。更確切地說,如下面的權利要求書所反映的那樣,發明方面在於少於前面公開的單個實施例的所有特徵。因此,遵循【具體實施方式】的權利要求書由此明確地併入該【具體實施方式】,其中每個權利要求本身都作為本發明的單獨實施例。
[0107]本領域那些技術人員可以理解,可以對實施例中的設備中的模塊進行自適應性地改變並且把它們設置在與該實施例不同的一個或多個設備中。可以把實施例中的模塊或單元或組件組合成一個模塊或單元或組件,以及此外可以把它們分成多個子模塊或子單元或子組件。除了這樣的特徵和/或過程或者單元中的至少一些是相互排斥之外,可以採用任何組合對本說明書(包括伴隨的權利要求、摘要和附圖)中公開的所有特徵以及如此公開的任何方法或者設備的所有過程或單元進行組合。除非另外明確陳述,本說明書(包括伴隨的權利要求、摘要和附圖)中公開的每個特徵可以由提供相同、等同或相似目的的替代特徵來代替。
[0108]此外,本領域的技術人員能夠理解,儘管在此所述的一些實施例包括其它實施例中所包括的某些特徵而不是其它特徵,但是不同實施例的特徵的組合意味著處於本發明的範圍之內並且形成不同的實施例。例如,在下面的權利要求書中,所要求保護的實施例的任意之一都可以以任意的組合方式來使用。
[0109]本發明的各個部件實施例可以以硬體實現,或者以在一個或者多個處理器上運行的程序模塊實現,或者以它們的組合實現。本領域的技術人員應當理解,可以在實踐中使用微處理器或者數位訊號處理器(DSP)來實現根據本發明實施例的基於雲安全攔截廣告程序的裝置和系統中的一些或者全部部件的一些或者全部功能。本發明還可以實現為用於執行這裡所描述的方法的一部分或者全部的設備或者裝置程序(例如,電腦程式和電腦程式產品)。這樣的實現本發明的程序可以存儲在計算機可讀介質上,或者可以具有一個或者多個信號的形式。這樣的信號可以從網際網路網站上下載得到,或者在載體信號上提供,或者以任何其他形式提供。
[0110]應該注意的是上述實施例對本發明進行說明而不是對本發明進行限制,並且本領域技術人員在不脫離所附權利要求的範圍的情況下可設計出替換實施例。在權利要求中,不應將位於括號之間的任何參考符號構造成對權利要求的限制。單詞「包含」不排除存在未列在權利要求中的元件或步驟。位於元件之前的單詞「一」或「一個」不排除存在多個這樣的元件。本發明可以藉助於包括有若干不同元件的硬體以及藉助於適當編程的計算機來實現。在列舉了若干裝置的單元權利要求中,這些裝置中的若干個可以是通過同一個硬體項來具體體現。單詞第一、第二、以及第三等的使用不表示任何順序。可將這些單詞解釋為名稱。
[0111]本發明公開了:
[0112]Al、一種基於雲安全攔截廣告程序的方法,包括:
[0113]監控瀏覽器進程的創建行為;
[0114]當監測到瀏覽器進程的創建請求時,獲取所述瀏覽器進程的父進程的信息;
[0115]根據所述瀏覽器進程的父進程的信息,通過遍歷全部的可視化窗口,檢測所述父進程是否對應於可視化窗口;
[0116]根據檢測結果對所述瀏覽器進程的創建行為進行處理。
[0117]2A、根據Al所述的方法,所述獲取瀏覽器進程的父進程的信息具體為:獲取瀏覽器進程的父進程標識;
[0118]所述通過遍歷全部的可視化窗口,檢測父進程是否對應於可視化窗口具體包括:
[0119]遍歷全部的可視化窗口並獲取每個可視化窗口對應進程的進程標識;
[0120]在全部的可視化窗口的進程標識中查詢所述瀏覽器進程的父進程標識,如果查詢到所述瀏覽器進程的父進程標識,則表明父進程對應於可視化窗口 ;如果沒有查詢到所述瀏覽器進程的父進程標識,則表明父進程不對應於可視化窗口。
[0121]A3、根據Al或A2所述的方法,所述根據檢測結果對瀏覽器進程的創建行為進行處理具體包括:對不對應於可視化窗口的父進程創建瀏覽器進程的行為,給出風險提示信息,根據用戶選擇對所述瀏覽器進程的創建行為進行攔截。
[0122]A4、根據Al或A2所述的方法,所述根據檢測結果對瀏覽器進程的創建行為進行處理具體包括:
[0123]在預置的本地進程白名單中查詢所述不對應於可視化窗口的父進程的進程信息,如果查詢成功,允許所述父進程創建瀏覽器進程的行為;
[0124]否則將所述父進程的進程信息上傳至伺服器,以供所述伺服器通過雲查詢獲知所述父進程是否屬於伺服器保存的進程黑名單;
[0125]如果所述父進程屬於所述進程黑名單,給出風險提示信息,根據用戶選擇對所述瀏覽器進程的創建行為進行攔截。
[0126]A5、根據Al或A2所述的方法,所述根據檢測結果對瀏覽器進程的創建行為進行處理具體包括:
[0127]對不對應於可視化窗口的父進程,獲取所述父進程創建的瀏覽器進程所要訪問的頁面URL,將該頁面URL打包成密文,上傳至伺服器,以供伺服器通過雲查詢獲知所述頁面URL是否屬於伺服器保存的URL黑名單和/或白名單;
[0128]如果所述頁面URL屬於所述URL黑名單,給出風險提示信息,根據用戶選擇對所述瀏覽器進程的創建行為進行攔截。
[0129]B6、一種基於雲安全攔截廣告程序的裝置,包括:
[0130]監控模塊,適於監控瀏覽器進程的創建行為;
[0131]獲取模塊,適於當所述監控模塊監測到瀏覽器進程的創建請求時,獲取所述瀏覽器進程的父進程的信息;
[0132]檢測模塊,適於根據所述瀏覽器進程的父進程的信息,通過遍歷全部的可視化窗口,檢測所述父進程是否對應於可視化窗口 ;
[0133]處理模塊,適於根據檢測結果對所述瀏覽器進程的創建行為進行處理。
[0134]B7、根據B6所述的裝置,所述獲取模塊具體適於:當所述監控模塊監測到瀏覽器進程的創建請求時,獲取瀏覽器進程的父進程標識;
[0135]所述檢測模塊包括:
[0136]遍歷模塊,適於遍歷全部的可視化窗口並獲取每個可視化窗口對應進程的進程標識;
[0137]查詢模塊,適於在全部的可視化窗口的進程標識中查詢所述瀏覽器進程的父進程標識,如果查詢到所述瀏覽器進程的父進程標識,則表明父進程對應於可視化窗口 ;如果沒有查詢到所述瀏覽器進程的父進程標識,則表明父進程不對應於可視化窗口。
[0138]B8、根據B6或B7所述的裝置,所述處理模塊進一步適於:對不對應於可視化窗口的父進程創建瀏覽器進程的行為,給出風險提示信息,根據用戶選擇對所述瀏覽器進程的創建行為進行攔截。
[0139]B9、根據B6或B7所述的裝置,還包括:雲查詢接口,適於在預置的本地進程白名單中查詢不對應於可視化窗口的父進程的進程信息,將未查詢到的父進程的進程信息上傳至伺服器,以供所述伺服器通過雲查詢獲知所述父進程是否屬於伺服器保存的進程黑名單,並從伺服器接收查詢結果;
[0140]所述處理模塊進一步適於:如果查詢結果表明所述父進程屬於所述進程黑名單,給出風險提示信息,根據用戶選擇對所述瀏覽器進程的創建行為進行攔截。
[0141]B10、根據B6或B7所述的裝置,還包括:
[0142]頁面URL提取模塊,適於對不對應於可視化窗口的父進程,獲取所述父進程創建的瀏覽器進程所要訪問的頁面URL ;
[0143]雲查詢接口,適於將所述頁面URL提取模塊所獲取的頁面URL打包成密文後上傳至伺服器,以供伺服器通過雲查詢獲知所述頁面URL是否屬於伺服器保存的URL黑名單和/或白名單並從伺服器接收查詢結果;
[0144]所述處理模塊進一步適於:如果查詢結果表明所述頁面URL屬於所述URL黑名單,給出風險提示信息,根據用戶選擇對所述瀏覽器進程的創建行為進行攔截。
[0145]ClU一種基於雲安全攔截廣告程序的系統,包括B6-B10任一項所述的基於雲安全攔截廣告程序的裝置,還包括:向所述裝置提供雲查詢服務的伺服器。
【權利要求】
1.一種基於雲安全攔截廣告程序的方法,包括: 監控瀏覽器進程的創建行為; 當監測到瀏覽器進程的創建請求時,獲取所述瀏覽器進程的父進程的信息; 根據所述瀏覽器進程的父進程的信息,通過遍歷全部的可視化窗口,檢測所述父進程是否對應於可視化窗口; 根據檢測結果對所述瀏覽器進程的創建行為進行處理。
2.根據權利要求1所述的方法,所述獲取瀏覽器進程的父進程的信息具體為:獲取瀏覽器進程的父進程標識; 所述通過遍歷全部的可視化窗口,檢測父進程是否對應於可視化窗口具體包括: 遍歷全部的可視化窗口並獲取每個可視化窗口對應進程的進程標識; 在全部的可視化窗口的進程標識中查詢所述瀏覽器進程的父進程標識,如果查詢到所述瀏覽器進程的父進程標識,則表明父進程對應於可視化窗口 ;如果沒有查詢到所述瀏覽器進程的父進程標識,則表明父進程不對應於可視化窗口。
3.根據權利要求1或2所述的方法,所述根據檢測結果對瀏覽器進程的創建行為進行處理具體包括:對不對應於可視化窗口的父進程創建瀏覽器進程的行為,給出風險提示信息,根據用戶選擇對所述瀏覽器進程的創建行為進行攔截。
4.根據權利要求1或2所述的方法,所述根據檢測結果對瀏覽器進程的創建行為進行處理具體包括: 在預置的本地進程白名單中查詢所述不對應於可視化窗口的父進程的進程信息,如果查詢成功,允許所述父進程創建瀏覽器進程的行為; 否則將所述父進程的進程信息上傳至伺服器,以供所述伺服器通過雲查詢獲知所述父進程是否屬於伺服器保存的進程黑名單; 如果所述父進程屬於所述進程黑名單,給出風險提示信息,根據用戶選擇對所述瀏覽器進程的創建行為進行攔截。
5.根據權利要求1或2所述的方法,所述根據檢測結果對瀏覽器進程的創建行為進行處理具體包括: 對不對應於可視化窗口的父進程,獲取所述父進程創建的瀏覽器進程所要訪問的頁面URL,將該頁面URL打包成密文,上傳至伺服器,以供伺服器通過雲查詢獲知所述頁面URL是否屬於伺服器保存的URL黑名單和/或白名單; 如果所述頁面URL屬於所述URL黑名單,給出風險提示信息,根據用戶選擇對所述瀏覽器進程的創建行為進行攔截。
6.一種基於雲安全攔截廣告程序的裝置,包括: 監控模塊,適於監控瀏覽器進程的創建行為; 獲取模塊,適於當所述監控模塊監測到瀏覽器進程的創建請求時,獲取所述瀏覽器進程的父進程的信息; 檢測模塊,適於根據所述瀏覽器進程的父進程的信息,通過遍歷全部的可視化窗口,檢測所述父進程是否對應於可視化窗口; 處理模塊,適於根據檢測結果對所述瀏覽器進程的創建行為進行處理。
7.根據權利要求6所述的裝置,所述獲取模塊具體適於:當所述監控模塊監測到瀏覽器進程的創建請求時,獲取瀏覽器進程的父進程標識; 所述檢測模塊包括: 遍歷模塊,適於遍歷全部的可視化窗口並獲取每個可視化窗口對應進程的進程標識; 查詢模塊,適於在全部的可視化窗口的進程標識中查詢所述瀏覽器進程的父進程標識,如果查詢到所述瀏覽器進程的父進程標識,則表明父進程對應於可視化窗口 ;如果沒有查詢到所述瀏覽器進程的父進程標識,則表明父進程不對應於可視化窗口。
8.根據權利要求6或7所述的裝置,所述處理模塊進一步適於:對不對應於可視化窗口的父進程創建瀏覽器進程的行為,給出風險提示信息,根據用戶選擇對所述瀏覽器進程的創建行為進行攔截。
9.根據權利要求6或7所述的裝置,還包括:雲查詢接口,適於在預置的本地進程白名單中查詢不對應於可視化窗口的父進程的進程信息,將未查詢到的父進程的進程信息上傳至伺服器,以供所述伺服器通過雲查詢獲知所述父進程是否屬於伺服器保存的進程黑名單,並從伺服器接收查詢結果; 所述處理模塊進一步適於:如果查詢結果表明所述父進程屬於所述進程黑名單,給出風險提示信息,根據用戶選擇對所述瀏覽器進程的創建行為進行攔截。
10.一種基於雲安全攔截廣告程序的系統,包括權利要求6-9任一項所述的基於雲安全攔截廣告程序的裝置,還包括 :向所述裝置提供雲查詢服務的伺服器。
【文檔編號】H04L29/08GK103617395SQ201310656591
【公開日】2014年3月5日 申請日期:2013年12月6日 優先權日:2013年12月6日
【發明者】趙龍, 鄒貴強 申請人:北京奇虎科技有限公司, 奇智軟體(北京)有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀