公務(wù)員期刊網(wǎng) 論文中心 正文

網(wǎng)頁(yè)設(shè)計(jì)中惡意代碼檢測(cè)算法構(gòu)建

前言:想要寫(xiě)出一篇引人入勝的文章?我們特意為您整理了網(wǎng)頁(yè)設(shè)計(jì)中惡意代碼檢測(cè)算法構(gòu)建范文,希望能給你帶來(lái)靈感和參考,敬請(qǐng)閱讀。

網(wǎng)頁(yè)設(shè)計(jì)中惡意代碼檢測(cè)算法構(gòu)建

摘要:當(dāng)前互聯(lián)網(wǎng)技術(shù)快速發(fā)展,人們的網(wǎng)絡(luò)使用頻率也越來(lái)越高。瀏覽網(wǎng)頁(yè)成了大眾獲取資訊信息以及進(jìn)行娛樂(lè)休閑的重要手段。但是在網(wǎng)頁(yè)瀏覽過(guò)程中,網(wǎng)頁(yè)惡意代碼的存在極大影響了網(wǎng)絡(luò)用戶的上網(wǎng)體驗(yàn),為了有效解決這一問(wèn)題,將分析如何在網(wǎng)頁(yè)安全管理中建立對(duì)惡意代碼的檢測(cè)方案。通過(guò)分析惡意代碼特征,并借助詞頻統(tǒng)計(jì)挖掘代碼特征,獲取特征值,從而及時(shí)發(fā)現(xiàn)并召回惡意代碼,避免其破壞網(wǎng)頁(yè)的流暢運(yùn)行。

關(guān)鍵詞:惡意代碼;檢測(cè)算法;安全管理

在信息時(shí)代,互聯(lián)網(wǎng)技術(shù)在人們生活、娛樂(lè)、休閑等行為活動(dòng)中的占比逐漸增大。網(wǎng)絡(luò)成為大眾獲取信息、了解世界的重要窗口。但是,在網(wǎng)絡(luò)技術(shù)逐漸滿足人們?nèi)粘YY訊需求的同時(shí),因?yàn)閻阂獯a所帶來(lái)的網(wǎng)絡(luò)安全事故也嚴(yán)重影響著廣大網(wǎng)絡(luò)用戶的計(jì)算機(jī)安全。惡意代碼對(duì)網(wǎng)頁(yè)有很大的破壞性,如果不能在短時(shí)間內(nèi)發(fā)現(xiàn)惡意代碼,將會(huì)對(duì)網(wǎng)頁(yè)平臺(tái)以及訪問(wèn)網(wǎng)頁(yè)的互聯(lián)網(wǎng)用戶造成巨大損失,故出于減小惡意代碼威脅的目的,網(wǎng)頁(yè)安全管理人員要構(gòu)建起良好的檢測(cè)算法,及時(shí)發(fā)現(xiàn)和根除威脅,保證網(wǎng)頁(yè)安全。

1網(wǎng)頁(yè)惡意代碼的概念及攻擊方式

