亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        惡意彈窗廣告攻擊檢測(cè)技術(shù)的研究

        2020-05-21 03:33:01孫沖沖徐亞峰卜東泰韓港成胥勛鵬高明
        軟件工程 2020年5期
        關(guān)鍵詞:機(jī)器學(xué)習(xí)

        孫沖沖 徐亞峰 卜東泰 韓港成 胥勛鵬 高明

        摘? 要:惡意彈窗廣告是一種強(qiáng)迫式的廣告,這些廣告給投放者帶來(lái)巨大的利益,但是嚴(yán)重影響了用戶體驗(yàn),侵犯了用戶權(quán)益,同時(shí)也帶來(lái)很多安全隱患。惡意彈窗廣告攻擊檢測(cè)系統(tǒng)采用C/S架構(gòu),服務(wù)端使用樸素貝葉斯算法根據(jù)訓(xùn)練集生成和更新訓(xùn)練結(jié)果,并利用訓(xùn)練結(jié)果對(duì)客戶端發(fā)送的彈窗截圖文本進(jìn)行分類預(yù)測(cè)??蛻舳税ɑA(chǔ)攔截、截圖攔截以及主動(dòng)攔截三個(gè)模塊,主動(dòng)攔截模塊使用OCR技術(shù)將可疑彈窗截圖轉(zhuǎn)化為文本,然后把此文本傳給服務(wù)端,服務(wù)端加載之前訓(xùn)練集產(chǎn)生的訓(xùn)練結(jié)果,利用樸素貝葉斯算法得到此文本的預(yù)測(cè)結(jié)果,客戶端根據(jù)預(yù)測(cè)結(jié)果確定對(duì)此彈窗是否攔截。本系統(tǒng)實(shí)現(xiàn)了彈窗識(shí)別攔截的智能化,配置方便,交互界面易于使用。

        關(guān)鍵詞:彈窗廣告;機(jī)器學(xué)習(xí);樸素貝葉斯算法;攔截

        中圖分類號(hào):TP315? ? ?文獻(xiàn)標(biāo)識(shí)碼:A

        Abstract:Malicious pop-up advertisements are imposed on users. These advertisements bring huge benefits to the publishers, but seriously affect user experience, infringe on user rights and interests, and also bring many security risks. The malicious pop-up advertisements attack detection system uses C/S (Client/Server) architecture. The server uses Naive Bayes algorithm to generate and update training results based on the training set, and uses the training results to classify and predict the pop-up screenshot text sent by the client. The client includes three modules: basic interception, screenshot interception, and active interception. The active interception module uses OCR (Optical Character Recognition) technology to convert the suspicious pop-up screenshot into text, and then transmits this text to the server. The server loads the training results generated by the previous training set. The naive Bayesian algorithm is used to obtain the prediction result of this text, and the client determines whether to block the pop-up window according to the prediction result. The system implements the intelligent identification and interception of the pop-up window, with convenient configuration and user-friendly interface.

        Keywords:pop-up advertisements; machine learning; naive Bayesian algorithm; interception

        1? ?引言(Introduction)

        受到利益的驅(qū)使,很多惡意軟件都捆綁了大量的廣告。但是,以這種方式獲利是不健康,不正當(dāng)?shù)?,不利于互?lián)網(wǎng)產(chǎn)業(yè)的正常發(fā)展。雖然目前有一部分?jǐn)r截軟件實(shí)現(xiàn)了惡意廣告攔截的功能,但很多彈窗廣告依賴用戶識(shí)別,智能化程度不高。本項(xiàng)目就是在研究相應(yīng)的檢測(cè)技術(shù)的基礎(chǔ)上,設(shè)計(jì)與實(shí)現(xiàn)一款高效率的智能惡意彈窗檢測(cè)系統(tǒng),扼制惡意廣告泛濫的情況,營(yíng)造良好的上網(wǎng)環(huán)境。

        2? ?系統(tǒng)功能介紹(Introduction of system function)

        本系統(tǒng)采用C/S(Client/Server, 客戶端/服務(wù)端)架構(gòu)??蛻舳酥饕?fù)責(zé)與用戶的交互,同時(shí)具有輕量的數(shù)據(jù)處理任務(wù);服務(wù)端主要負(fù)責(zé)用戶數(shù)據(jù)處理。

        2.1? ?客戶端設(shè)計(jì)

        本系統(tǒng)的客戶端使用基于.NET Framework框架的C#語(yǔ)言,采用WinFrom窗體作為交互界面,既保證了客戶端的良好兼容性,也為用戶提供了友好的交互方式。

        客戶端主要包含的功能有:基礎(chǔ)攔截功能、截圖攔截功能、主動(dòng)攔截功能。基礎(chǔ)攔截功能是指開(kāi)啟攔截后,攔截黑名單的程序;截圖攔截功能是指根據(jù)用戶選中的窗口,對(duì)相關(guān)應(yīng)用加以攔截;主動(dòng)攔截功能是指主動(dòng)監(jiān)控自動(dòng)彈出的窗口,將此彈窗的文本信息給服務(wù)端后,根據(jù)服務(wù)端的返回預(yù)測(cè)結(jié)果決定對(duì)此彈窗是否攔截。

        2.2? ?服務(wù)端設(shè)計(jì)

        服務(wù)端部署在BCC(Baidu Cloud Compute,百度云服務(wù)器)上,提供了Socket(套接字)通訊服務(wù)和FTP(File Transfer Protocol,文件傳輸協(xié)議)服務(wù),處理服務(wù)端和客戶端之間的數(shù)據(jù)通信。

        服務(wù)端包含的主要功能有:使用樸素貝葉斯算法根據(jù)訓(xùn)練集生成和更新訓(xùn)練結(jié)果,并利用訓(xùn)練結(jié)果對(duì)客戶端發(fā)送的彈窗截圖文本進(jìn)行分類預(yù)測(cè);收集客戶端上傳的彈窗圖片,用以豐富訓(xùn)練集。

        3? ?基礎(chǔ)攔截功能(Basic interception function)

        3.1? ?SQLite數(shù)據(jù)庫(kù)的介紹

        SQLite是世界上最廣泛部署的SQL數(shù)據(jù)庫(kù)引擎之一,它是一個(gè)進(jìn)程內(nèi)的庫(kù),實(shí)現(xiàn)了自給自足的、無(wú)服務(wù)器的、零配置的、事務(wù)性的SQL數(shù)據(jù)庫(kù)引擎,具有輕量、速度快、穩(wěn)定等特點(diǎn)[1]。SQLite的小巧穩(wěn)定為本系統(tǒng)數(shù)據(jù)存儲(chǔ)提供可靠支持。

        3.2? ?基礎(chǔ)攔截功能流程

        當(dāng)本系統(tǒng)的客戶端軟件運(yùn)行并打開(kāi)攔截功能后,將通過(guò)System.Diagnostics命名空間下的Process類獲取當(dāng)前進(jìn)程,實(shí)時(shí)與黑名單以及白名單的應(yīng)用比對(duì),并結(jié)束在黑名單且不在白名單中的應(yīng)用。

        4? ?截圖攔截功能(Screenshot interception function)

        4.1? ?Win32 API

        Win32 API是Microsoft Windows上預(yù)留的應(yīng)用程序編程接口,得益于.NET Framework的靈活性,本系統(tǒng)可以通過(guò)c#語(yǔ)言很便利地獲取API接口,很好地實(shí)現(xiàn)了根據(jù)位置獲取窗口句柄、直接獲取目標(biāo)窗口截圖等功能[2,3]。

        4.2? ?截圖攔截流程

        用戶點(diǎn)擊截圖攔截按鈕后,會(huì)立即生成一個(gè)與當(dāng)前桌面相同的窗口,當(dāng)用戶單擊后,通過(guò)調(diào)用Win32 API,獲取此位置的窗口句柄,在用戶點(diǎn)擊確認(rèn)按鈕后,將應(yīng)用加入黑名單。

        5? ?主動(dòng)攔截功能(Active interception function)

        5.1? ?樸素貝葉斯算法

        樸素貝葉斯算法(Naive Bayesian algorithm)基于概率論,是最廣泛的機(jī)器學(xué)習(xí)分類算法之一。它在原本貝葉斯算法的基礎(chǔ)之上,假定各特征相互獨(dú)立,極大簡(jiǎn)化了算法的復(fù)雜性,提高了算法的使用效率。本系統(tǒng)將在文本分類階段使用此算法,對(duì)文本加以分類。

        在本系統(tǒng)中,我們分別有惡意彈窗和正常窗口兩種可分類的類別。在特征固定的情形下,我們即可通過(guò)比較(惡意彈窗│特征)與(正常窗口│特征)的大小判斷特征所屬的類別。因?yàn)椋◥阂鈴棿癌μ卣鳎┡c(正常窗口│特征)屬于后驗(yàn)概率,所以兩者并不便于直接比較。不過(guò),我們可以將它們分別代入貝葉斯公式,將比較的目標(biāo)變成比較與的大小。因?yàn)榉帜赶嗤?,所以我們只需比較(惡意彈窗)·(特征│惡意彈窗)與(正常窗口)·(特征│正常窗口)的大小即可[4,5]。

        樸素貝葉斯算法假定了特征之間相互獨(dú)立,所以很容易比較(惡意彈窗)·(特征│惡意彈窗)與(正常窗口)·(特征│正常窗口)的大小,從而確定類別。

        樸素貝葉斯算法分類效率穩(wěn)定,在文本數(shù)量較少時(shí),依然會(huì)有較好的表現(xiàn),同時(shí)對(duì)確實(shí)數(shù)據(jù)不敏感,適用性良好。相對(duì)于貝葉斯算法,由于樸素貝葉斯算法假設(shè)了屬性之間相互獨(dú)立,犧牲了一定的準(zhǔn)確率[6]。

        由于本系統(tǒng)所收集的訓(xùn)練樣本較少,而樸素貝葉斯算法對(duì)少量的文本依然有較好的支持;同時(shí),識(shí)別后文本的屬性之間獨(dú)立性較高,有效減少了屬性之間相互獨(dú)立的假設(shè)多帶來(lái)的誤差。

        5.2? ?訓(xùn)練集

        本系統(tǒng)將借助Sklearn庫(kù)輔助模型訓(xùn)練,并實(shí)現(xiàn)訓(xùn)練集的保存和加載。Sklearn(Scikit-learn)是基于Python語(yǔ)言的機(jī)器學(xué)習(xí)庫(kù),它通過(guò)NumPy、SciPy和Matplotlib等Python庫(kù)融合,高效地實(shí)現(xiàn)了幾乎所有主流機(jī)器學(xué)習(xí)算法。

        我們將收集到的惡意彈窗截圖和正常軟件截圖分開(kāi)置于兩個(gè)文件夾里,其中兩種截圖各占50%;接著分別把兩類截圖使用OCR(Optical Character Recognition,光學(xué)字符識(shí)別)轉(zhuǎn)換為文本。處理后的兩類文本分開(kāi)放置,共同作為訓(xùn)練集。

        5.3? ?數(shù)據(jù)處理

        (1)jieba分詞

        jieba是目前最好的Python中文分詞庫(kù),它支持精確模式、全模式、搜索引擎模式這三種分詞模式[7]。本系統(tǒng)的中文文檔采用精確模式,配合stopword(停止詞)的使用,對(duì)中文文本處理有很好的效果。

        (2)One-Hot編碼(獨(dú)熱碼)

        One-Hot編碼使用二進(jìn)制向量表示分類變量,在將分類值映射為整數(shù)值后,用二進(jìn)制向量表示每個(gè)整數(shù)值。本系統(tǒng)中我們將文本中的詞與詞袋的詞一一比較,若該詞位于詞袋中,則編碼為1,否則編碼為0。

        (3)數(shù)據(jù)處理流程

        首先加載由OCR識(shí)別后的文本,接著利用正則表達(dá)式匹配,去除文本中的非中文字符,然后用jieba分詞,獲得分割后的中文文本。獲取分割后的文本后,我們將所有的文本及其類別的集合劃分訓(xùn)練集和測(cè)試集,生成詞袋。最后生成One-Hot編碼,獲得特征值。

        5.4? ?使用樸素貝葉斯算法生成文本預(yù)測(cè)

        獲取數(shù)據(jù)集,在數(shù)據(jù)處理后,得到數(shù)據(jù)集的特征值集合;接著調(diào)用sklearn庫(kù)中的MultinomialNB()方法,結(jié)合特征集合實(shí)例化分類器;最后調(diào)用sklearn庫(kù)中的joblib,將訓(xùn)練的結(jié)果持久保存。

        在服務(wù)端的socket模塊獲得待分類數(shù)據(jù)后,會(huì)將文本傳入分類腳本。分類腳本在處理時(shí),先通過(guò)joblib加載已經(jīng)保存的訓(xùn)練結(jié)果,生成分類器。最后調(diào)用分類器的predict()方法,獲得預(yù)測(cè)的分類結(jié)果,并回傳socket通訊模塊,文本預(yù)測(cè)流程如圖1所示。

        5.5? ?主動(dòng)攔截的實(shí)現(xiàn)

        Hook(鉤子)是windows中提供的一種用以替換DOS下“中斷”的系統(tǒng)機(jī)制,它可以在系統(tǒng)調(diào)用某函數(shù)之前,提前捕獲消息。在鉤子捕獲消息,獲得控制權(quán)時(shí)后,便可以對(duì)該函數(shù)加以處理。在源碼未知的情況下,可以通過(guò)鉤掛相應(yīng)的API函數(shù),完成函數(shù)地址重寫(xiě)實(shí)現(xiàn)功能擴(kuò)展[8]。

        在本系統(tǒng)中,利用Hook獲取了鼠標(biāo)的單擊事件。在客戶端開(kāi)啟主動(dòng)攔截功能后,主動(dòng)攔截模塊將不斷監(jiān)控桌面窗口的創(chuàng)建,每當(dāng)用戶未通過(guò)鼠標(biāo)點(diǎn)擊而彈出窗口時(shí),便將此窗口的應(yīng)用標(biāo)為可疑應(yīng)用程序,等待進(jìn)一步的鑒定。

        首先監(jiān)控桌面應(yīng)用程序,發(fā)現(xiàn)可疑應(yīng)用程序后,調(diào)用Win32API獲取可疑程序的截圖;接著使用OCR得到可疑程序截圖的文本內(nèi)容,并將文本內(nèi)容交給服務(wù)器進(jìn)行文本預(yù)測(cè);最后得到服務(wù)器返回的預(yù)測(cè)結(jié)果,并根據(jù)預(yù)測(cè)結(jié)果決定是否進(jìn)行攔截,主動(dòng)攔截流程如圖2所示。

        如果客戶端出現(xiàn)惡意彈窗廣告,客戶端傳遞此惡意彈窗的內(nèi)容文本到服務(wù)端,服務(wù)端對(duì)此內(nèi)容文本加以預(yù)測(cè),如果預(yù)測(cè)的結(jié)果為:“pop”,就代表此窗口是惡意彈窗,客戶端的預(yù)測(cè)如圖3所示;客戶端收到預(yù)測(cè)結(jié)果后,惡意彈窗廣告被攔截,攔截后的效果如圖4所示。

        6? ?結(jié)論(Conclusion)

        本惡意彈窗廣告攻擊檢測(cè)系統(tǒng)通過(guò)客戶端與服務(wù)端之間通信,實(shí)現(xiàn)了智能化攔截??蛻舳藶橛脩籼峁┝肆己玫慕换ブС?,界面友好易用?;A(chǔ)攔截功能、截圖攔截功能和主動(dòng)攔截功能互相配合,實(shí)現(xiàn)了較好的攔截效果。相較于其他的攔截軟件,主動(dòng)攔截功能的智能化大大提升了用戶的使用體驗(yàn)。服務(wù)端為客戶端可以提供可靠的數(shù)據(jù)處理支持。得益于樸素貝葉斯算法的高性能,本系統(tǒng)對(duì)服務(wù)器的性能要求不高,有良好的經(jīng)濟(jì)可行性。

        參考文獻(xiàn)(References)

        [1] 鄧杰海,全智龍,周紅娟.基于C#與SQLite的銀行財(cái)政非稅收入管理軟件的研發(fā)[J].電腦知識(shí)與技術(shù),2017,13(10):74-75.

        [2] Jefrey Richter.王建華,譯.Windows核心編程[M].北京:機(jī)械工業(yè)出版社,2000.

        [3] W.Richard Stevens.楊繼張,譯.第2卷進(jìn)程間通信(第2版)[M].北京:清華大學(xué)出版社,2002.

        [4] 劉秋陽(yáng),林澤鋒,欒青青.基于樸素貝葉斯算法的垃圾短信智能識(shí)別系統(tǒng)[J].電腦知識(shí)與技術(shù),2016,12(12):190-192.

        [5] 鄒曉輝.樸素貝葉斯算法在文本分類中的應(yīng)用[J].數(shù)字技術(shù)與應(yīng)用,2017(12):132-133.

        [6] 郭勛誠(chéng).樸素貝葉斯分類算法應(yīng)用研究[J].通訊世界,2019,26(01):241-242.

        [7] 嚴(yán)明,鄭昌興.Python環(huán)境下的文本分詞與詞云制作[J].現(xiàn)代計(jì)算機(jī)(專業(yè)版),2018(34):86-89.

        [8] 蘇雪麗,袁丁.Windows下兩種API鉤掛技術(shù)的研究與實(shí)現(xiàn)[J].計(jì)算機(jī)工程與設(shè)計(jì),2011,32(07):2548-2552.

        猜你喜歡
        機(jī)器學(xué)習(xí)
        基于詞典與機(jī)器學(xué)習(xí)的中文微博情感分析
        基于機(jī)器學(xué)習(xí)的圖像特征提取技術(shù)在圖像版權(quán)保護(hù)中的應(yīng)用
        基于網(wǎng)絡(luò)搜索數(shù)據(jù)的平遙旅游客流量預(yù)測(cè)分析
        前綴字母為特征在維吾爾語(yǔ)文本情感分類中的研究
        下一代廣播電視網(wǎng)中“人工智能”的應(yīng)用
        活力(2016年8期)2016-11-12 17:30:08
        基于支持向量機(jī)的金融數(shù)據(jù)分析研究
        基于Spark的大數(shù)據(jù)計(jì)算模型
        基于樸素貝葉斯算法的垃圾短信智能識(shí)別系統(tǒng)
        基于圖的半監(jiān)督學(xué)習(xí)方法綜述
        機(jī)器學(xué)習(xí)理論在高中自主學(xué)習(xí)中的應(yīng)用
        国产精品性一区二区三区| 久久久久久好爽爽久久| 好大好硬好爽免费视频| 久久久精品免费国产四虎| 国产一区二区亚洲一区| 99久久精品免费看国产一区二区三区| 亚洲精品午睡沙发系列| 亚洲偷自拍另类图片二区| 国产精品丝袜美腿诱惑| 中文字幕亚洲综合久久天堂av| 国产免费av片在线播放| 无码日韩人妻AV一区免费| 青青青视频手机在线观看| 国产精品女老熟女一区二区久久夜| 国产精品自在线拍国产手机版| 欧美色色视频| 国产盗摄一区二区三区av| 天天做天天爱夜夜爽女人爽| 欧美v亚洲v日韩v最新在线| 国产成人综合久久精品推荐免费| 日本中文字幕乱码中文乱码| 亚洲无线码一区二区三区| 国产真人无遮挡作爱免费视频| 亚洲av噜噜狠狠蜜桃| 精品国产精品久久一区免费式 | 韩国无码av片在线观看网站| 亚洲专区一区二区在线观看| 国产成人综合久久大片| 特黄大片又粗又大又暴| 毛片免费在线播放| 日本在线视频二区一区 | 国产精品亚洲欧美云霸高清| 精品国产麻豆一区二区三区| 亚洲av成人精品一区二区三区 | 日本久久久久| 国产精品亚洲一二三区| 一本大道无码人妻精品专区| 亚洲三级黄色| 日韩激情av不卡在线| 久久久久88色偷偷| 日日摸夜夜添夜夜添无码免费视频 |