一種廣告網(wǎng)頁的攔截方法及裝置制造方法
【專利摘要】本發(fā)明實施例公開了廣告網(wǎng)頁的攔截方法,包括:根據(jù)云端預(yù)存的外掛程序樣本判斷終端上運行的程序是否為外掛程序;若所述程序為外掛程序,則在所述外掛程序中插入攔截函數(shù),通過所述攔截函數(shù)設(shè)置攔截點;在所述攔截點獲取所述外掛程序訪問的網(wǎng)頁的網(wǎng)址信息,判斷所述網(wǎng)頁是否為廣告網(wǎng)頁;若所述網(wǎng)頁為廣告網(wǎng)頁,則攔截所述網(wǎng)頁的訪問操作,否則執(zhí)行所述網(wǎng)頁的訪問操作。本發(fā)明實施例還公開了一種廣告網(wǎng)頁的攔截裝置。采用本發(fā)明,具有提高攔截廣告網(wǎng)頁的可行性,減少廣告網(wǎng)頁的攔截功耗,保障終端運行外掛程序時的運行順暢性和用戶體驗的優(yōu)點。
【專利說明】—種廣告網(wǎng)頁的攔截方法及裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及通信【技術(shù)領(lǐng)域】,尤其涉及一種廣告網(wǎng)頁的攔截方法及裝置。
【背景技術(shù)】
[0002]隨著手機、電腦等終端的功能的日益強大,各種終端游戲(主要為網(wǎng)絡(luò)游戲)也如雨后春筍般崛起。終端游戲的日益發(fā)展多樣,使得游戲外掛程序也日益興起。外掛程序是通過改變游戲的部分程序或者游戲數(shù)據(jù)制作而成的作弊程序,通過類似病毒程序的方法對游戲數(shù)據(jù)進行修改,故此,終端殺毒軟件常常會將外掛程序誤判為病毒程序,導(dǎo)致游戲用戶無法正常使用外掛程序。若游戲用戶想要使用外掛程序,則需要關(guān)閉殺毒軟件運行外掛程序,此時若外掛運行過程中彈出網(wǎng)頁廣告,終端則無法通過殺毒軟件等程序攔截,嚴(yán)重影響終端運行速度和終端界面的視覺效果。若彈出的廣告網(wǎng)頁中攜帶大量釣魚、欺詐網(wǎng)站或者掛馬網(wǎng)站,則將對用戶的財產(chǎn)安全造成威脅。
[0003]現(xiàn)有技術(shù)對廣告網(wǎng)頁的攔截方式是在外掛程序運行期間,通過不停地枚舉桌面窗口,若發(fā)現(xiàn)瀏覽器的窗口就將其隱藏或者關(guān)閉。現(xiàn)有技術(shù)的實現(xiàn)方式通過不停地枚舉瀏覽器的窗口,極大地消耗了系統(tǒng)資源,若終端的配置較低,則將導(dǎo)致設(shè)備運行不順暢,影響終端的使用效果。此外,現(xiàn)有技術(shù)的實現(xiàn)方式中若發(fā)現(xiàn)瀏覽器的窗口則將其隱藏或者關(guān)閉,這將導(dǎo)致用戶正常打開的網(wǎng)頁也會被屏蔽掉,影響了用戶的正常操作。
【發(fā)明內(nèi)容】
[0004]本發(fā)明實施例提供一種廣告網(wǎng)頁的攔截方法及裝置,可在外掛程序中插入攔截函數(shù),截獲外掛程序訪問的網(wǎng)頁的網(wǎng)址信息,根據(jù)網(wǎng)址信息確定是否為廣告網(wǎng)頁,若是則攔截網(wǎng)頁的訪問操作,否則執(zhí)行網(wǎng)頁的訪問操作,提高了攔截外掛程序運行的廣告網(wǎng)頁的可行性,減少廣告網(wǎng)頁的攔截的功耗,保障終端運行外掛程序時的運行順暢性。
[0005]本發(fā)明實施例提供了一種廣告網(wǎng)頁的攔截方法,其可包括:
[0006]根據(jù)云端預(yù)存的外掛程序樣本判斷終端上運行的程序是否為外掛程序;
[0007]若所述程序為外掛程序,則在所述外掛程序中插入攔截函數(shù),通過所述攔截函數(shù)設(shè)置攔截點;
[0008]在所述攔截點獲取所述外掛程序訪問的網(wǎng)頁的網(wǎng)址信息,判斷所述網(wǎng)頁是否為廣告網(wǎng)頁;
[0009]若所述網(wǎng)頁為廣告網(wǎng)頁,則攔截所述網(wǎng)頁的訪問操作,否則執(zhí)行所述網(wǎng)頁的訪問操作。
[0010]其中,所述根據(jù)云端預(yù)存的外掛程序樣本判斷終端上運行的程序是否為外掛程序之前,所述方法還包括:
[0011]獲取所述終端上正在運行的程序的標(biāo)識信息,以根據(jù)所述程序的標(biāo)識信息確定所述程序是否為外掛程序;
[0012]其中,所述程序的標(biāo)識信息包括:所述程序的名稱、存儲路徑或者運行方式中的至少一種。
[0013]其中,所述根據(jù)云端預(yù)存的外掛程序樣本判斷終端上運行的程序是否為外掛程序,包括:
[0014]將所述終端上運行的程序的所述標(biāo)識信息與所述云端預(yù)存的外掛程序樣本的標(biāo)識信息進行匹配,判斷所述程序的標(biāo)識信息是否包含在所述外掛程序樣本的標(biāo)識信息中;
[0015]若所述程序的標(biāo)識信息包含在所述外掛程序樣本的標(biāo)識信息中,則判斷所述程序為外掛程序。
[0016]其中,所述攔截函數(shù)具體為一個攔截程序或者一個攔截進程。
[0017]其中,所述在所述外掛程序中插入攔截函數(shù),通過所述攔截函數(shù)設(shè)置攔截點,包括:
[0018]將所述攔截程序插入至所述外掛程序中,或者將所述攔截進程插入至所述外掛程序的指定進程中;
[0019]通過所述攔截程序或者所述攔截進程,掛鉤Hook指定系統(tǒng)函數(shù)或者瀏覽器串行通訊端口 COM接口,以設(shè)定截獲所述外掛程序或者所述指定進程訪問的網(wǎng)頁的網(wǎng)址信息的攔截點。
[0020]其中,所述指定系統(tǒng)函數(shù)具體為創(chuàng)建進程的系統(tǒng)函數(shù);
[0021]所述創(chuàng)建進程的系統(tǒng)函數(shù)包括:CreateProcess、ShellExecute,以及WinExec中的至少一種。
[0022]其中,所述瀏覽器COM 接口包括:Navigate、Navigate2、NavigateHack,以及AggregatedNavigat1n 中的至少一種。
[0023]其中,所述在所述攔截點獲取所述外掛程序訪問的網(wǎng)頁的網(wǎng)址信息,包括:
[0024]通過所述外掛程序調(diào)用所述攔截函數(shù),Hook所述外掛程序或者所述指定進程中創(chuàng)建進程的系統(tǒng)函數(shù),獲取所述外掛程序訪問的網(wǎng)頁的網(wǎng)址信息;或者
[0025]通過所述外掛程序調(diào)用所述攔截函數(shù),Hook所述外掛程序或者所述指定進程調(diào)用的瀏覽器COM接口,獲取所述外掛程序訪問的網(wǎng)頁的網(wǎng)址信息;
[0026]其中,所述網(wǎng)頁的網(wǎng)址信息為所述網(wǎng)頁的統(tǒng)一資源定位符URL信息。
[0027]其中,所述判斷所述網(wǎng)頁是否為廣告網(wǎng)頁,包括:
[0028]將所述網(wǎng)頁的網(wǎng)址信息與預(yù)存的廣告網(wǎng)頁的標(biāo)識信息進行匹配,判斷所述網(wǎng)頁的網(wǎng)址信息中是否包含所述廣告網(wǎng)頁的標(biāo)識信息;
[0029]若所述網(wǎng)頁的網(wǎng)址信息中包含所述廣告網(wǎng)頁的標(biāo)識信息,則判斷所述網(wǎng)頁為廣告網(wǎng)頁。
[0030]其中,所述攔截所述網(wǎng)頁的訪問操作包括:
[0031]通過所述攔截函數(shù)生成所述攔截點對應(yīng)的函數(shù)調(diào)用成功指令給所述外掛程序,指示所述外掛程序繼續(xù)運行,以將所述網(wǎng)頁的訪問操作攔截在所述攔截點。
[0032]本發(fā)明實施例還提供了一種廣告網(wǎng)頁的攔截裝置,其可包括:
[0033]第一判斷模塊,用于根據(jù)云端預(yù)存的外掛程序樣本判斷終端上運行的程序是否為外掛程序;
[0034]設(shè)置模塊,用于在所述第一判斷模塊判斷結(jié)果為是時,在所述外掛程序中插入攔截函數(shù),通過所述攔截函數(shù)設(shè)置攔截點;
[0035]第一獲取模塊,用于在所述設(shè)置模塊設(shè)置的所述攔截點獲取所述外掛程序訪問的網(wǎng)頁的網(wǎng)址信息
[0036]第二判斷模塊,用于根據(jù)所述第一獲取模塊獲取的所述網(wǎng)頁的網(wǎng)址信息判斷所述網(wǎng)頁是否為廣告網(wǎng)頁;
[0037]處理模塊,用于在所述第二判斷模塊判斷結(jié)果為是時,攔截所述網(wǎng)頁的訪問操作,在所述第二判斷模塊判斷結(jié)果為否時,執(zhí)行所述網(wǎng)頁的訪問操作。
[0038]其中,所述裝置還包括:
[0039]第二獲取模塊,用于獲取所述終端上正在運行的程序的標(biāo)識信息,以根據(jù)所述程序的標(biāo)識信息確定所述程序是否為外掛程序;
[0040]其中,所述程序的標(biāo)識信息包括:所述程序的名稱、存儲路徑或者運行方式中的至少一種。
[0041]其中,所述第一判斷模塊,具體用于:
[0042]將所述終端上運行的程序的所述標(biāo)識信息與所述云端預(yù)存的外掛程序樣本的標(biāo)識信息進行匹配,判斷所述程序的標(biāo)識信息是否包含在所述外掛程序樣本的標(biāo)識信息中;
[0043]若所述程序的標(biāo)識信息包含在所述外掛程序樣本的標(biāo)識信息中,則判斷所述程序為外掛程序。
[0044]其中,所述攔截函數(shù)具體為一個攔截程序或者一個攔截進程。
[0045]其中,所述設(shè)置模塊,具體用于:
[0046]將所述攔截程序插入至所述外掛程序中,或者將所述攔截進程插入至所述外掛程序的指定進程中;
[0047]通過所述攔截程序或者所述攔截進程,掛鉤Hook指定系統(tǒng)函數(shù)或者瀏覽器串行通訊端口 COM接口,以設(shè)定截獲所述外掛程序或者所述指定進程訪問的網(wǎng)頁的網(wǎng)址信息的攔截點。
[0048]其中,所述指定系統(tǒng)函數(shù)具體為創(chuàng)建進程的系統(tǒng)函數(shù);
[0049]所述創(chuàng)建進程的系統(tǒng)函數(shù)包括:CreateProcess、ShellExecute,以及WinExec中的至少一種。
[0050]其中,所述瀏覽器COM 接口包括:Navigate、Navigate2、NavigateHack,以及AggregatedNavigat1n 中的至少一種
[0051]其中,所述第一獲取模塊,具體用于:
[0052]通過所述外掛程序調(diào)用所述攔截函數(shù),Hook所述外掛程序或者所述指定進程中創(chuàng)建進程的系統(tǒng)函數(shù),獲取所述外掛程序訪問的網(wǎng)頁的網(wǎng)址信息;或者
[0053]通過所述外掛程序調(diào)用所述攔截函數(shù),Hook所述外掛程序或者所述指定進程調(diào)用的瀏覽器COM接口,獲取所述外掛程序訪問的網(wǎng)頁的網(wǎng)址信息;
[0054]其中,所述網(wǎng)頁的網(wǎng)址信息為所述網(wǎng)頁的統(tǒng)一資源定位符URL信息。
[0055]其中,所述第二判斷模塊,具體用于:
[0056]將所述網(wǎng)頁的網(wǎng)址信息與預(yù)存的廣告網(wǎng)頁的標(biāo)識信息進行匹配,判斷所述網(wǎng)頁的網(wǎng)址信息中是否包含所述廣告網(wǎng)頁的標(biāo)識信息;
[0057]若所述網(wǎng)頁的網(wǎng)址信息中包含所述廣告網(wǎng)頁的標(biāo)識信息,則判斷所述網(wǎng)頁為廣告網(wǎng)頁。
[0058]其中,所述處理模塊具體用于:
[0059]通過所述攔截函數(shù)生成所述攔截點對應(yīng)的函數(shù)調(diào)用成功指令給所述外掛程序,指示所述外掛程序繼續(xù)運行,以將所述網(wǎng)頁的訪問操作攔截在所述攔截點。
[0060]本發(fā)明實施例還提供了一種終端,其可包括:上述本發(fā)明實施例提供的廣告網(wǎng)頁的攔截裝置中的任意一項。
[0061]本發(fā)明實施例可在終端上運行的外掛程序中插入攔截函數(shù),通過插入的攔截函數(shù)截獲外掛程序訪問的網(wǎng)頁的網(wǎng)址信息,根據(jù)網(wǎng)址信息確定外掛程序訪問的網(wǎng)頁是否為廣告網(wǎng)頁,若是則攔截網(wǎng)頁的訪問操作,否則執(zhí)行網(wǎng)頁的訪問操作。本發(fā)明實施例提高了攔截終端運行外掛程序時彈出的廣告網(wǎng)頁的可行性,減少了攔截廣告網(wǎng)頁的終端功耗,保障終端運行外掛程序時的終端運行的流暢性,提高了終端的用戶體驗。
【專利附圖】
【附圖說明】
[0062]為了更清楚地說明本發(fā)明實施例中的技術(shù)方案,下面將對實施例描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0063]圖1是本發(fā)明實施例提供的廣告網(wǎng)頁的攔截方法的第一實施例流程示意圖;
[0064]圖2是本發(fā)明實施例提供的廣告網(wǎng)頁的攔截方法的第二實施例流程示意圖;
[0065]圖3是本發(fā)明實施例提供的廣告網(wǎng)頁的攔截裝置的第一實施例結(jié)構(gòu)示意圖;
[0066]圖4是本發(fā)明實施例提供的廣告網(wǎng)頁的攔截裝置的第二實施例結(jié)構(gòu)示意圖;
[0067]圖5是本發(fā)明實施例提供的終端的實施例結(jié)構(gòu)示意圖。
【具體實施方式】
[0068]下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
[0069]具體實現(xiàn)中,本發(fā)明實施例中所描述的終端具體可為:手機、電腦(包括組裝電腦和筆記本電腦)、平板電腦或者游戲機等,上述終端僅是舉例,而非窮舉,包含但不限于上述終端。
[0070]下面將結(jié)合圖1至圖5對本發(fā)明實施例提供的廣告網(wǎng)頁的攔截方法及裝置進行具體描述。
[0071]參見圖1,是本發(fā)明實施例提供的廣告網(wǎng)頁的攔截方法的第一實施例流程示意圖。本發(fā)明實施例中所描述的廣告網(wǎng)頁的攔截方法,包括步驟:
[0072]S101,根據(jù)云端預(yù)存的外掛程序樣本判斷終端上運行的程序是否為外掛程序,若判斷結(jié)果為是,則執(zhí)行步驟S102。
[0073]在一些可行的實施方式中,本發(fā)明實施例中所描述的廣告網(wǎng)頁的攔截方法可由手機、電腦等終端執(zhí)行。終端運行某一程序時,可從云端獲取云端上預(yù)存的外掛程序樣本,將終端上運行的程序的標(biāo)識信息與獲取到的外掛程序樣本的標(biāo)識信息進行匹配,判斷終端上運行的程序是否為外掛程序。當(dāng)終端上運行的程序為外掛程序時,可對該外掛程序進行監(jiān)控,判斷外掛程序運行的過程中是否有廣告網(wǎng)頁彈出,影響終端頁面的視覺效果,或者造成終端運行不舒暢等問題。
[0074]在一些可行的實施方式中,本發(fā)明實施例中所描述的判斷終端上運行的程序是否為外掛程序時,也可由云端進行鑒定。具體的,終端上述運行某個程序時,可將該程序的標(biāo)識信息發(fā)送至云端。云端接收到終端發(fā)送的上述程序的標(biāo)識信息之后,則可將上述程序的標(biāo)識信息與云端中預(yù)存的外掛程序樣本的標(biāo)識信息進行匹配,判斷上述終端上運行的程序是否為外掛程序。例如,當(dāng)云端判斷得知終端上運行的程序的標(biāo)識信息包含在外掛程序樣本的標(biāo)識信息中時,則可判斷得知上述終端上運行的程序為外掛程序。云端確定終端上運行的程序為外掛程序之后,則可將判斷結(jié)果發(fā)送給終端,告知終端該程序為外掛程序。終端獲知其運行的程序為外掛程序之后,則可對該程序進行監(jiān)控,以攔截外掛程序運行過程中出現(xiàn)的廣告網(wǎng)頁。本發(fā)明實施例可從云端獲取外掛程序樣本,加入云端控制,使得外掛程序樣本的數(shù)據(jù)可以及時地更新,用最新的外掛程序樣本數(shù)據(jù)對終端上運行的程序進行監(jiān)控,查獲終端上運行的各種新出的外掛程序,增強了終端上運行的外掛程序的監(jiān)控力度,以提高終端運行外掛程序時彈出的廣告網(wǎng)頁的攔截效率。
[0075]S102,在所述外掛程序中插入攔截函數(shù),通過所述攔截函數(shù)設(shè)置攔截點。
[0076]在一些可行的實施方式中,終端確定運行的程序為外掛程序之后,則可在該外掛程序中插入攔截函數(shù),通過上述攔截函數(shù)設(shè)置攔截點。具體實現(xiàn)中,本發(fā)明實施例中所描述的攔截函數(shù)具體可為一個攔截程序,或者一個攔截進程。其中,上述攔截程序具體可為插入到上述外掛程序中的一個子程序,外掛程序可直接執(zhí)行該子程序。上述攔截進程可為外掛程序運行的進程中的一個子進程,外掛程序運行相應(yīng)進程時可直接執(zhí)行該子進程。具體實現(xiàn)中,終端在外掛程序中插入攔截函數(shù),當(dāng)廣告網(wǎng)頁等網(wǎng)頁數(shù)據(jù)在該外掛程序中運行時,則將通過該攔截程序或者攔截進程進行處理,進而可將該攔截程序或者攔截進程設(shè)定為一個攔截點。上述攔截程序或者攔截進程對廣告網(wǎng)頁等網(wǎng)頁數(shù)據(jù)進行處理之后,則可返回相應(yīng)的處理結(jié)果(包括截獲相關(guān)網(wǎng)頁的網(wǎng)址信息等),外掛程序可根據(jù)該攔截程序或者攔截進程返回的處理結(jié)果繼續(xù)往下執(zhí)行相應(yīng)的操作,以此實現(xiàn)在外掛程序中設(shè)置攔截點,在該攔截點上攔截外掛程序運行的廣告網(wǎng)頁等網(wǎng)頁數(shù)據(jù)的操作,減少了對外掛程序中其他子程序或者外掛程序運行的進程中其他子進程的影響。
[0077]S103,在所述攔截點獲取所述外掛程序訪問的網(wǎng)頁的網(wǎng)址信息。
[0078]S104,判斷所述網(wǎng)頁是否為廣告網(wǎng)頁,若判斷結(jié)果為是,則執(zhí)行步驟S105,若判斷結(jié)果為否,則執(zhí)行步驟S106。
[0079]S105,攔截所述網(wǎng)頁的訪問操作。
[0080]S106,執(zhí)行所述網(wǎng)頁的訪問操作。
[0081]在一些可行的實施方式中,終端在外掛程序中插入攔截函數(shù),通過該攔截函數(shù)設(shè)定攔截點之后,則可在該攔截點上獲取外掛程序訪問的網(wǎng)頁的網(wǎng)址信息。在現(xiàn)有技術(shù)的實現(xiàn)方式中,外掛程序運行的過程中,若有廣告網(wǎng)頁等網(wǎng)頁數(shù)據(jù)插入,外掛程序則可運行該廣告網(wǎng)頁等網(wǎng)頁數(shù)據(jù),進而打開廣告網(wǎng)頁等頁面信息,實現(xiàn)對該網(wǎng)頁的訪問。本發(fā)明實施例,通過在外掛程序中插入攔截函數(shù),當(dāng)外掛程序訪問廣告網(wǎng)頁時,上述廣告網(wǎng)頁的網(wǎng)頁數(shù)據(jù)也將經(jīng)過該攔截函數(shù)進行處理,此時則可通過上述攔截函數(shù)獲取外掛程序訪問的網(wǎng)頁的網(wǎng)址信息等數(shù)據(jù)。終端獲取外掛程序訪問的網(wǎng)頁的網(wǎng)址信息之后,則可根據(jù)該網(wǎng)頁的網(wǎng)址信息判斷該網(wǎng)頁是否為廣告網(wǎng)頁。具體的,終端可將獲取到的網(wǎng)頁的網(wǎng)址信息與預(yù)先存儲于終端內(nèi)存中的廣告網(wǎng)頁的標(biāo)識信息進行匹配,判斷上述網(wǎng)頁的網(wǎng)址信息是否包含在終端預(yù)存的廣告網(wǎng)頁的標(biāo)識信息中,若判斷結(jié)果為是,則可判斷得知該網(wǎng)頁為廣告網(wǎng)頁,若判斷結(jié)果為否,則可判斷該網(wǎng)頁不是廣告網(wǎng)頁。
[0082]在一些可行的實施方式中,當(dāng)終端判斷得知外掛程序訪問的網(wǎng)頁為廣告網(wǎng)頁時,則可通過攔截函數(shù)生成該攔截點對應(yīng)的函數(shù)調(diào)用成功指令給外掛程序,指示外掛程序繼續(xù)運行,以此操作將網(wǎng)頁的訪問操作攔截在該攔截點上,外掛程序無法訪問該廣告網(wǎng)頁。具體實現(xiàn)中,由于外掛程序中插入了攔截函數(shù),外掛程序訪問廣告網(wǎng)頁時將調(diào)用上述攔截函數(shù)對廣告網(wǎng)頁的網(wǎng)頁數(shù)據(jù)等信息進行處理,攔截函數(shù)獲取到廣告網(wǎng)頁的網(wǎng)頁數(shù)據(jù)等信息之后,直接向外掛程序返回函數(shù)調(diào)用成功指令,而不是根據(jù)廣告網(wǎng)頁的網(wǎng)頁數(shù)據(jù)打開該廣告網(wǎng)頁,使得外掛程序誤以為攔截函數(shù)對廣告網(wǎng)頁的網(wǎng)頁數(shù)據(jù)處理完成了。外掛程序接收到攔截函數(shù)返回的指令之后將繼續(xù)運行,此時由于廣告網(wǎng)頁的網(wǎng)頁數(shù)據(jù)等信息被攔截函數(shù)截獲并且屏蔽了,則外掛程序?qū)o法打開廣告網(wǎng)頁,進而實現(xiàn)對廣告網(wǎng)頁的訪問操作的攔截,同時外掛程序依然按其正常的執(zhí)行步驟繼續(xù)運行,保障了外掛程序的正常運行和外掛程序運行時終端運行的流暢性。若外掛程序訪問的網(wǎng)頁是用戶正常打開的網(wǎng)頁,該網(wǎng)頁的網(wǎng)頁數(shù)據(jù)經(jīng)過攔截函數(shù)處理時,攔截函數(shù)則可將上述網(wǎng)頁數(shù)據(jù)進行處理,進而打開該網(wǎng)頁頁面,實現(xiàn)對網(wǎng)頁的正常訪問,并將數(shù)據(jù)處理結(jié)果返回給外掛程序。外掛程序接收到該網(wǎng)頁數(shù)據(jù)的處理結(jié)果之后,則可繼續(xù)運行,此時用戶訪問的網(wǎng)頁正常打開了,外掛程序也依然按照其正常的執(zhí)行步驟繼續(xù)運行,保障了外掛程序的正常運行和非廣告網(wǎng)頁的正常訪問,保障了終端運行外掛程序的流暢性和用戶使用終端的體驗效果。
[0083]在本發(fā)明實施例中,終端可根據(jù)云端預(yù)存的外掛程序樣本判斷終端上運行的程序是否為外掛程序,進而可在該外掛程序上插入攔截函數(shù),通過該攔截函數(shù)來獲取外掛程序訪問的網(wǎng)頁的網(wǎng)址信息等數(shù)據(jù),確定該網(wǎng)頁是否為廣告網(wǎng)頁。當(dāng)外掛程序訪問的網(wǎng)頁為廣告網(wǎng)頁時,則可攔截該網(wǎng)頁的訪問,若該網(wǎng)頁不是廣告網(wǎng)頁,則可正常打開該網(wǎng)頁。本發(fā)明實施例加入云端控制和攔截函數(shù)實現(xiàn)對廣告網(wǎng)頁的攔截,提高了廣告網(wǎng)頁的攔截的準(zhǔn)確性,減少了廣告網(wǎng)頁的攔截的功耗,保障了外掛程序運行的順暢性和用戶體驗。
[0084]參見圖2,是本發(fā)明實施例提供的廣告網(wǎng)頁的攔截方法的第二實施例流程示意圖。本發(fā)明實施例所描述的廣告網(wǎng)頁的攔截方法,包括步驟:
[0085]S201,獲取所述終端上正在運行的程序的標(biāo)識信息。
[0086]S202,將所述終端上運行的程序的所述標(biāo)識信息與所述云端預(yù)存的外掛程序樣本的標(biāo)識信息進行匹配。
[0087]S203,判斷所述程序的標(biāo)識信息是否包含在外掛程序樣本的標(biāo)識信息中,若判斷結(jié)果為是,則執(zhí)行步驟S204。
[0088]在一些可行的實施方式中,本發(fā)明實施例中所描述的廣告網(wǎng)頁的攔截方法可由手機、電腦等終端執(zhí)行。本發(fā)明實施例中所描述的程序的標(biāo)識信息可包括:程序的名稱、程序的存儲路徑或者運行方式等。本發(fā)明實施例中所描述的外掛程序樣本中可包括多種外掛程序,外掛程序樣本的標(biāo)識信息中可包括:外掛程序的名稱、外掛程序的存儲路徑、外掛程序的運行方式或者外掛程序的類型等,上述外掛程序的標(biāo)識信息僅是舉例,而非窮舉,包含但不限于上述標(biāo)識信息,在此不做限制。
[0089]具體實現(xiàn)中,終端運行某一程序時,可從云端獲取云端上預(yù)存的外掛程序樣本,將終端上運行的程序的標(biāo)識信息與獲取到的外掛程序樣本的標(biāo)識信息進行匹配,判斷上述終端上運行的程序的標(biāo)識信息是否包含在外掛程序樣本的標(biāo)識信息中,以此來判斷終端上運行的程序是否為外掛程序。當(dāng)上述程序的標(biāo)識信息包含在外掛程序樣本的標(biāo)識信息中,則可判斷得知上述終端上運行的程序為外掛程序。當(dāng)終端上運行的程序為外掛程序時,可對該外掛程序進行監(jiān)控,判斷外掛程序運行的過程中是否有廣告網(wǎng)頁彈出,影響終端頁面的視覺效果,或者造成終端運行不舒暢等問題。
[0090]在一些可行的實施方式中,本發(fā)明實施例中所描述的判斷終端上運行的程序是否為外掛程序時,也可由云端進行鑒定。具體的,終端上述運行某個程序時,可將該程序的標(biāo)識信息發(fā)送至云端。云端接收到終端發(fā)送的上述程序的標(biāo)識信息之后,則可將上述程序的標(biāo)識信息與云端中預(yù)存的外掛程序樣本的標(biāo)識信息進行匹配,判斷終端上運行的程序的標(biāo)識信息是否包含在外掛程序樣本的標(biāo)識信息中,以此判斷終端上運行的程序是否為外掛程序。當(dāng)云端判斷得知終端上運行的程序的標(biāo)識信息包含在外掛程序樣本的標(biāo)識信息中時,則可判斷得知上述終端上運行的程序為外掛程序。若終端上運行的程序的標(biāo)識信息不包含在外掛程序的標(biāo)識信息中,則可確定終端上運行的程序不是外掛程序。云端確定終端上運行的程序為外掛程序之后,則可將判斷結(jié)果發(fā)送給終端,告知終端該程序為外掛程序。終端獲知其運行的程序為外掛程序之后,則可對該程序進行監(jiān)控,以攔截外掛程序運行過程中出現(xiàn)的廣告網(wǎng)頁。本發(fā)明實施例可從云端獲取外掛程序樣本,加入云端控制,使得外掛程序樣本的數(shù)據(jù)可以及時地更新,用最新的外掛程序樣本數(shù)據(jù)對終端上運行的程序進行監(jiān)控,查獲終端上運行的各種新出的外掛程序,增強了終端上運行的外掛程序的監(jiān)控力度,提高了外掛程序檢測的準(zhǔn)確性。
[0091]S204,在所述外掛程序中插入攔截函數(shù),通過所述攔截函數(shù)設(shè)置攔截點。
[0092]在一些可行的實施方式中,終端確定運行的程序為外掛程序之后,則可在該外掛程序中插入攔截函數(shù),通過上述攔截函數(shù)設(shè)置攔截點。具體實現(xiàn)中,本發(fā)明實施例中所描述的攔截函數(shù)具體可為一個攔截程序,或者一個攔截進程。其中,上述攔截程序具體可為插入到上述外掛程序中的一個子程序,外掛程序可直接執(zhí)行該子程序。上述攔截進程可為外掛程序運行的進程中的一個子進程,外掛程序運行相應(yīng)進程時可直接執(zhí)行該子進程。具體實現(xiàn)中,終端可將上述攔截程序插入到外掛程序中,或者將攔截進程插入到外掛程序的指定進程中,通過上述攔截程序或者攔截進程,掛鉤Hook指定系統(tǒng)函數(shù)或者瀏覽器串行通訊端口(Cluster Communicat1n Port, COM)接口,通過Hook的實現(xiàn)方式設(shè)定截獲外掛程序或者指定進程訪問的網(wǎng)頁的網(wǎng)址信息的攔截點。
[0093]Hook是一種通過修改程序代碼從而達到改變程序執(zhí)行流程,在程序執(zhí)行過程中加入檢測流程的方法的實現(xiàn)掛鉤機制,通過Hook可在外掛程序的執(zhí)行過程中加入攔截函數(shù),通過該攔截函數(shù)來檢測外掛程序訪問網(wǎng)頁時的網(wǎng)頁數(shù)據(jù),進而獲取網(wǎng)頁的網(wǎng)址信息等數(shù)據(jù),以根據(jù)獲取到的網(wǎng)頁的網(wǎng)址信息等數(shù)據(jù)判斷外掛程序訪問的網(wǎng)頁是否為廣告網(wǎng)頁。在本發(fā)明實施例中,上述指定系統(tǒng)函數(shù)具體可為創(chuàng)建進程的系統(tǒng)函數(shù),即為打開外掛程序訪問的網(wǎng)頁的頁面而創(chuàng)建進程時調(diào)用的系統(tǒng)函數(shù)。具體的,上述創(chuàng)建進程的系統(tǒng)函數(shù)可包括:CreateProcess、ShellExecute,以及WinExec等,上述系統(tǒng)函數(shù)僅是舉例,而非窮舉,包含但不限于上述函數(shù)。
[0094]瀏覽器COM接口是瀏覽器提供的一系列COM接口,可供外部控制瀏覽器的行為。本發(fā)明實施例中所描述的瀏覽器COM接口可包括:Navigate、Navigate2、NavigateHack,以及AggregatedNavigat1n等,上述瀏覽器COM接口僅是舉例,而非窮舉,包含但不限于上述瀏覽器COM接口。
[0095]現(xiàn)有的外掛程序訪問廣告網(wǎng)頁等網(wǎng)頁的實現(xiàn)方式可包括:通過系統(tǒng)函數(shù)調(diào)用直接啟動瀏覽器訪問廣告網(wǎng)頁的網(wǎng)址,或者,通過調(diào)用瀏覽器COM接口并由系統(tǒng)進程創(chuàng)建瀏覽器彈出廣告網(wǎng)頁。本發(fā)明實施例可在外掛程序中插入攔截函數(shù),通過該攔截函數(shù)設(shè)置攔截點,Hook創(chuàng)建進程的系統(tǒng)函數(shù)或者Hook瀏覽器COM接口,進而可獲取外掛程序請求的網(wǎng)頁的網(wǎng)址信息。
[0096]在一些可行的實施方式中,終端在外掛程序中插入攔截函數(shù),當(dāng)廣告網(wǎng)頁等網(wǎng)頁數(shù)據(jù)在該外掛程序中運行時,則將通過該攔截程序或者攔截進程進行處理,進而可將該攔截程序或者攔截進程設(shè)定為一個攔截點。上述攔截程序或者攔截進程對廣告網(wǎng)頁等網(wǎng)頁數(shù)據(jù)進行處理之后,則可返回相應(yīng)的處理結(jié)果(包括截獲相關(guān)網(wǎng)頁的網(wǎng)址信息等),外掛程序可根據(jù)該攔截程序或者攔截進程返回的處理結(jié)果繼續(xù)往下執(zhí)行相應(yīng)的操作,以此實現(xiàn)在外掛程序中設(shè)置攔截點,在該攔截點上攔截外掛程序運行的廣告網(wǎng)頁等網(wǎng)頁數(shù)據(jù)的操作,減少了對外掛程序中其他子程序或者外掛程序運行的進程中其他子進程的影響。
[0097]S205,在所述攔截點獲取所述外掛程序訪問的網(wǎng)頁的網(wǎng)址信息。
[0098]S206,將所述網(wǎng)頁的網(wǎng)址信息與預(yù)存的廣告網(wǎng)頁的標(biāo)識信息進行匹配。
[0099]S207,判斷所述網(wǎng)頁的網(wǎng)址信息中是否包含所述廣告網(wǎng)頁的標(biāo)識信息,若判斷結(jié)果為是,則執(zhí)行步驟S208,若判斷結(jié)果為否,則執(zhí)行步驟S209。
[0100]S208,攔截所述網(wǎng)頁的訪問操作。
[0101]S209,執(zhí)行所述網(wǎng)頁的訪問操作。
[0102]在一些可行的實施方式中,終端在外掛程序中插入攔截函數(shù),通過該攔截函數(shù)設(shè)定攔截點之后,則可在該攔截點上獲取外掛程序訪問的網(wǎng)頁的網(wǎng)址信息。在現(xiàn)有技術(shù)的實現(xiàn)方式中,外掛程序運行的過程中,若有廣告網(wǎng)頁等網(wǎng)頁數(shù)據(jù)插入,外掛程序則可運行該廣告網(wǎng)頁等網(wǎng)頁數(shù)據(jù),進而打開廣告網(wǎng)頁等頁面信息,實現(xiàn)對該網(wǎng)頁的訪問。本發(fā)明實施例,通過在外掛程序中插入攔截函數(shù),當(dāng)外掛程序訪問廣告網(wǎng)頁時,上述廣告網(wǎng)頁的網(wǎng)頁數(shù)據(jù)也將經(jīng)過該攔截函數(shù)進行處理,此時則可通過上述攔截函數(shù)獲取外掛程序訪問的網(wǎng)頁的網(wǎng)址信息等數(shù)據(jù)。具體實現(xiàn)中,終端獲取外掛程序訪問的網(wǎng)頁的網(wǎng)址信息等信息時,可通過外掛程序調(diào)用上述攔截函數(shù),Hook外掛程序或者指定進程中創(chuàng)建進程的系統(tǒng)函數(shù),獲取外掛程序訪問的網(wǎng)頁的網(wǎng)址信息,或者通過外掛程序調(diào)用攔截函數(shù),Hook外掛程序或者指定進程調(diào)用的瀏覽器COM接口,獲取外掛程序訪問的網(wǎng)頁的網(wǎng)址信息。本發(fā)明實施例中所描述的網(wǎng)頁的網(wǎng)址信息具體可為網(wǎng)頁的統(tǒng)一資源定位符(Uniform Resource Locator, URL)信肩、O
[0103]在一些可行的實施方式中,終端獲取外掛程序訪問的網(wǎng)頁的URL之后,則可根據(jù)該網(wǎng)頁的URL判斷該網(wǎng)頁是否為廣告網(wǎng)頁。終端可將獲取到的網(wǎng)頁的網(wǎng)址信息(URL)與預(yù)先存儲于終端內(nèi)存中的廣告網(wǎng)頁的標(biāo)識信息進行匹配,判斷上述網(wǎng)頁的網(wǎng)址信息是否包含在終端預(yù)存的廣告網(wǎng)頁的標(biāo)識信息中,若判斷結(jié)果為是,則可判斷得知該網(wǎng)頁為廣告網(wǎng)頁,若判斷結(jié)果為否,則可判斷該網(wǎng)頁不是廣告網(wǎng)頁。
[0104]在一些可行的實施方式中,當(dāng)終端判斷得知外掛程序訪問的網(wǎng)頁為廣告網(wǎng)頁時,則可通過攔截函數(shù)生成該攔截點對應(yīng)的函數(shù)調(diào)用成功指令給外掛程序,指示外掛程序繼續(xù)運行,以此操作將網(wǎng)頁的訪問操作攔截在該攔截點上,外掛程序無法訪問該廣告網(wǎng)頁。具體實現(xiàn)中,由于外掛程序中插入了攔截函數(shù),外掛程序訪問廣告網(wǎng)頁時將調(diào)用上述攔截函數(shù)對廣告網(wǎng)頁的網(wǎng)頁數(shù)據(jù)等信息進行處理,攔截函數(shù)獲取到廣告網(wǎng)頁的網(wǎng)頁數(shù)據(jù)等信息之后,直接向外掛程序返回函數(shù)調(diào)用成功指令,而不是根據(jù)廣告網(wǎng)頁的網(wǎng)頁數(shù)據(jù)打開該廣告網(wǎng)頁,使得外掛程序誤以為攔截函數(shù)對廣告網(wǎng)頁的網(wǎng)頁數(shù)據(jù)處理完成了。外掛程序接收到攔截函數(shù)返回的指令之后將繼續(xù)運行,此時由于廣告網(wǎng)頁的網(wǎng)頁數(shù)據(jù)等信息被攔截函數(shù)截獲并且屏蔽了,則外掛程序?qū)o法打開廣告網(wǎng)頁,進而實現(xiàn)對廣告網(wǎng)頁的訪問操作的攔截,同時外掛程序依然按其正常的執(zhí)行步驟繼續(xù)運行,保障了外掛程序的正常運行和外掛程序運行時終端運行的流暢性。若外掛程序訪問的網(wǎng)頁是用戶正常打開的網(wǎng)頁,該網(wǎng)頁的網(wǎng)頁數(shù)據(jù)經(jīng)過攔截函數(shù)處理時,攔截函數(shù)則可將上述網(wǎng)頁數(shù)據(jù)進行處理,進而打開該網(wǎng)頁頁面,實現(xiàn)對網(wǎng)頁的正常訪問,并將數(shù)據(jù)處理結(jié)果返回給外掛程序。外掛程序接收到該網(wǎng)頁數(shù)據(jù)的處理結(jié)果之后,則可繼續(xù)運行,此時用戶訪問的網(wǎng)頁正常打開了,外掛程序也依然按照其正常的執(zhí)行步驟繼續(xù)運行,保障了外掛程序的正常運行和非廣告網(wǎng)頁的正常訪問,保障了終端運行外掛程序的流暢性和用戶使用終端的體驗效果。
[0105]在本發(fā)明實施例中,終端可根據(jù)云端預(yù)存的外掛程序樣本判斷終端上運行的程序是否為外掛程序,進而可在該外掛程序上插入攔截函數(shù),通過該攔截函數(shù)Hook外掛程序中的創(chuàng)建進程的系統(tǒng)函數(shù)或者Hook瀏覽器COM接口,獲取外掛程序訪問的網(wǎng)頁的網(wǎng)址信息等數(shù)據(jù),進而根據(jù)獲取到的網(wǎng)頁的網(wǎng)址信息確定該網(wǎng)頁是否為廣告網(wǎng)頁。當(dāng)外掛程序訪問的網(wǎng)頁為廣告網(wǎng)頁時,則可攔截該網(wǎng)頁的訪問,若該網(wǎng)頁不是廣告網(wǎng)頁,則可正常打開該網(wǎng)頁。本發(fā)明實施例加入云端控制和攔截函數(shù)實現(xiàn)對廣告網(wǎng)頁的攔截,提高了廣告網(wǎng)頁的攔截的準(zhǔn)確性,減少了廣告網(wǎng)頁的攔截的功耗,保障了外掛程序運行的順暢性和用戶體驗。
[0106]參見圖3,是本發(fā)明實施例提供的廣告網(wǎng)頁的攔截裝置的第一實施例結(jié)構(gòu)示意圖。本實施例中所描述的攔截裝置,包括:
[0107]第一判斷模塊10,用于根據(jù)云端預(yù)存的外掛程序樣本判斷終端上運行的程序是否為外掛程序。
[0108]設(shè)置模塊20,用于在所述第一判斷模塊判斷結(jié)果為是時,在所述外掛程序中插入攔截函數(shù),通過所述攔截函數(shù)設(shè)置攔截點。
[0109]第一獲取模塊30,用于在所述設(shè)置模塊設(shè)置的所述攔截點獲取所述外掛程序訪問的網(wǎng)頁的網(wǎng)址信息。
[0110]第二判斷模塊40,用于根據(jù)所述第一獲取模塊獲取的所述網(wǎng)頁的網(wǎng)址信息判斷所述網(wǎng)頁是否為廣告網(wǎng)頁。
[0111]處理模塊50,用于在所述第二判斷模塊判斷結(jié)果為是時,攔截所述網(wǎng)頁的訪問操作,在所述第二判斷模塊判斷結(jié)果為否時,執(zhí)行所述網(wǎng)頁的訪問操作。
[0112]在一些可行的實施方式中,本發(fā)明實施例中所描述的廣告網(wǎng)頁的攔截裝置具體可為手機、電腦等終端。終端運行某一程序時,第一判斷模塊10可從云端獲取云端上預(yù)存的外掛程序樣本,將終端上運行的程序的標(biāo)識信息與獲取到的外掛程序樣本的標(biāo)識信息進行匹配,判斷終端上運行的程序是否為外掛程序。當(dāng)?shù)谝慌袛嗄K10判斷得知終端上運行的程序為外掛程序時,終端則可對該外掛程序進行監(jiān)控,判斷外掛程序運行的過程中是否有廣告網(wǎng)頁彈出,影響終端頁面的視覺效果,或者造成終端運行不舒暢等問題。
[0113]在一些可行的實施方式中,本發(fā)明實施例中所描述的判斷終端上運行的程序是否為外掛程序時,也可由第一判斷模塊10和云端協(xié)作鑒定。具體的,終端上述運行某個程序時,第一判斷模塊10可將該程序的標(biāo)識信息發(fā)送至云端。云端接收到第一判斷模塊10發(fā)送的上述程序的標(biāo)識信息之后,則可將上述程序的標(biāo)識信息與云端中預(yù)存的外掛程序樣本的標(biāo)識信息進行匹配,判斷上述終端上運行的程序是否為外掛程序。例如,當(dāng)云端判斷得知終端上運行的程序的標(biāo)識信息包含在外掛程序樣本的標(biāo)識信息中時,則可判斷得知上述終端上運行的程序為外掛程序。云端確定終端上運行的程序為外掛程序之后,則可將判斷結(jié)果發(fā)送給第一判斷模塊10,告知第一判斷模塊10該程序為外掛程序。終端通過第一判斷模塊10獲知其運行的程序為外掛程序之后,則可對該程序進行監(jiān)控,以攔截外掛程序運行過程中出現(xiàn)的廣告網(wǎng)頁。本發(fā)明實施例中所描述的終端可從云端獲取外掛程序樣本,加入云端控制,使得外掛程序樣本的數(shù)據(jù)可以及時地更新,用最新的外掛程序樣本數(shù)據(jù)對終端上運行的程序進行監(jiān)控,查獲終端上運行的各種新出的外掛程序,增強了終端上運行的外掛程序的監(jiān)控力度,以提高終端運行外掛程序時彈出的廣告網(wǎng)頁的攔截效率。
[0114]在一些可行的實施方式中,終端通過第一判斷模塊10確定運行的程序為外掛程序之后,則可通過設(shè)置模塊20在該外掛程序中插入攔截函數(shù),通過上述攔截函數(shù)設(shè)置攔截點。具體實現(xiàn)中,本發(fā)明實施例中所描述的攔截函數(shù)具體可為一個攔截程序,或者一個攔截進程。其中,上述攔截程序具體可為插入到上述外掛程序中的一個子程序,外掛程序可直接執(zhí)行該子程序。上述攔截進程可為外掛程序運行的進程中的一個子進程,外掛程序運行相應(yīng)進程時可直接執(zhí)行該子進程。具體實現(xiàn)中,設(shè)置模塊20在外掛程序中插入攔截函數(shù),當(dāng)廣告網(wǎng)頁等網(wǎng)頁數(shù)據(jù)在該外掛程序中運行時,則將通過該攔截程序或者攔截進程進行處理,進而可將該攔截程序或者攔截進程設(shè)定為一個攔截點。上述攔截程序或者攔截進程對廣告網(wǎng)頁等網(wǎng)頁數(shù)據(jù)進行處理之后,則可返回相應(yīng)的處理結(jié)果(包括截獲相關(guān)網(wǎng)頁的網(wǎng)址信息等),外掛程序可根據(jù)該攔截程序或者攔截進程返回的處理結(jié)果繼續(xù)往下執(zhí)行相應(yīng)的操作,以此實現(xiàn)在外掛程序中設(shè)置攔截點,在該攔截點上攔截外掛程序運行的廣告網(wǎng)頁等網(wǎng)頁數(shù)據(jù)的操作,減少了對外掛程序中其他子程序或者外掛程序運行的進程中其他子進程的影響。
[0115]在一些可行的實施方式中,終端通過設(shè)置模塊20在外掛程序中插入攔截函數(shù),通過該攔截函數(shù)設(shè)定攔截點之后,第一獲取模塊30則可在該攔截點上獲取外掛程序訪問的網(wǎng)頁的網(wǎng)址信息。在現(xiàn)有技術(shù)的實現(xiàn)方式中,外掛程序運行的過程中,若有廣告網(wǎng)頁等網(wǎng)頁數(shù)據(jù)插入,外掛程序則可運行該廣告網(wǎng)頁等網(wǎng)頁數(shù)據(jù),進而打開廣告網(wǎng)頁等頁面信息,實現(xiàn)對該網(wǎng)頁的訪問。本發(fā)明實施例,終端通過設(shè)置模塊20在外掛程序中插入攔截函數(shù),當(dāng)外掛程序訪問廣告網(wǎng)頁時,上述廣告網(wǎng)頁的網(wǎng)頁數(shù)據(jù)也將經(jīng)過該攔截函數(shù)進行處理,此時第一獲取模塊30則可通過上述攔截函數(shù)獲取外掛程序訪問的網(wǎng)頁的網(wǎng)址信息等數(shù)據(jù)。終端通過第一獲取模塊30獲取外掛程序訪問的網(wǎng)頁的網(wǎng)址信息之后,第二判斷模塊40則可根據(jù)第一獲取模塊30獲取到的該網(wǎng)頁的網(wǎng)址信息判斷該網(wǎng)頁是否為廣告網(wǎng)頁。具體的,第二判斷模塊40可將獲取到的網(wǎng)頁的網(wǎng)址信息與預(yù)先存儲于終端內(nèi)存中的廣告網(wǎng)頁的標(biāo)識信息進行匹配,判斷上述網(wǎng)頁的網(wǎng)址信息是否包含在終端預(yù)存的廣告網(wǎng)頁的標(biāo)識信息中,若判斷結(jié)果為是,則可判斷得知該網(wǎng)頁為廣告網(wǎng)頁,若判斷結(jié)果為否,則可判斷該網(wǎng)頁不是廣告網(wǎng)頁。
[0116]在一些可行的實施方式中,當(dāng)?shù)诙袛嗄K40判斷得知外掛程序訪問的網(wǎng)頁為廣告網(wǎng)頁時,處理模塊50則可通過攔截函數(shù)生成該攔截點對應(yīng)的函數(shù)調(diào)用成功指令給外掛程序,指示外掛程序繼續(xù)運行,以此操作將網(wǎng)頁的訪問操作攔截在該攔截點上,外掛程序無法訪問該廣告網(wǎng)頁。具體實現(xiàn)中,由于設(shè)置模塊20在外掛程序中插入了攔截函數(shù),外掛程序訪問廣告網(wǎng)頁時第一判斷模塊40將調(diào)用上述攔截函數(shù)對廣告網(wǎng)頁的網(wǎng)頁數(shù)據(jù)等信息進行處理,通過攔截函數(shù)獲取到廣告網(wǎng)頁的網(wǎng)頁數(shù)據(jù)等信息之后,通過處理模塊50直接向外掛程序返回函數(shù)調(diào)用成功指令。此時,處理模塊50將不對廣告網(wǎng)頁的網(wǎng)頁數(shù)據(jù)進行處理,即,屏蔽該廣告網(wǎng)頁,使得外掛程序誤以為攔截函數(shù)對廣告網(wǎng)頁的網(wǎng)頁數(shù)據(jù)處理完成了。外掛程序接收到攔截函數(shù)返回的指令之后將繼續(xù)運行,此時由于廣告網(wǎng)頁的網(wǎng)頁數(shù)據(jù)等信息被攔截函數(shù)截獲并且屏蔽了,則外掛程序?qū)o法打開廣告網(wǎng)頁,進而實現(xiàn)對廣告網(wǎng)頁的訪問操作的攔截,同時外掛程序依然按其正常的執(zhí)行步驟繼續(xù)運行,保障了外掛程序的正常運行和外掛程序運行時終端運行的流暢性。若外掛程序訪問的網(wǎng)頁是用戶正常打開的網(wǎng)頁,處理模塊50將通過攔截函數(shù)對該網(wǎng)頁的網(wǎng)頁數(shù)據(jù)進行處理,該網(wǎng)頁的網(wǎng)頁數(shù)據(jù)經(jīng)過攔截函數(shù)處理時,攔截函數(shù)則可將上述網(wǎng)頁數(shù)據(jù)進行處理,進而打開該網(wǎng)頁頁面,實現(xiàn)對網(wǎng)頁的正常訪問,并通過處理模塊50將數(shù)據(jù)處理結(jié)果返回給外掛程序。外掛程序接收到該網(wǎng)頁數(shù)據(jù)的處理結(jié)果之后,則可繼續(xù)運行,此時用戶訪問的網(wǎng)頁正常打開了,外掛程序也依然按照其正常的執(zhí)行步驟繼續(xù)運行,保障了外掛程序的正常運行和非廣告網(wǎng)頁的正常訪問,保障了終端運行外掛程序的流暢性和用戶使用終端的體驗效果。
[0117]在本發(fā)明實施例中,終端可根據(jù)云端預(yù)存的外掛程序樣本判斷終端上運行的程序是否為外掛程序,進而可在該外掛程序上插入攔截函數(shù),通過該攔截函數(shù)來獲取外掛程序訪問的網(wǎng)頁的網(wǎng)址信息等數(shù)據(jù),確定該網(wǎng)頁是否為廣告網(wǎng)頁。當(dāng)外掛程序訪問的網(wǎng)頁為廣告網(wǎng)頁時,則可攔截該網(wǎng)頁的訪問,若該網(wǎng)頁不是廣告網(wǎng)頁,則可正常打開該網(wǎng)頁。本發(fā)明實施例加入云端控制和攔截函數(shù)實現(xiàn)對廣告網(wǎng)頁的攔截,提高了廣告網(wǎng)頁的攔截的準(zhǔn)確性,減少了廣告網(wǎng)頁的攔截的功耗,保障了外掛程序運行的順暢性和用戶體驗。
[0118]參見圖4,是本發(fā)明實施例提供的廣告網(wǎng)頁的攔截裝置的第二實施例結(jié)構(gòu)示意圖。本實施例中所描述的攔截裝置,包括:
[0119]第二獲取模塊60,用于獲取所述終端上正在運行的程序的標(biāo)識信息,以根據(jù)所述程序的標(biāo)識信息確定所述程序是否為外掛程序。
[0120]第一判斷模塊70,用于根據(jù)云端預(yù)存的外掛程序樣本判斷終端上運行的程序是否為外掛程序。
[0121]設(shè)置模塊80,用于在所述第一判斷模塊判斷結(jié)果為是時,在所述外掛程序中插入攔截函數(shù),通過所述攔截函數(shù)設(shè)置攔截點。
[0122]第一獲取模塊90,用于在所述設(shè)置模塊設(shè)置的所述攔截點獲取所述外掛程序訪問的網(wǎng)頁的網(wǎng)址信息。
[0123]第二判斷模塊91,用于根據(jù)所述第一獲取模塊獲取的所述網(wǎng)頁的網(wǎng)址信息判斷所述網(wǎng)頁是否為廣告網(wǎng)頁。
[0124]處理模塊92,用于在所述第二判斷模塊判斷結(jié)果為是時,攔截所述網(wǎng)頁的訪問操作,在所述第二判斷模塊判斷結(jié)果為否時,執(zhí)行所述網(wǎng)頁的訪問操作。
[0125]在一些可行的實施方式中,上述第一判斷模塊70,具體用于:
[0126]將所述終端上運行的程序的所述標(biāo)識信息與所述云端預(yù)存的外掛程序樣本的標(biāo)識信息進行匹配,判斷所述程序的標(biāo)識信息是否包含在所述外掛程序樣本的標(biāo)識信息中;
[0127]若所述程序的標(biāo)識信息包含在所述外掛程序樣本的標(biāo)識信息中,則判斷所述程序為外掛程序。
[0128]在一些可行的實施方式中,上述設(shè)置模塊80,具體用于:
[0129]將所述攔截程序插入至所述外掛程序中,或者將所述攔截進程插入至所述外掛程序的指定進程中;
[0130]通過所述攔截程序或者所述攔截進程,掛鉤Hook指定系統(tǒng)函數(shù)或者瀏覽器串行通訊端口 COM接口,以設(shè)定截獲所述外掛程序或者所述指定進程訪問的網(wǎng)頁的網(wǎng)址信息的攔截點。
[0131]在一些可行的實施方式中,上述第一獲取模塊90,具體用于:
[0132]通過所述外掛程序調(diào)用所述攔截函數(shù),Hook所述外掛程序或者所述指定進程中創(chuàng)建進程的系統(tǒng)函數(shù),獲取所述外掛程序訪問的網(wǎng)頁的網(wǎng)址信息;或者
[0133]通過所述外掛程序調(diào)用所述攔截函數(shù),Hook所述外掛程序或者所述指定進程調(diào)用的瀏覽器COM接口,獲取所述外掛程序訪問的網(wǎng)頁的網(wǎng)址信息;
[0134]其中,所述網(wǎng)頁的網(wǎng)址信息為所述網(wǎng)頁的統(tǒng)一資源定位符URL信息。
[0135]在一些可行的實施方式中,上述第二判斷模塊91,具體用于:
[0136]將所述網(wǎng)頁的網(wǎng)址信息與預(yù)存的廣告網(wǎng)頁的標(biāo)識信息進行匹配,判斷所述網(wǎng)頁的網(wǎng)址信息中是否包含所述廣告網(wǎng)頁的標(biāo)識信息;
[0137]若所述網(wǎng)頁的網(wǎng)址信息中包含所述廣告網(wǎng)頁的標(biāo)識信息,則判斷所述網(wǎng)頁為廣告網(wǎng)頁。
[0138]在一些可行的實施方式中,上述處理模塊92,具體用于:
[0139]通過所述攔截函數(shù)生成所述攔截點對應(yīng)的函數(shù)調(diào)用成功指令給所述外掛程序,指示所述外掛程序繼續(xù)運行,以將所述網(wǎng)頁的訪問操作攔截在所述攔截點。
[0140]在一些可行的實施方式中,本發(fā)明實施例中所描述的廣告網(wǎng)頁的攔截裝置具體可為手機、電腦等終端。本發(fā)明實施例中所描述的程序的標(biāo)識信息可包括:程序的名稱、程序的存儲路徑或者運行方式等。本發(fā)明實施例中所描述的外掛程序樣本中可包括多種外掛程序,外掛程序樣本的標(biāo)識信息中可包括:外掛程序的名稱、外掛程序的存儲路徑、外掛程序的運行方式或者外掛程序的類型等,上述外掛程序的標(biāo)識信息僅是舉例,而非窮舉,包含但不限于上述標(biāo)識信息,在此不做限制。
[0141]具體實現(xiàn)中,終端運行某一程序時,第二獲取模塊60可從云端獲取云端上預(yù)存的外掛程序樣本,通過第一判斷模塊70將終端上運行的程序的標(biāo)識信息與第二獲取模塊60獲取到的外掛程序樣本的標(biāo)識信息進行匹配,判斷上述終端上運行的程序的標(biāo)識信息是否包含在外掛程序樣本的標(biāo)識信息中,以此來判斷終端上運行的程序是否為外掛程序。當(dāng)上述程序的標(biāo)識信息包含在外掛程序樣本的標(biāo)識信息中,第一判斷模塊70則可判斷得知上述終端上運行的程序為外掛程序。當(dāng)終端上運行的程序為外掛程序時,終端則可對該外掛程序進行監(jiān)控,判斷外掛程序運行的過程中是否有廣告網(wǎng)頁彈出,影響終端頁面的視覺效果,或者造成終端運行不舒暢等問題。
[0142]在一些可行的實施方式中,本發(fā)明實施例中所描述的判斷終端上運行的程序是否為外掛程序時,也可由云端進行鑒定。具體的,終端上述運行某個程序時,可通過第一判斷模塊70將該程序的標(biāo)識信息發(fā)送至云端。云端接收到終端發(fā)送的上述程序的標(biāo)識信息之后,則可將上述程序的標(biāo)識信息與云端中預(yù)存的外掛程序樣本的標(biāo)識信息進行匹配,判斷終端上運行的程序的標(biāo)識信息是否包含在外掛程序樣本的標(biāo)識信息中,以此判斷終端上運行的程序是否為外掛程序。當(dāng)云端判斷得知終端上運行的程序的標(biāo)識信息包含在外掛程序樣本的標(biāo)識信息中時,則可判斷得知上述終端上運行的程序為外掛程序。若終端上運行的程序的標(biāo)識信息不包含在外掛程序的標(biāo)識信息中,則可確定終端上運行的程序不是外掛程序。云端確定終端上運行的程序為外掛程序之后,則可將判斷結(jié)果發(fā)送給終端,告知終端該程序為外掛程序。終端的第一判斷模塊70可接收云端發(fā)送的判斷結(jié)果,獲知其運行的程序為外掛程序,進而通過終端的其他模塊對該程序進行監(jiān)控,以攔截外掛程序運行過程中出現(xiàn)的廣告網(wǎng)頁。本發(fā)明實施例中所描述的終端可從云端獲取外掛程序樣本,加入云端控制,使得外掛程序樣本的數(shù)據(jù)可以及時地更新,用最新的外掛程序樣本數(shù)據(jù)對終端上運行的程序進行監(jiān)控,查獲終端上運行的各種新出的外掛程序,增強了終端上運行的外掛程序的監(jiān)控力度,提高了外掛程序檢測的準(zhǔn)確性。
[0143]在一些可行的實施方式中,終端的第一判斷模塊70確定運行的程序為外掛程序之后,則可通過設(shè)置模塊80在該外掛程序中插入攔截函數(shù),通過上述攔截函數(shù)設(shè)置攔截點。具體實現(xiàn)中,本發(fā)明實施例中所描述的攔截函數(shù)具體可為一個攔截程序,或者一個攔截進程。其中,上述攔截程序具體可為插入到上述外掛程序中的一個子程序,外掛程序可直接執(zhí)行該子程序。上述攔截進程可為外掛程序運行的進程中的一個子進程,外掛程序運行相應(yīng)進程時可直接執(zhí)行該子進程。具體實現(xiàn)中,設(shè)置模塊80可將上述攔截程序插入到外掛程序中,或者將攔截進程插入到外掛程序的指定進程中,通過上述攔截程序或者攔截進程,Hook指定系統(tǒng)函數(shù)或者瀏覽器COM接口,通過Hook的實現(xiàn)方式設(shè)定截獲外掛程序或者指定進程訪問的網(wǎng)頁的網(wǎng)址信息的攔截點。
[0144]Hook是一種通過修改程序代碼從而達到改變程序執(zhí)行流程,在程序執(zhí)行過程中加入檢測流程的方法的實現(xiàn)掛鉤機制,通過Hook可在外掛程序的執(zhí)行過程中加入攔截函數(shù),通過該攔截函數(shù)來檢測外掛程序訪問網(wǎng)頁時的網(wǎng)頁數(shù)據(jù),進而獲取網(wǎng)頁的網(wǎng)址信息等數(shù)據(jù),以根據(jù)獲取到的網(wǎng)頁的網(wǎng)址信息等數(shù)據(jù)判斷外掛程序訪問的網(wǎng)頁是否為廣告網(wǎng)頁。在本發(fā)明實施例中,上述指定系統(tǒng)函數(shù)具體可為創(chuàng)建進程的系統(tǒng)函數(shù),即為打開外掛程序訪問的網(wǎng)頁的頁面而創(chuàng)建進程時調(diào)用的系統(tǒng)函數(shù)。具體的,上述創(chuàng)建進程的系統(tǒng)函數(shù)可包括:CreateProcess、ShellExecute,以及WinExec等,上述系統(tǒng)函數(shù)僅是舉例,而非窮舉,包含但不限于上述函數(shù)。
[0145]瀏覽器COM接口是瀏覽器提供的一系列COM接口,可供外部控制瀏覽器的行為。本發(fā)明實施例中所描述的瀏覽器COM接口可包括:Navigate、Navigate2、NavigateHack,以及AggregatedNavigat1n等,上述瀏覽器COM接口僅是舉例,而非窮舉,包含但不限于上述瀏覽器COM接口。
[0146]現(xiàn)有的外掛程序訪問廣告網(wǎng)頁等網(wǎng)頁的實現(xiàn)方式可包括:通過系統(tǒng)函數(shù)調(diào)用直接啟動瀏覽器訪問廣告網(wǎng)頁的網(wǎng)址,或者,通過調(diào)用瀏覽器COM接口并由系統(tǒng)進程創(chuàng)建瀏覽器彈出廣告網(wǎng)頁。本發(fā)明實施例中所描述的終端可通過設(shè)置模塊80在外掛程序中插入攔截函數(shù),通過該攔截函數(shù)設(shè)置攔截點,Hook創(chuàng)建進程的系統(tǒng)函數(shù)或者Hook瀏覽器COM接口,進而可獲取外掛程序請求的網(wǎng)頁的網(wǎng)址信息。
[0147]在一些可行的實施方式中,設(shè)置模塊80在外掛程序中插入攔截函數(shù),當(dāng)廣告網(wǎng)頁等網(wǎng)頁數(shù)據(jù)在該外掛程序中運行時,則將通過該攔截程序或者攔截進程進行處理,進而可將該攔截程序或者攔截進程設(shè)定為一個攔截點。上述攔截程序或者攔截進程對廣告網(wǎng)頁等網(wǎng)頁數(shù)據(jù)進行處理之后,則可返回相應(yīng)的處理結(jié)果(包括截獲相關(guān)網(wǎng)頁的網(wǎng)址信息等),外掛程序可根據(jù)該攔截程序或者攔截進程返回的處理結(jié)果繼續(xù)往下執(zhí)行相應(yīng)的操作,以此實現(xiàn)在外掛程序中設(shè)置攔截點,在該攔截點上攔截外掛程序運行的廣告網(wǎng)頁等網(wǎng)頁數(shù)據(jù)的操作,減少了對外掛程序中其他子程序或者外掛程序運行的進程中其他子進程的影響。
[0148]在一些可行的實施方式中,設(shè)置模塊80在外掛程序中插入攔截函數(shù),通過該攔截函數(shù)設(shè)定攔截點之后,第一獲取模塊90則可在該攔截點上獲取外掛程序訪問的網(wǎng)頁的網(wǎng)址信息。在現(xiàn)有技術(shù)的實現(xiàn)方式中,外掛程序運行的過程中,若有廣告網(wǎng)頁等網(wǎng)頁數(shù)據(jù)插入,外掛程序則可運行該廣告網(wǎng)頁等網(wǎng)頁數(shù)據(jù),進而打開廣告網(wǎng)頁等頁面信息,實現(xiàn)對該網(wǎng)頁的訪問。本發(fā)明實施例,通過設(shè)置模塊80在外掛程序中插入攔截函數(shù),當(dāng)外掛程序訪問廣告網(wǎng)頁時,上述廣告網(wǎng)頁的網(wǎng)頁數(shù)據(jù)也將經(jīng)過該攔截函數(shù)進行處理,此時第一獲取模塊90則可通過上述攔截函數(shù)獲取外掛程序訪問的網(wǎng)頁的網(wǎng)址信息等數(shù)據(jù)。具體實現(xiàn)中,第一獲取模塊90獲取外掛程序訪問的網(wǎng)頁的網(wǎng)址信息等信息時,可通過外掛程序調(diào)用上述攔截函數(shù),Hook外掛程序或者指定進程中創(chuàng)建進程的系統(tǒng)函數(shù),獲取外掛程序訪問的網(wǎng)頁的網(wǎng)址信息,或者通過外掛程序調(diào)用攔截函數(shù),Hook外掛程序或者指定進程調(diào)用的瀏覽器COM接口,獲取外掛程序訪問的網(wǎng)頁的網(wǎng)址信息。本發(fā)明實施例中所描述的網(wǎng)頁的網(wǎng)址信息具體可為網(wǎng)頁的統(tǒng)一資源定位符(Uniform Resource Locator, URL)信息。
[0149]在一些可行的實施方式中,第一獲取模塊90獲取外掛程序訪問的網(wǎng)頁的URL之后,第二判斷模塊91則可根據(jù)第一獲取模塊90獲取到的該網(wǎng)頁的URL判斷該網(wǎng)頁是否為廣告網(wǎng)頁。第二判斷模塊91可將獲取到的網(wǎng)頁的網(wǎng)址信息(URL)與預(yù)先存儲于終端內(nèi)存中的廣告網(wǎng)頁的標(biāo)識信息進行匹配,判斷上述網(wǎng)頁的網(wǎng)址信息是否包含在終端預(yù)存的廣告網(wǎng)頁的標(biāo)識信息中,若判斷結(jié)果為是,則可判斷得知該網(wǎng)頁為廣告網(wǎng)頁,若判斷結(jié)果為否,則可判斷該網(wǎng)頁不是廣告網(wǎng)頁。
[0150]在一些可行的實施方式中,當(dāng)?shù)诙袛嗄K91判斷得知外掛程序訪問的網(wǎng)頁為廣告網(wǎng)頁時,處理模塊92則可通過攔截函數(shù)生成該攔截點對應(yīng)的函數(shù)調(diào)用成功指令給外掛程序,指示外掛程序繼續(xù)運行,以此操作將網(wǎng)頁的訪問操作攔截在該攔截點上,外掛程序無法訪問該廣告網(wǎng)頁。具體實現(xiàn)中,由于設(shè)置模塊80在外掛程序中插入了攔截函數(shù),外掛程序訪問廣告網(wǎng)頁時將調(diào)用上述攔截函數(shù)對廣告網(wǎng)頁的網(wǎng)頁數(shù)據(jù)等信息進行處理,第一獲取模塊90通過攔截函數(shù)獲取到廣告網(wǎng)頁的網(wǎng)頁數(shù)據(jù)等信息之后,可通過處理模塊92直接向外掛程序返回函數(shù)調(diào)用成功指令,而不是根據(jù)廣告網(wǎng)頁的網(wǎng)頁數(shù)據(jù)打開該廣告網(wǎng)頁,使得外掛程序誤以為攔截函數(shù)對廣告網(wǎng)頁的網(wǎng)頁數(shù)據(jù)處理完成了。外掛程序接收到攔截函數(shù)返回的指令之后將繼續(xù)運行,此時由于廣告網(wǎng)頁的網(wǎng)頁數(shù)據(jù)等信息被攔截函數(shù)截獲并且屏蔽了,則外掛程序?qū)o法打開廣告網(wǎng)頁,進而實現(xiàn)對廣告網(wǎng)頁的訪問操作的攔截,同時外掛程序依然按其正常的執(zhí)行步驟繼續(xù)運行,保障了外掛程序的正常運行和外掛程序運行時終端運行的流暢性。若外掛程序訪問的網(wǎng)頁是用戶正常打開的網(wǎng)頁,該網(wǎng)頁的網(wǎng)頁數(shù)據(jù)經(jīng)過攔截函數(shù)處理時,處理模塊92則可通過攔截函數(shù)則可將上述網(wǎng)頁數(shù)據(jù)進行處理,進而打開該網(wǎng)頁頁面,實現(xiàn)對網(wǎng)頁的正常訪問,并將數(shù)據(jù)處理結(jié)果返回給外掛程序。外掛程序接收到該網(wǎng)頁數(shù)據(jù)的處理結(jié)果之后,則可繼續(xù)運行,此時用戶訪問的網(wǎng)頁正常打開了,外掛程序也依然按照其正常的執(zhí)行步驟繼續(xù)運行,保障了外掛程序的正常運行和非廣告網(wǎng)頁的正常訪問,保障了終端運行外掛程序的流暢性和用戶使用終端的體驗效果。
[0151]在本發(fā)明實施例中,終端可根據(jù)云端預(yù)存的外掛程序樣本判斷終端上運行的程序是否為外掛程序,進而可在該外掛程序上插入攔截函數(shù),通過該攔截函數(shù)Hook外掛程序中的創(chuàng)建進程的系統(tǒng)函數(shù)或者Hook瀏覽器COM接口,獲取外掛程序訪問的網(wǎng)頁的網(wǎng)址信息等數(shù)據(jù),進而根據(jù)獲取到的網(wǎng)頁的網(wǎng)址信息確定該網(wǎng)頁是否為廣告網(wǎng)頁。當(dāng)外掛程序訪問的網(wǎng)頁為廣告網(wǎng)頁時,則可攔截該網(wǎng)頁的訪問,若該網(wǎng)頁不是廣告網(wǎng)頁,則可正常打開該網(wǎng)頁。本發(fā)明實施例加入云端控制和攔截函數(shù)實現(xiàn)對廣告網(wǎng)頁的攔截,提高了廣告網(wǎng)頁的攔截的準(zhǔn)確性,減少了廣告網(wǎng)頁的攔截的功耗,保障了外掛程序運行的順暢性和用戶體驗。
[0152]參見圖5,是本發(fā)明實施例提供的終端的實施例結(jié)構(gòu)示意圖。本發(fā)明實施例中所描述的終端包括:攔截裝置1000和存儲設(shè)備2000。
[0153]上述攔截裝置1000為本發(fā)明實施例提供的廣告網(wǎng)頁的攔截裝置,上述攔截裝置1000的具體實現(xiàn)過程可參見本發(fā)明實施例提供的廣告網(wǎng)頁的攔截方法的第一實施例和第二實施例,或者本發(fā)明實施例提供的廣告網(wǎng)頁的攔截裝置的第一實施例和第二實施例,在此不再贅述。
[0154]本發(fā)明實施例中所描述的存儲設(shè)備2000用于存儲指令和相關(guān)數(shù)據(jù),上述攔截裝置1000可根據(jù)存儲設(shè)備2000中存儲的指令和數(shù)據(jù)執(zhí)行上述各個實施例中所描述的實現(xiàn)方式,在此不再贅述。
[0155]在本說明書的描述中,參考術(shù)語“一個實施例”、“一些實施例”、“示例”、“具體示例”、或“一些示例”等的描述意指結(jié)合該實施例或示例描述的具體特征、結(jié)構(gòu)、材料或者特點包含于本發(fā)明的至少一個實施例或示例中。在本說明書中,對上述術(shù)語的示意性表述不必須針對的是相同的實施例或示例。而且,描述的具體特征、結(jié)構(gòu)、材料或者特點可以在任一個或多個實施例或示例中以合適的方式結(jié)合。此外,在不相互矛盾的情況下,本領(lǐng)域的技術(shù)人員可以將本說明書中描述的不同實施例或示例以及不同實施例或示例的特征進行結(jié)合和組合。
[0156]此外,術(shù)語“第一”、“第二”僅用于描述目的,而不能理解為指示或暗示相對重要性或者隱含指明所指示的技術(shù)特征的數(shù)量。由此,限定有“第一”、“第二”的特征可以明示或者隱含地包括至少一個該特征。在本發(fā)明的描述中,“多個”的含義是至少兩個,例如兩個,三個等,除非另有明確具體的限定。
[0157]流程圖中或在此以其他方式描述的任何過程或方法描述可以被理解為,表示包括一個或更多個用于實現(xiàn)特定邏輯功能或過程的步驟的可執(zhí)行指令的代碼的模塊、片段或部分,并且本發(fā)明的優(yōu)選實施方式的范圍包括另外的實現(xiàn),其中可以不按所示出或討論的順序,包括根據(jù)所涉及的功能按基本同時的方式或按相反的順序,來執(zhí)行功能,這應(yīng)被本發(fā)明的實施例所屬【技術(shù)領(lǐng)域】的技術(shù)人員所理解。
[0158]在流程圖中表示或在此以其他方式描述的邏輯和/或步驟,例如,可以被認為是用于實現(xiàn)邏輯功能的可執(zhí)行指令的定序列表,可以具體實現(xiàn)在任何計算機可讀介質(zhì)中,以供指令執(zhí)行系統(tǒng)、裝置或設(shè)備(如基于計算機的系統(tǒng)、包括處理器的系統(tǒng)或其他可以從指令執(zhí)行系統(tǒng)、裝置或設(shè)備取指令并執(zhí)行指令的系統(tǒng))使用,或結(jié)合這些指令執(zhí)行系統(tǒng)、裝置或設(shè)備而使用。就本說明書而言,"計算機可讀介質(zhì)"可以是任何可以包含、存儲、通信、傳播或傳輸程序以供指令執(zhí)行系統(tǒng)、裝置或設(shè)備或結(jié)合這些指令執(zhí)行系統(tǒng)、裝置或設(shè)備而使用的裝置。計算機可讀介質(zhì)的更具體的示例(非窮盡性列表)包括以下:具有一個或多個布線的電連接部(電子裝置),便攜式計算機盤盒(磁裝置),隨機存取存儲器(RAM),只讀存儲器(R0M),可擦除可編輯只讀存儲器(EPR0M或閃速存儲器),光纖裝置,以及便攜式光盤只讀存儲器(⑶ROM)。另外,計算機可讀介質(zhì)甚至可以是可在其上打印所述程序的紙或其他合適的介質(zhì),因為可以例如通過對紙或其他介質(zhì)進行光學(xué)掃描,接著進行編輯、解譯或必要時以其他合適方式進行處理來以電子方式獲得所述程序,然后將其存儲在計算機存儲器中。
[0159]應(yīng)當(dāng)理解,本發(fā)明的各部分可以用硬件、軟件、固件或它們的組合來實現(xiàn)。在上述實施方式中,多個步驟或方法可以用存儲在存儲器中且由合適的指令執(zhí)行系統(tǒng)執(zhí)行的軟件或固件來實現(xiàn)。例如,如果用硬件來實現(xiàn),和在另一實施方式中一樣,可用本領(lǐng)域公知的下列技術(shù)中的任一項或他們的組合來實現(xiàn):具有用于對數(shù)據(jù)信號實現(xiàn)邏輯功能的邏輯門電路的離散邏輯電路,具有合適的組合邏輯門電路的專用集成電路,可編程門陣列(PGA),現(xiàn)場可編程門陣列(FPGA)等。
[0160]本【技術(shù)領(lǐng)域】的普通技術(shù)人員可以理解實現(xiàn)上述實施例方法攜帶的全部或部分步驟是可以通過程序來指令相關(guān)的硬件完成,所述的程序可以存儲于一種計算機可讀存儲介質(zhì)中,該程序在執(zhí)行時,包括方法實施例的步驟之一或其組合。
[0161 ] 此外,在本發(fā)明各個實施例中的各功能單元可以集成在一個處理模塊中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個模塊中。上述集成的模塊既可以采用硬件的形式實現(xiàn),也可以采用軟件功能模塊的形式實現(xiàn)。所述集成的模塊如果以軟件功能模塊的形式實現(xiàn)并作為獨立的產(chǎn)品銷售或使用時,也可以存儲在一個計算機可讀取存儲介質(zhì)中。
[0162]上述提到的存儲介質(zhì)可以是只讀存儲器,磁盤或光盤等。盡管上面已經(jīng)示出和描述了本發(fā)明的實施例,可以理解的是,上述實施例是示例性的,不能理解為對本發(fā)明的限制,本領(lǐng)域的普通技術(shù)人員在本發(fā)明的范圍內(nèi)可以對上述實施例進行變化、修改、替換和變型。
[0163]本領(lǐng)域普通技術(shù)人員可以理解實現(xiàn)上述實施例方法中的全部或部分流程,是可以通過計算機程序來指令相關(guān)的硬件來完成,所述的程序可存儲于計算機可讀取存儲介質(zhì)中,該程序在執(zhí)行時,可包括如上述各方法的實施例的流程。其中,所述的存儲介質(zhì)可為磁碟、光盤、只讀存儲記憶體(Read-Only Memory, ROM)或隨機存儲記憶體(Random AccessMemory, RAM)等。
[0164]以上所揭露的僅為本發(fā)明較佳實施例而已,當(dāng)然不能以此來限定本發(fā)明之權(quán)利范圍,因此依本發(fā)明權(quán)利要求所作的等同變化,仍屬本發(fā)明所涵蓋的范圍。
【權(quán)利要求】
1.一種廣告網(wǎng)頁的攔截方法,其特征在于,包括: 根據(jù)云端預(yù)存的外掛程序樣本判斷終端上運行的程序是否為外掛程序; 若所述程序為外掛程序,則在所述外掛程序中插入攔截函數(shù),通過所述攔截函數(shù)設(shè)置攔截點; 在所述攔截點獲取所述外掛程序訪問的網(wǎng)頁的網(wǎng)址信息,判斷所述網(wǎng)頁是否為廣告網(wǎng)頁; 若所述網(wǎng)頁為廣告網(wǎng)頁,則攔截所述網(wǎng)頁的訪問操作,否則執(zhí)行所述網(wǎng)頁的訪問操作。
2.如權(quán)利要求1所述的方法,其特征在于,所述根據(jù)云端預(yù)存的外掛程序樣本判斷終端上運行的程序是否為外掛程序之前,所述方法還包括: 獲取所述終端上正在運行的程序的標(biāo)識信息,以根據(jù)所述程序的標(biāo)識信息確定所述程序是否為外掛程序; 其中,所述程序的標(biāo)識信息包括:所述程序的名稱、存儲路徑或者運行方式中的至少一種。
3.如權(quán)利要求2所述的方法,其特征在于,所述根據(jù)云端預(yù)存的外掛程序樣本判斷終端上運行的程序是否為外掛程序,包括: 將所述終端上運行的程序的所述標(biāo)識信息與所述云端預(yù)存的外掛程序樣本的標(biāo)識信息進行匹配,判斷所述程序的標(biāo)識信息是否包含在所述外掛程序樣本的標(biāo)識信息中; 若所述程序的標(biāo)識信息包含在所述外掛程序樣本的標(biāo)識信息中,則判斷所述程序為外掛程序。
4.如權(quán)利要求3所述的方法,其特征在于,所述攔截函數(shù)具體為一個攔截程序或者一個攔截進程。
5.如權(quán)利要求4所述的方法,其特征在于,所述在所述外掛程序中插入攔截函數(shù),通過所述攔截函數(shù)設(shè)置攔截點,包括: 將所述攔截程序插入至所述外掛程序中,或者將所述攔截進程插入至所述外掛程序的指定進程中; 通過所述攔截程序或者所述攔截進程,掛鉤Hook指定系統(tǒng)函數(shù)或者瀏覽器串行通訊端口 COM接口,以設(shè)定截獲所述外掛程序或者所述指定進程訪問的網(wǎng)頁的網(wǎng)址信息的攔截點。
6.如權(quán)利要求5所述的方法,其特征在于,所述指定系統(tǒng)函數(shù)具體為創(chuàng)建進程的系統(tǒng)函數(shù); 所述創(chuàng)建進程的系統(tǒng)函數(shù)包括:CreateProcess、ShellExecute,以及WinExec中的至少一種。
7.如權(quán)利要求5所述的方法,其特征在于,所述瀏覽器COM接口包括:Navigate、Navigate2、NavigateHack,以及 AggregatedNavigat1n 中的至少一種。
8.如權(quán)利要求6或7所述的方法,其特征在于,所述在所述攔截點獲取所述外掛程序訪問的網(wǎng)頁的網(wǎng)址信息,包括: 通過所述外掛程序調(diào)用所述攔截函數(shù),Hook所述外掛程序或者所述指定進程中創(chuàng)建進程的系統(tǒng)函數(shù),獲取所述外掛程序訪問的網(wǎng)頁的網(wǎng)址信息;或者 通過所述外掛程序調(diào)用所述攔截函數(shù),Hook所述外掛程序或者所述指定進程調(diào)用的瀏覽器COM接口,獲取所述外掛程序訪問的網(wǎng)頁的網(wǎng)址信息; 其中,所述網(wǎng)頁的網(wǎng)址信息為所述網(wǎng)頁的統(tǒng)一資源定位符URL信息。
9.如權(quán)利要求8所述的方法,其特征在于,所述判斷所述網(wǎng)頁是否為廣告網(wǎng)頁,包括: 將所述網(wǎng)頁的網(wǎng)址信息與預(yù)存的廣告網(wǎng)頁的標(biāo)識信息進行匹配,判斷所述網(wǎng)頁的網(wǎng)址信息中是否包含所述廣告網(wǎng)頁的標(biāo)識信息; 若所述網(wǎng)頁的網(wǎng)址信息中包含所述廣告網(wǎng)頁的標(biāo)識信息,則判斷所述網(wǎng)頁為廣告網(wǎng)頁。
10.如權(quán)利要求9所述的方法,其特征在于,所述攔截所述網(wǎng)頁的訪問操作包括: 通過所述攔截函數(shù)生成所述攔截點對應(yīng)的函數(shù)調(diào)用成功指令給所述外掛程序,指示所述外掛程序繼續(xù)運行,以將所述網(wǎng)頁的訪問操作攔截在所述攔截點。
11.一種廣告網(wǎng)頁的攔截裝置,其特征在于,包括: 第一判斷模塊,用于根據(jù)云端預(yù)存的外掛程序樣本判斷終端上運行的程序是否為外掛程序; 設(shè)置模塊,用于在所述第一判斷模塊判斷結(jié)果為是時,在所述外掛程序中插入攔截函數(shù),通過所述攔截函數(shù)設(shè)置攔截點; 第一獲取模塊,用于在所述設(shè)置模塊設(shè)置的所述攔截點獲取所述外掛程序訪問的網(wǎng)頁的網(wǎng)址信息; 第二判斷模塊,用于根據(jù)所述第一獲取模塊獲取的所述網(wǎng)頁的網(wǎng)址信息判斷所述網(wǎng)頁是否為廣告網(wǎng)頁; 處理模塊,用于在所述第二判斷模塊判斷結(jié)果為是時,攔截所述網(wǎng)頁的訪問操作,在所述第二判斷模塊判斷結(jié)果為否時,執(zhí)行所述網(wǎng)頁的訪問操作。
12.如權(quán)利要求11所述的裝置,其特征在于,所述裝置還包括: 第二獲取模塊,用于獲取所述終端上正在運行的程序的標(biāo)識信息,以根據(jù)所述程序的標(biāo)識信息確定所述程序是否為外掛程序; 其中,所述程序的標(biāo)識信息包括:所述程序的名稱、存儲路徑或者運行方式中的至少一種。
13.如權(quán)利要求12所述的裝置,其特征在于,所述第一判斷模塊,具體用于: 將所述終端上運行的程序的所述標(biāo)識信息與所述云端預(yù)存的外掛程序樣本的標(biāo)識信息進行匹配,判斷所述程序的標(biāo)識信息是否包含在所述外掛程序樣本的標(biāo)識信息中; 若所述程序的標(biāo)識信息包含在所述外掛程序樣本的標(biāo)識信息中,則判斷所述程序為外掛程序。
14.如權(quán)利要求13所述的裝置,其特征在于,所述攔截函數(shù)具體為一個攔截程序或者一個攔截進程。
15.如權(quán)利要求14所述的裝置,其特征在于,所述設(shè)置模塊,具體用于: 將所述攔截程序插入至所述外掛程序中,或者將所述攔截進程插入至所述外掛程序的指定進程中; 通過所述攔截程序或者所述攔截進程,掛鉤Hook指定系統(tǒng)函數(shù)或者瀏覽器串行通訊端口 COM接口,以設(shè)定截獲所述外掛程序或者所述指定進程訪問的網(wǎng)頁的網(wǎng)址信息的攔截點。
16.如權(quán)利要求15所述的裝置,其特征在于,所述指定系統(tǒng)函數(shù)具體為創(chuàng)建進程的系統(tǒng)函數(shù); 所述創(chuàng)建進程的系統(tǒng)函數(shù)包括:CreateProcess、ShellExecute,以及WinExec中的至少一種。
17.如權(quán)利要求15所述的裝置,其特征在于,所述瀏覽器COM接口包括:Navigate、Navigate2、NavigateHack,以及 AggregatedNavigat1n 中的至少一種。
18.如權(quán)利要求16或17所述的裝置,其特征在于,所述第一獲取模塊,具體用于: 通過所述外掛程序調(diào)用所述攔截函數(shù),Hook所述外掛程序或者所述指定進程中創(chuàng)建進程的系統(tǒng)函數(shù),獲取所述外掛程序訪問的網(wǎng)頁的網(wǎng)址信息;或者 通過所述外掛程序調(diào)用所述攔截函數(shù),Hook所述外掛程序或者所述指定進程調(diào)用的瀏覽器COM接口,獲取所述外掛程序訪問的網(wǎng)頁的網(wǎng)址信息; 其中,所述網(wǎng)頁的網(wǎng)址信息為所述網(wǎng)頁的統(tǒng)一資源定位符URL信息。
19.如權(quán)利要求18所述的裝置,其特征在于,所述第二判斷模塊,具體用于: 將所述網(wǎng)頁的網(wǎng)址信息與預(yù)存的廣告網(wǎng)頁的標(biāo)識信息進行匹配,判斷所述網(wǎng)頁的網(wǎng)址信息中是否包含所述廣告網(wǎng)頁的標(biāo)識信息; 若所述網(wǎng)頁的網(wǎng)址信息中包含所述廣告網(wǎng)頁的標(biāo)識信息,則判斷所述網(wǎng)頁為廣告網(wǎng)頁。
20.如權(quán)利要求19所述的裝置,其特征在于,所述處理模塊具體用于: 通過所述攔截函數(shù)生成所述攔截點對應(yīng)的函數(shù)調(diào)用成功指令給所述外掛程序,指示所述外掛程序繼續(xù)運行,以將所述網(wǎng)頁的訪問操作攔截在所述攔截點。
21.—種終端,其特征在于,包括:如權(quán)利要求11-20任意一項所述的裝置。
【文檔編號】G06F17/30GK104268193SQ201410483870
【公開日】2015年1月7日 申請日期:2014年9月19日 優(yōu)先權(quán)日:2014年9月19日
【發(fā)明者】張韜, 劉桂峰, 姚輝 申請人:北京金山安全軟件有限公司