搭建一個(gè)網(wǎng)頁(yè)通常會(huì)用到ActiveX等控件和JavaScript等編程語(yǔ)言,惡意代碼就是以這些控件和語(yǔ)言腳本為攻擊點(diǎn),在網(wǎng)頁(yè)運(yùn)行時(shí)查找電腦安全漏洞,以未經(jīng)網(wǎng)頁(yè)運(yùn)行者同意或者知曉的方式執(zhí)行網(wǎng)頁(yè)內(nèi)的控件腳本來(lái)達(dá)到某種具有惡意和破壞性目的[1]。如果用戶在訪問(wèn)網(wǎng)頁(yè)時(shí)不小心觸發(fā)了惡意代碼,有一定概率造成用戶的主機(jī)被惡意程序入侵,產(chǎn)生用戶電腦系統(tǒng)的注冊(cè)表設(shè)置或者程序配置被篡改,電腦資源被惡意盜取或刪除,引發(fā)電腦死機(jī)和資料丟失等惡果。惡意代碼的攻擊方式有兩種,一種主動(dòng)攻擊,這種攻擊方式容易被察覺(jué),并被防火墻阻隔。因此當(dāng)前大部分的惡意代碼采用的是第二種攻擊方式,也就是被動(dòng)攻擊模式,這種攻擊方式通過(guò)SQL注入或者跨站腳本攻擊等手段獲取服務(wù)器的控制權(quán),在得到控制權(quán)后,攻擊者會(huì)在網(wǎng)頁(yè)的服務(wù)器中植入<iframe>標(biāo)簽或者JavaScript惡意代碼,當(dāng)用戶在訪問(wèn)網(wǎng)頁(yè)時(shí),事先植入的標(biāo)簽或者代碼被觸發(fā),引起多次重定向操作。訪問(wèn)者的訪問(wèn)界面會(huì)被強(qiáng)制性轉(zhuǎn)移到攻擊者制作的惡意網(wǎng)頁(yè),在進(jìn)入惡意網(wǎng)頁(yè)后,攻擊程序會(huì)檢查訪問(wèn)者電腦的系統(tǒng)環(huán)境,尋找其中可能存在的漏洞,一旦發(fā)現(xiàn)存在漏洞可以利用,程序就會(huì)對(duì)訪問(wèn)者的主機(jī)發(fā)動(dòng)攻擊,執(zhí)行各種強(qiáng)迫性操作,比如不經(jīng)用戶同意或允許,將各種垃圾程序強(qiáng)行安裝到用戶電腦,擠占資源,或者修改用戶的系統(tǒng)環(huán)境參數(shù),造成電腦運(yùn)行卡頓,數(shù)據(jù)外泄等。歸納而言,網(wǎng)頁(yè)惡意代碼的攻擊過(guò)程可以分為五個(gè)步驟:①將惡意代碼嵌入網(wǎng)頁(yè)服務(wù)器;②在網(wǎng)頁(yè)服務(wù)器接收到用戶請(qǐng)求后觸發(fā);③在用戶返回網(wǎng)頁(yè)時(shí)攻擊用戶瀏覽器,或者進(jìn)行重定向操作強(qiáng)迫用戶的訪問(wèn)頁(yè)面跳轉(zhuǎn),進(jìn)入攻擊者所制作的惡意網(wǎng)頁(yè);④惡意網(wǎng)頁(yè)檢查用戶主機(jī)系統(tǒng)的安全防護(hù)情況,尋找安全漏洞和攻擊機(jī)會(huì);⑤觸發(fā)漏洞后搶奪主機(jī)權(quán)限,獲得電腦控制權(quán),進(jìn)行惡意操作,損害用戶利益。由此可見(jiàn),攻擊者出于隱蔽性和保密性的目的,多采用惡意代碼被訪問(wèn)者觸發(fā)再發(fā)起攻擊的被動(dòng)攻擊模式,這讓惡意代碼存在一定的潛伏性,在網(wǎng)頁(yè)安全管理中較難察覺(jué),因此管理者需要加強(qiáng)對(duì)檢測(cè)算法的構(gòu)建,篩查和發(fā)現(xiàn)網(wǎng)頁(yè)中的惡意代碼,并及時(shí)清除,防止對(duì)訪問(wèn)用戶的主機(jī)造成傷害,引發(fā)網(wǎng)絡(luò)安全事故。

2檢測(cè)惡意代碼的算法類(lèi)型

