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

        ?

        基于Transformer-LSTM模型的跨站腳本檢測方法

        2023-10-09 01:47:12趙斯祺
        計算機應(yīng)用與軟件 2023年9期
        關(guān)鍵詞:特征實驗檢測

        趙斯祺 代 紅 王 偉

        (遼寧科技大學(xué)計算機與軟件工程學(xué)院 遼寧 鞍山 114051)

        0 引 言

        跨站腳本攻擊(Cross Site Scripting),簡稱XSS攻擊,是一種基于代碼注入的Web安全威脅,攻擊者可以通過攻擊網(wǎng)站或Web應(yīng)用程序來訪問敏感信息。當(dāng)使用不安全的輸入或惡意的XSS鏈接將惡意的JavaScript代碼注入到Web應(yīng)用程序中時,就可能發(fā)生這類攻擊[1]。這些類型的攻擊可以在任何沒有輸入驗證且對用戶輸入的安全性實現(xiàn)很差的站點上執(zhí)行[2]。XSS攻擊可以分為三類:反射型XSS攻擊、存儲型XSS攻擊和基于DOM的XSS攻擊[3]。傳統(tǒng)的XSS攻擊檢測方法主要是基于已有特征,進(jìn)行特征匹配來檢測[4]。這種方法對已知攻擊有較好的檢測效果,但難以檢測未知攻擊,對于惡意變形的XSS攻擊檢測效果不好。隨后研究者提出了機器學(xué)習(xí)的方法。吳少華等[5]將SVM算法用于XSS攻擊檢測。趙澄等[6]建立了一種改進(jìn)后的SVM分類器識別XSS攻擊,提取出典型的五維特征進(jìn)行特征優(yōu)化。Wang等[7]提出了一種基于分類器與改進(jìn)的n-gram模型相結(jié)合的OSN中XSS檢測方法。三者提出的檢測方案都是基于傳統(tǒng)的機器學(xué)習(xí)算法,對未知的XSS攻擊有較好的檢測效果,但對惡意變形的XSS攻擊檢測效果并不顯著,而且研究者們所用的機器學(xué)習(xí)方法需要人工提取XSS攻擊的特征,人工提取特征主觀性強,容易造成特征提取不充分,影響分類結(jié)果。隨著研究深入,研究者開始將深度神經(jīng)網(wǎng)絡(luò)運用到XSS攻擊檢測,深度學(xué)習(xí)算法可以自動學(xué)習(xí)特征,減少人工提取特征的不足。Li等[8]首次將深度學(xué)習(xí)應(yīng)用到漏洞檢測領(lǐng)域,實驗結(jié)果表明,上述方法的預(yù)測精度要優(yōu)于傳統(tǒng)神經(jīng)網(wǎng)絡(luò)和機器學(xué)習(xí)算法。Fang等[9]使用長短時記憶網(wǎng)絡(luò)(LSTM)構(gòu)建分類模型,實驗結(jié)果表明LSTM模型對XSS攻擊檢測效果較好。兩者對于深度學(xué)習(xí)的應(yīng)用解決了人工提取存在的不足,但對惡意變形的XSS攻擊檢測還要進(jìn)一步提高準(zhǔn)確性。

        通過研究,為減少人工提取存在的問題,提高惡意變形的XSS攻擊檢測效果,本文提出一種基于Transformer-LSTM模型的跨站腳本檢測方法。通過前期數(shù)據(jù)預(yù)處理,使用解碼技術(shù)解決XSS攻擊惡意變形問題,并利用Transformer-LSTM模型自動學(xué)習(xí)XSS攻擊特征,減少人工提取特征存在的不足。實驗結(jié)果表明,本文方法較傳統(tǒng)機器學(xué)習(xí)方法和普通的深度學(xué)習(xí)方法具有更高的準(zhǔn)確率、更好的召回率。

        1 神經(jīng)網(wǎng)絡(luò)

        1.1 Transformer模型

        Transformer模型是一種基于自我關(guān)注機制的新穎神經(jīng)網(wǎng)絡(luò)體系結(jié)構(gòu)[10]。整個結(jié)構(gòu)是由編碼組件、解碼組件和它們之間的連接層組成。編碼組件是六層編碼器首尾相連堆砌而成,解碼組件也是六層解碼器堆砌而成,模型結(jié)構(gòu)如圖1所示。左邊為編碼器(N=6),編碼器結(jié)構(gòu)完全相同,但并不共享參數(shù),每一個編碼器有兩個子層,為多頭注意力子層和全連接的前饋神經(jīng)網(wǎng)絡(luò)層。右邊為解碼器(N=6),解碼器同樣有這兩個子層,但不同的是,在這兩個子層間增加了一個Masked多頭注意力層[11]。為使整個模型結(jié)構(gòu)達(dá)到更好的深度網(wǎng)絡(luò)效果,在兩個子層中使用一個殘差連接,并進(jìn)行層標(biāo)準(zhǔn)化。

        圖1 Transformer模型框架

        Transformer模型拋棄循環(huán)神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),完全采用Attention取而代之,詞序之間的信息就會丟失,模型就無法得知每個詞在句子中的相對位置和絕對位置信息。因此,有必要把詞序信號加到詞向量上幫助模型學(xué)習(xí)這些信息,位置編碼(Positional Encoding)需要將詞序信息和詞向量結(jié)合起來形成一種新的表示輸入給模型,這樣模型就具備學(xué)習(xí)詞序信息的能力。具體計算式表示為:

        PE(pos,2i)=sin(pos/1 0002i/dmodel)

        (1)

        PE(pos,2i+1)=cos(pos/1 0002i/dmodel)

        (2)

        式中:PE為二維矩陣,行表示詞語,列表示詞向量,pos表示單詞的位置索引,i表示詞向量的某一維度;dmodel是詞向量的維度。式(1)、式(2)表示在每個詞語的詞向量的偶數(shù)位置添加sin變量,奇數(shù)位置添加cos變量,以此填滿PE矩陣,然后添加到嵌入層中,這樣的編碼方式可以得到詞語之間的相對位置和絕對位置。

        注意力機制描述為一個查詢(query)到一組鍵值對(key-value)的映射,計算公式表示為:

        Attention(Q,K,V)=softmax(QKT)V

        (3)

        放縮點積注意力計算式表示為:

        (4)

        研究人員引入了多頭注意力,這使得模型能夠關(guān)注來自不同位置的不同表示子空間的信息,能夠充分提取內(nèi)部關(guān)系。多頭注意力就是把多個自注意力連起來,同時,通過減低維度來減少總計算消耗,計算公式表示為:

        MultiHead(Q,K,V)=Concat(head1,head2,…,headh)WO

        (5)

        (6)

        FFN(x)=max(0,xW1+b1)W2+b2

        (7)

        式中:x代表輸入;W1、W2表示第一次和第二次線性變換的參數(shù)矩陣;b1、b2表示第一次和第二次線性變換的偏置向量。

        1.2 LSTM模型

        長短時記憶模型(Long-Short Term Memory,LSTM)是一種特殊的RNN模型,是為了解決RNN模型梯度彌散問題而提出[12-13]。LSTM網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示。

        圖2 LSTM網(wǎng)絡(luò)結(jié)構(gòu)

        LSTM由遺忘門(forget gate)、輸入門(input gate)和輸出門(output gate)、單元狀態(tài)(cell state)來更新和保留歷史信息[14]。其中,遺忘門決定丟棄上一個單元狀態(tài)ct-1傳遞到當(dāng)前單元狀態(tài)ct的部分信息[15];輸入門決定了保留當(dāng)前時刻網(wǎng)絡(luò)的輸入xt傳遞到單元狀態(tài)ct部分信息;輸出門決定當(dāng)前輸出值ht。

        遺忘門的計算為:

        ft=σ1(Wf·[ht-1,xt]+bf)

        (8)

        式中:Wf為遺忘門的權(quán)重矩陣;ht-1為上一個單元狀態(tài)的輸出;xt為當(dāng)前細(xì)胞的輸入;bf為遺忘門的偏置項;σ為sigmoid函數(shù)。

        輸入門的計算為:

        it=σ2(Wi·[ht-1,xt]+bi)

        (9)

        式中:Wi是輸入門的權(quán)重矩陣;bi是輸入門的偏置項。

        (10)

        (11)

        式(11)用于將舊的單元狀態(tài)ct-1更新為新的單元狀態(tài)ct。

        輸出門的計算為:

        ot=σ3(Wo·[ht-1,xt]+bo)

        (12)

        ht=ot×tanh(ct)

        (13)

        最終的輸出由輸出門和單元狀態(tài)共同決定。

        2 Transformer-LSTM模型

        2.1 數(shù)據(jù)預(yù)處理

        實驗數(shù)據(jù)分為正樣本數(shù)據(jù)和負(fù)樣本數(shù)據(jù),正樣本數(shù)據(jù)是利用爬蟲工具從XSSed網(wǎng)站爬取,負(fù)樣本數(shù)據(jù)是從各網(wǎng)絡(luò)平臺通過網(wǎng)絡(luò)爬蟲獲得。本文對所收集的正樣本數(shù)據(jù)和負(fù)樣本數(shù)據(jù)進(jìn)行了預(yù)處理,分為數(shù)據(jù)清洗、分詞、向量化,如圖3所示。

        (1) 數(shù)據(jù)清洗:完整的URL請求包括協(xié)議、域名、端口、虛擬目錄、文件名和參數(shù)。為了保證數(shù)據(jù)安全,只保留虛擬目錄、文件名和參數(shù)。XSS攻擊為了逃避檢測利用編碼技術(shù)惡意變形,主要有HTML編碼和URL編碼,因此,在分詞之前需要通過解碼技術(shù)進(jìn)行相應(yīng)的解碼,提高數(shù)據(jù)質(zhì)量。

        (2) 分詞:數(shù)據(jù)清洗之后,為了減少分詞數(shù)量,需要把數(shù)字和超鏈接范化。將數(shù)字替換為“0”,超鏈接替換為“http://u”。考慮到參數(shù)內(nèi)包含完整可執(zhí)行的標(biāo)簽和事件,將同一類型標(biāo)簽和事件收集起來,通過正則表達(dá)式進(jìn)行匹配。因此,設(shè)計了符合要求的分詞規(guī)則為:單雙引號里的內(nèi)容,帶有http/https的鏈接,腳本標(biāo)簽,標(biāo)簽開頭,屬性名,函數(shù)體。如表1所示。

        表1 分詞規(guī)則

        (3) 向量化:XSS攻擊通常執(zhí)行的是HTML/JavaScript腳本,具有一些語義的關(guān)聯(lián)??梢允褂们度胧皆~向量模型,建立一個XSS的語義模型,使機器能夠理解

        四虎影视一区二区精品| 蜜桃视频在线免费观看| 亚洲精品无码av人在线观看| 欧美日韩一卡2卡三卡4卡 乱码欧美孕交| 久久久久久久妓女精品免费影院| 新久久久高清黄色国产| 日韩高清不卡一区二区三区| 曰本女人与公拘交酡| 中文字幕人妻偷伦在线视频| 狠狠综合亚洲综合亚色| 自拍偷区亚洲综合第一页| 日韩国产人妻一区二区三区| 少妇人妻200篇白洁| 日本专区一区二区三区| 国产免费人成视频在线观看播放播| 黑人大群体交免费视频| 99精品免费久久久久久久久日本 | 国产成人综合久久大片| 无码中文字幕人妻在线一区| 国产性一交一乱一伦一色一情| 中文精品久久久久中文| av成人综合在线资源站| 天天爽夜夜爽人人爽| 日本亚洲国产一区二区三区| 国产一区二区三区免费精品| 午夜男女靠比视频免费| 亚洲精品无码久久久影院相关影片 | 精品少妇一区二区三区入口| 成人亚洲一区二区三区在线| 亚洲免费观看在线视频| 国产精品亚洲一区二区极品| 一本色道久久综合亚洲| 人人妻人人澡人人爽欧美精品| 热久久网站| 亚洲三区av在线播放| 中文字幕人妻丝袜成熟乱| 日本不卡在线视频二区三区| 国产成人久久精品77777综合| 亚洲福利二区三区四区| 午夜福利一区二区三区在线观看| 亚洲综合国产精品一区二区99|