常用的網(wǎng)頁(yè)惡意代碼檢測(cè)算法有支持向量機(jī)、樸素貝葉斯、神經(jīng)網(wǎng)絡(luò)三種,三種算法的檢測(cè)效果各有不同,需要結(jié)合網(wǎng)頁(yè)的安全管理需求適當(dāng)挑選。(1)支持向量機(jī)支持向量機(jī)是一種常見(jiàn)的分類(lèi)算法,在惡意代碼檢測(cè)工作中應(yīng)用較多,該算法最早提出于1995年,由Vapnik等人所設(shè)計(jì),其原理是利用統(tǒng)計(jì)學(xué)習(xí)理論,采用非線性映射,將樣本數(shù)據(jù)從低維映射到高維特征空間,并在高維空間中搭建間隔超平面,實(shí)現(xiàn)各種類(lèi)型數(shù)據(jù)的有效分隔[2]。支持向量機(jī)的決策函數(shù)又稱(chēng)核函數(shù),在使用支持向量機(jī)的過(guò)程中,確定最佳核函數(shù)才能讓模型效果達(dá)到最好,如圖1所示。從圖1可見(jiàn)在支持向量機(jī)的二維特征空間中,邊界兩邊是各種類(lèi)別樣本的分隔處,管理者可以通過(guò)對(duì)決策邊界進(jìn)行確定,解決存在的樣本分類(lèi)問(wèn)題,也就是f:wχ+b=0的邊界問(wèn)題,在邊界函數(shù)中,如果向量w和參數(shù)b可以得到確認(rèn),那么就能確定邊界f,分類(lèi)問(wèn)題也就可以得到解決。不過(guò)在支持向量機(jī)的特征空間中,往往存在很多相互平行或者不同方向的決策邊界,為了確保樣本分類(lèi)的準(zhǔn)確性,SVM需要得到最佳的分離決策邊界,從而讓樣本邊緣達(dá)到最大,分類(lèi)效果達(dá)到最佳。(2)樸素貝葉斯樸素貝葉斯是貝葉斯分類(lèi)算法的算法模式之一,該算法以概率統(tǒng)計(jì)理論為基礎(chǔ),通過(guò)假設(shè)類(lèi)中的特征各自獨(dú)立、互不影響來(lái)確定數(shù)據(jù)樣本歸類(lèi)[3]。不過(guò)在現(xiàn)實(shí)情況中,樸素貝葉斯所設(shè)定的特征A、B、C彼此的存在互不關(guān)聯(lián)很難成立,所以一般采取降低屬性依賴(lài)關(guān)系的方式來(lái)提升樸素貝葉斯的分類(lèi)準(zhǔn)確率。具體做法是將所有的數(shù)據(jù)樣本設(shè)為n維度特征向量X表示,即X=χ1,χ2,χ3,χ4...,χn,所有的數(shù)據(jù)樣本又可以分成m個(gè)類(lèi),即表示為C1,C2,C3,C4,...Cm.在網(wǎng)頁(yè)安全管理中,管理人員預(yù)測(cè)到新數(shù)據(jù)樣本X,按照樸素貝葉斯的分類(lèi)方法將該新數(shù)據(jù)樣本標(biāo)記成Ci,表示X被分到了i類(lèi),此時(shí)新樣本數(shù)據(jù)具最高后驗(yàn)概率,計(jì)算公式為P�CiX�>P�CjX�,其中1≤j≤,且。依照貝葉斯定律的計(jì)算公式為:P(Ci/X)>P(X/Cj)×P(Ci)/P(X)在安全管理人員給定預(yù)測(cè)數(shù)據(jù)樣本之后,P(X)作為常數(shù),這樣對(duì)數(shù)據(jù)樣本的分類(lèi)就不會(huì)有影響,安全管理人員只需計(jì)算出P(X/Cj)×P(Ci)就能得到最大的P(Ci/X),而P(Ci)的計(jì)算公式為P(Ci)=Si/S,P(X/Cj)的計(jì)算公式為P(Cj/X)=∏P(χk)/nk=1Ci。其中,S表示數(shù)據(jù)樣本的綜述,Si表示Ci類(lèi)別的數(shù)據(jù)樣本數(shù),根據(jù)最終的計(jì)算結(jié)果,安全管理人員可以知曉新數(shù)據(jù)樣本屬于哪一類(lèi)的概率較大,并適當(dāng)歸類(lèi)。如當(dāng)根據(jù)樸素貝葉斯計(jì)算新數(shù)據(jù)樣本含惡意代碼的概率小于不含惡意代碼概率,那么被測(cè)網(wǎng)頁(yè)就會(huì)被歸類(lèi)為正常網(wǎng)頁(yè),但如果數(shù)據(jù)樣本的含惡意代碼概率大于不含惡意代碼概率,那么被測(cè)網(wǎng)頁(yè)就會(huì)被歸類(lèi)到惡意網(wǎng)頁(yè)。(3)神經(jīng)網(wǎng)絡(luò)神經(jīng)網(wǎng)絡(luò)的模型多采用BP網(wǎng)絡(luò),其結(jié)構(gòu)為三層神經(jīng)網(wǎng)絡(luò),即該網(wǎng)絡(luò)有三層處理單元,除輸入層外,還有隱含層和輸出層,不同層有各自的神經(jīng)元,具體如圖2所示[4]。從圖中可見(jiàn),神經(jīng)網(wǎng)絡(luò)是一個(gè)向前反饋的數(shù)據(jù)網(wǎng)絡(luò),當(dāng)隱含層和輸出層這兩層處理單元接收到反饋時(shí),會(huì)檢測(cè)其效果是否達(dá)標(biāo),并通過(guò)修改權(quán)重讓訓(xùn)練持續(xù)下去,并以這樣不斷地在反饋接受中修改權(quán)重,持續(xù)訓(xùn)練,來(lái)起到減少誤差的目的,最終完成訓(xùn)練效果,實(shí)現(xiàn)對(duì)數(shù)據(jù)的預(yù)測(cè)和分類(lèi)。

3檢測(cè)惡意代碼的算法構(gòu)建

檢測(cè)惡意代碼的算法以上述三個(gè)算法為基礎(chǔ),采取區(qū)塊鏈技術(shù),增加賬戶數(shù)據(jù)和本地訪問(wèn),在區(qū)塊鏈類(lèi)型中,訪問(wèn)是用哈希值形式存儲(chǔ)在塊數(shù)據(jù),同時(shí),因?yàn)閴K頭上增加了賬戶樹(shù)根,區(qū)塊數(shù)據(jù)結(jié)構(gòu)如圖3所示。其中,Time是時(shí)間戳,是對(duì)礦工挖礦的時(shí)間記錄,而Nonce是作為礦工計(jì)算出的一個(gè)不超過(guò)要求值的哈希值,是礦工完成工作量的證明。從圖3的區(qū)塊數(shù)據(jù)結(jié)構(gòu)可見(jiàn),在區(qū)塊鏈中,PrevBlockHash是以前塊的整個(gè)塊數(shù)據(jù)進(jìn)行哈希運(yùn)算后得到的哈希指針,這個(gè)哈希指針從結(jié)構(gòu)中的前塊指向后塊,所以后塊就保留了前塊的哈希值,也就是說(shuō)每個(gè)區(qū)塊中會(huì)保存上一個(gè)塊的哈希值,這樣一來(lái)就形成了鏈?zhǔn)浇Y(jié)構(gòu),同時(shí)輕量型區(qū)塊鏈也具備了不可篡改性。因?yàn)橄乱粋€(gè)塊要記錄上一個(gè)塊的哈希值,如果改動(dòng)任意一個(gè)區(qū)塊的身前區(qū)塊數(shù)據(jù),就會(huì)引發(fā)數(shù)據(jù)沖突,而身后區(qū)塊的PrevBlockHash就會(huì)對(duì)身前區(qū)塊的數(shù)據(jù)進(jìn)行檢驗(yàn),避免了訪問(wèn)中存在的數(shù)據(jù)錯(cuò)誤,利用這種逐層計(jì)算訪問(wèn)哈希值的方式,檢驗(yàn)訪問(wèn)本身的合法性。在運(yùn)行區(qū)塊鏈時(shí),操作人員只需要將訪問(wèn)中需要計(jì)算的訪問(wèn)數(shù)據(jù)和該區(qū)塊中其他訪問(wèn)做運(yùn)算,然后將ROOT值做簡(jiǎn)單比較就可以驗(yàn)證訪問(wèn)合法性。當(dāng)發(fā)現(xiàn)疑似不合法信息時(shí),獲取網(wǎng)頁(yè)的源代碼文件,然后進(jìn)行檢測(cè),三種算法會(huì)對(duì)網(wǎng)頁(yè)源代碼使用正則表達(dá)式進(jìn)行處理,提取其中的<iframe>和<script>兩個(gè)標(biāo)簽之間的代碼,并對(duì)提取到的代碼做詞頻統(tǒng)計(jì)和詞頻向量化處理,從中獲取到特征,在獲取到特征之后使用訓(xùn)練好的模型對(duì)網(wǎng)頁(yè)進(jìn)行分類(lèi),判定網(wǎng)頁(yè)屬于正常網(wǎng)頁(yè)還是惡意網(wǎng)頁(yè),當(dāng)網(wǎng)頁(yè)被三種算法中的兩種認(rèn)定為正常網(wǎng)頁(yè)時(shí),表明該網(wǎng)頁(yè)不存在惡意代碼,如果有至少兩種算法認(rèn)定該網(wǎng)頁(yè)屬于惡意網(wǎng)頁(yè),表明該網(wǎng)頁(yè)存在惡意代碼。

4結(jié)語(yǔ)

綜上所述,網(wǎng)頁(yè)運(yùn)行的安全性與穩(wěn)定性,能夠?qū)W(wǎng)絡(luò)用戶的休閑娛樂(lè)、資訊信息獲取產(chǎn)生促進(jìn)作用。但是計(jì)算機(jī)在使用中容易受到網(wǎng)絡(luò)安全隱患,為廣大用戶日常生活帶來(lái)了不利影響。管理人員必須在網(wǎng)絡(luò)安全防護(hù)中增加投入,既要建立完善的檢測(cè)算法,也要配置先進(jìn)的軟件設(shè)備,并增強(qiáng)用戶網(wǎng)絡(luò)安全防護(hù)意識(shí),才能構(gòu)建安全、穩(wěn)定的網(wǎng)絡(luò)環(huán)境,真正發(fā)揮出網(wǎng)頁(yè)的信息共享和傳遞功能。

參考文獻(xiàn):

[1]邵福駿.移動(dòng)平臺(tái)惡意軟件檢測(cè)算法的設(shè)計(jì)與實(shí)現(xiàn)[D].電子科技大學(xué),2020.

[2]基于N-gram特征的網(wǎng)絡(luò)惡意代碼分析方法[J].數(shù)字技術(shù)與應(yīng)用,2020,357(03):59-60+62.

[3]朱翔宇,張健,高鋮,等.基于虛擬化環(huán)境惡意代碼檢測(cè)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].天津理工大學(xué)學(xué)報(bào),2020,158(01):15-20+27.

[4]張華,陳淑珍.基于BP神經(jīng)網(wǎng)絡(luò)算法的惡意代碼檢測(cè)系統(tǒng)[J].莆田學(xué)院學(xué)報(bào),2020,130(05):75-80.

作者:謝淑林 單位:福建寧德財(cái)經(jīng)學(xué)校

相關(guān)熱門(mén)標(biāo)簽