999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

面向電力信息系統(tǒng)日志數(shù)據(jù)的注入攻擊特征提取方法

2021-03-16 13:29:18朱靜雯
關(guān)鍵詞:特征用戶檢測

殷 博 朱靜雯 劉 磊 許 靜

1(國網(wǎng)天津市電力公司 天津 300010)

2(南開大學(xué)軟件學(xué)院 天津 300350)

3(南開大學(xué)人工智能學(xué)院 天津 300350)

0 引 言

隨著電力信息系統(tǒng)接入互聯(lián)網(wǎng),電力信息網(wǎng)絡(luò)安全變得越來越重要。近年來我國電力行業(yè)信息系統(tǒng)發(fā)展迅速,與多種業(yè)務(wù)系統(tǒng)智能互聯(lián),如用戶用電業(yè)務(wù)系統(tǒng)、充電樁業(yè)務(wù)系統(tǒng)等。電力業(yè)務(wù)相關(guān)數(shù)據(jù)不斷積累,提高電網(wǎng)信息系統(tǒng)面對外界惡意攻擊時(shí)的防控能力對保證電網(wǎng)安全、穩(wěn)定、高效運(yùn)行非常重要。在Web應(yīng)用的所有安全問題中,SQL注入是危害嚴(yán)重且影響范圍較廣的重要問題之一,據(jù)OWASP[1]和CVE[2]統(tǒng)計(jì),近幾年SQL注入攻擊(SQL-Injection Attacks,SQLIA)在十大Web安全隱患中穩(wěn)居第一,而且SQL注入在所有被報(bào)告的安全漏洞中也是頻率增長最快的類型。與傳統(tǒng)Web相比,電力信息Web系統(tǒng)具有規(guī)模大、業(yè)務(wù)邏輯實(shí)時(shí)多樣、專用性強(qiáng)等特點(diǎn),這也導(dǎo)致了針對電力信息Web系統(tǒng)SQL注入攻擊的檢測難度大。其實(shí)現(xiàn)過程中容易產(chǎn)生大量漏洞,并且對此進(jìn)行的攻擊事件越來越多且難以辨別,因而對于電力信息Web系統(tǒng)SQL注入攻擊檢測技術(shù)的研究十分必要。基于Web信息系統(tǒng)訪問日志挖掘用戶訪問行為的研究日益增多,文獻(xiàn)[3-5]均是對用戶訪問日志進(jìn)行分析,用于檢測分布式拒絕服務(wù)攻擊(DDOS)以及Web爬蟲行為。

本文提出一種面向電力信息系統(tǒng)日志數(shù)據(jù)的注入攻擊特征提取方法。首先,分析Web訪問日志和SQL注入特征,提出一種從自定義Web訪問日志中提取SQL注入語法特征和行為特征的方法;其次,對日志進(jìn)行預(yù)處理和特征提取操作,得到語法特征矩陣和行為特征矩陣;最后,在兩類特征數(shù)據(jù)集的基礎(chǔ)上使用4種算法模型進(jìn)行實(shí)驗(yàn)。結(jié)果表明,將SQL注入攻擊的檢測與語法特征和行為特征相結(jié)合的方式,可以有效檢測SQL注入攻擊。使用該方法,電力信息Web系統(tǒng)安全管理員能夠及時(shí)發(fā)現(xiàn)系統(tǒng)的惡意訪問用戶,從而提前采取防范措施、避免損失。

1 相關(guān)工作

針對Web系統(tǒng)的漏洞挖掘技術(shù),國內(nèi)高校、研究機(jī)構(gòu)和企業(yè)積極開展相關(guān)技術(shù)研究[6-7]。國內(nèi)外現(xiàn)有的漏洞利用工具,如綠盟推出的Web應(yīng)用漏洞掃描系統(tǒng)、開源滲透測試框架Metasploit Framework(MSF)等雖各有所長,但是并沒有與電力信息Web系統(tǒng)多場景的特點(diǎn)相結(jié)合。

目前對SQLIA的檢測主要有基于規(guī)則匹配[6]和基于查詢語法樹[7]的方法。韓宸望等[8]將基于SQL語法樹比較的安全策略引入用戶輸入過濾的設(shè)計(jì)中,提出了一種新的SQL注入過濾方法,該方法能夠有效防止SQLIA,并有較高的攔截率和較低的誤報(bào)率。王苗苗等[9]對大量SQL注入攻擊報(bào)文的攻擊特征進(jìn)行總結(jié)分析,提出了一種基于通用規(guī)則的SQL注入攻擊檢測與防御的方法,利用SQL注入檢測工具SQLMap進(jìn)行SQL注入攻擊模擬,捕捉攻擊流量,提取攻擊特征,總結(jié)通用規(guī)則。Kim等[10]提出一種基于內(nèi)部查詢樹和SVM的SQLIA檢測方法,該方法從數(shù)據(jù)庫級(jí)別的日志中收集SQL查詢樹信息,從復(fù)雜和多變的查詢樹中提取語法特征和語義特征,但是在實(shí)現(xiàn)和操作上比較復(fù)雜。張志超等[11]提出一種基于人工神經(jīng)元網(wǎng)絡(luò)的SQL注入漏洞的分析模型,在識(shí)別SQL關(guān)鍵字注入攻擊特點(diǎn)的基礎(chǔ)上,利用人工神經(jīng)元網(wǎng)絡(luò)算法對SQL注入語句進(jìn)行檢測,能夠直接分析SQL語句,判斷用戶輸入的SQL語句是否為SQL注入的語句,該模型可提高SQL注入漏洞檢測的準(zhǔn)確率和執(zhí)行效率。Singh等[12]提出了一種算法,不僅可以檢測SQL注入攻擊,而且可以通過機(jī)器學(xué)習(xí)技術(shù),維護(hù)審計(jì)記錄檢測未授權(quán)用戶的訪問。

基于規(guī)則匹配的方法能夠很好地檢測出規(guī)則庫中已知的SQLIA類型,準(zhǔn)確率高,誤報(bào)率小。但該方法過度依賴于規(guī)則知識(shí)庫,不能檢測出未知攻擊,漏報(bào)率高,而當(dāng)前的SQLIA手段總是在不斷更新和變化。基于查詢語法樹通過比對安全的查詢語句語法樹和待測語句的語法樹,若兩個(gè)語法樹不同,則該查詢語句為SQL注入攻擊。但該方法漏報(bào)率和誤報(bào)率都比較高,并且也不能檢測出未知SQL注入攻擊。

電力信息系統(tǒng)規(guī)模龐大,對安全性要求較高,目前面向電力信息Web系統(tǒng)特點(diǎn)的SQL注入攻擊檢測方法的研究較少。為了提高電力信息Web系統(tǒng)的安全性,防止用戶通過輸入提交惡意SQL語句制造SQL注入攻擊,本文提出一種面向電力信息系統(tǒng)日志數(shù)據(jù)的注入攻擊特征提取方法,提高對SQL注入攻擊檢測的準(zhǔn)確性。

2 SQL注入特征提取

首先對用戶訪問Web系統(tǒng)產(chǎn)生的日志數(shù)據(jù)進(jìn)行解碼、分析等預(yù)處理操作。然后從日志文件中提取語法特征字段以及行為特征字段。由于SQL注入攻擊包含一系列Web訪問動(dòng)作,因此提取行為特征字段之前還需要進(jìn)行用戶識(shí)別和會(huì)話識(shí)別,再對提取的特征字段進(jìn)行類別標(biāo)注,形成特征字段訓(xùn)練集以及測試集。最后使用分類/聚類算法進(jìn)行訓(xùn)練建模。本文提出的方法架構(gòu)如圖1所示。

圖1 本文方法架構(gòu)

2.1 自定義Web訪問日志

服務(wù)器默認(rèn)的日志字段中記錄了用戶訪問的URL,通過URL字段中的用戶輸入信息判斷是否為惡意輸入。然而只能記錄GET請求類型的參數(shù),無法記錄POST類型的參數(shù)以及HTTP HEADER的注入信息。因此若使用服務(wù)器默認(rèn)的日志分析SQL注入攻擊行為,則會(huì)導(dǎo)致大量攻擊無法檢測,進(jìn)而導(dǎo)致漏報(bào)率高,無法達(dá)到防御攻擊的目的。由于Apache服務(wù)器日志中包含許多與研究目標(biāo)無關(guān)的記錄和字段,這些信息不需要記錄在內(nèi)。此外,為了提高日志處理效率,本文自定義了Web訪問日志的格式,根據(jù)研究目標(biāo),確定6個(gè)日志字段信息,日志以文本文件的格式保存在服務(wù)器端。日志各字段及含義如表1所示。

表1 日志字段及含義

Time記錄服務(wù)器完成請求處理時(shí)的時(shí)間,IPAddr表示訪問用戶的IP地址,RemoteHost記錄用戶訪問的主機(jī)名,UserAgent記錄用戶操作系統(tǒng)和瀏覽器信息,以上4個(gè)字段用于確定SQL注入行為特征。IPAddr、RemoteHost和UserAgent字段可以進(jìn)行用戶識(shí)別,之后根據(jù)訪問時(shí)間進(jìn)行會(huì)話識(shí)別。

ReqMethod字段表示用戶發(fā)送請求使用的方法,主要有g(shù)et、post、head和put方法,其中g(shù)et和post方法最為常用。

InputPara記錄用戶請求的輸入?yún)?shù)。SQL注入攻擊就是由于不安全的用戶輸入導(dǎo)致的。通過InputPara可初步判斷用戶輸入數(shù)據(jù)的安全性。SQL注入語法特征的提取主要是從InputPara字段獲得。

2.2 語法特征提取

SQL注入攻擊發(fā)生時(shí)輸入的參數(shù)在語法方面具有共同特征,都是將輸入?yún)?shù)直接拼接到SQL語句中,從而改變SQL語句功能,竊取數(shù)據(jù)。根據(jù)SQL注入攻擊參數(shù)的一般形式和語法特征,可將SQL注入攻擊參數(shù)分為7部分,每個(gè)字段擁有相應(yīng)功能并完成相應(yīng)的注入目的。按照在SQL注入語句中出現(xiàn)的順序,7個(gè)字段分別為:(1) 前終結(jié)符,用PreTerm表示;(2) 注入前綴,用InjecPrefix表示;(3) 注入關(guān)鍵詞,用InjecKey表示;(4) 常量參數(shù),用ConstPar表示;(5) 大寫字母,用UpLet表示;(6) 其他特殊字符,用SpecLet表示;(7) 后終結(jié)符,用SufTerm表示。SQL注入語法特征字段含義及實(shí)例說明如表2所示。

表2 SQL注入語法特征字段

圖2所示為生成語法特征矩陣的工作流程。圖2(a)為SQL注入語句的提取流程,其中日志文件為經(jīng)過解碼處理后得到的日志文件,這是由于服務(wù)器記錄的用戶訪問日志的輸入?yún)?shù)字段是經(jīng)過編碼的字符串,所以首先需要對日志的輸入?yún)?shù)字段進(jìn)行解碼等預(yù)處理。經(jīng)過解碼處理后,對每條日志進(jìn)行分析,判斷其是否符合SQL注入特征。對于符合SQL注入特征的語句提取形成SQL注入語句文件,然后根據(jù)提取結(jié)果,在字段分析時(shí)采取分支結(jié)構(gòu)判斷SQL語句中是否有符合上述7個(gè)字段的字符,如圖2(b)所示。每個(gè)字段的值均為BOOL類型,0值表示該條日志記錄不包含此字段,1值表示該條日志記錄包含此字段。對所有的日志記錄處理之后,形成大小為n×7的矩陣,其中n為日志記錄個(gè)數(shù),7為每條日志記錄的特征字段個(gè)數(shù)。由此得到SQL注入語法特征矩陣。

(a) SQL注入語句提取流程 (b) 語法特征矩陣生成流程

2.3 行為特征提取

SQL注入攻擊是逐步嘗試進(jìn)行完成,包含一系列Web訪問動(dòng)作。若只考慮每條日志的SQL注入語法特征,在標(biāo)注標(biāo)準(zhǔn)嚴(yán)格的情況下,偶爾一次的輸入錯(cuò)誤當(dāng)作攻擊行為,會(huì)出現(xiàn)誤報(bào);反之,容易出現(xiàn)漏報(bào)。SQL注入攻擊步驟如圖3所示。

圖3 SQL注入攻擊步驟

(1) 尋找SQL注入點(diǎn)。在動(dòng)態(tài)網(wǎng)頁輸入?yún)?shù)的位置,通過不合法或邏輯錯(cuò)誤的輸入、推斷攻擊、重言式攻擊和SQL盲注入的方式判斷是否存在SQL注入。

(2) 確認(rèn)SQL注入點(diǎn)。在找到SQL注入點(diǎn)后,還需進(jìn)一步確認(rèn)SQL注入點(diǎn)的真實(shí)性和注入類型。一般需要多次嘗試,根據(jù)系統(tǒng)錯(cuò)誤信息和數(shù)據(jù)庫錯(cuò)誤信息來區(qū)分是字符、數(shù)字還是字符串類型的注入。

(3) 獲取系統(tǒng)和數(shù)據(jù)庫信息。由于不同數(shù)據(jù)庫具體的注入方式不同,所以還需要進(jìn)一步獲取系統(tǒng)和數(shù)據(jù)庫相關(guān)信息。該過程可以使用UNION聯(lián)合查詢、多語句命令執(zhí)行,利用內(nèi)置函數(shù)實(shí)現(xiàn),猜測數(shù)據(jù)庫的類型、表名、列名、判斷列的數(shù)據(jù)類型等。

(4) 實(shí)施注入攻擊。在確定數(shù)據(jù)庫信息之后,利用SQL注入漏洞進(jìn)行真正的攻擊,包括擴(kuò)張權(quán)限、竊取/篡改信息、惡意代碼執(zhí)行、腳本上傳等。

SQL注入攻擊特征不僅體現(xiàn)在SQL語句的語法特征上,在用戶訪問行為上同樣具有異于正常訪問行為的特征。例如用戶在同一個(gè)會(huì)話內(nèi)重復(fù)多次請求同一個(gè)網(wǎng)頁、在一定的時(shí)間內(nèi)發(fā)生大量的會(huì)話等。因此,分析SQL注入行為特征時(shí),也需要進(jìn)行用戶識(shí)別和會(huì)話識(shí)別。

本文根據(jù)Web訪問日志的IPAddr、RemoteHost和UserAgent字段進(jìn)行用戶識(shí)別。如果兩條Web訪問日志記錄的IPAddr、RemoteHost和UserAgent三個(gè)字段對應(yīng)相等,則認(rèn)為這兩條日志屬于同一用戶的操作記錄,否則屬于不同用戶。

設(shè)置會(huì)話持續(xù)時(shí)間閾值T,把T時(shí)間段內(nèi)的訪問記錄作為一個(gè)會(huì)話,本文使用啟發(fā)式方法動(dòng)態(tài)確定閾值,以自適應(yīng)的閾值識(shí)別會(huì)話。設(shè)最大請求數(shù)Rmax,如果當(dāng)前會(huì)話的請求數(shù)小于Rmax,設(shè)置閾值為T1;如果請求數(shù)達(dá)到Rmax,設(shè)置閾值為T2,T2>T1。在實(shí)驗(yàn)中,Rmax取值為100,T1為30分鐘,T2為60分鐘。會(huì)話識(shí)別中,每個(gè)會(huì)話中有多個(gè)日志訪問記錄,定義每個(gè)會(huì)話中含有的記錄數(shù)目稱為該會(huì)話的長度,用len_session表示。SQL注入行為特征字段如圖4所示。

圖4 SQL注入行為特征字段

各字段含義如下:

(1) PPT(Percentage of PreTerm):含有前終結(jié)符的記錄數(shù)目與會(huì)話長度的比例,即PPT=npt/len_session,npt為該會(huì)話中含有前終結(jié)符的記錄數(shù)目。

(2) PIP(Percentage of InjecPrefix):含有注入前綴的記錄數(shù)目與會(huì)話長度的比例,即PIP=nip/len_session,nip為該會(huì)話中含有注入前綴的記錄數(shù)目。

(3) PIK(Percentage of InjecKey):含有注入關(guān)鍵詞的記錄數(shù)目與會(huì)話長度的比例,即PIK=nik/len_session,nik為該會(huì)話中含有注入關(guān)鍵詞的記錄數(shù)目。

(4) PCP(Percentage of ConstPar):含有常量參數(shù)的記錄數(shù)目與會(huì)話長度的比例,即PCP=ncp/len_session,ncp為該會(huì)話中含有常量參數(shù)的記錄數(shù)目。

(5) PUL(Percentage of UpLet):含有大寫字母的記錄數(shù)目與會(huì)話長度的比例,即PUL=nul/len_session,nul為該會(huì)話中含有大寫字母的記錄數(shù)目。

(6) PSL(Percentage of SpecLet):含有其他特殊字符的記錄數(shù)目與會(huì)話長度的比例,即PSL=nsl/len_session,nsl為該會(huì)話中含有其他特殊字符的記錄數(shù)目。

(7) PST(Percentage of SufTerm):含有后終結(jié)符的記錄數(shù)目與會(huì)話長度的比例,即PSE=nst/len_session,nst為該會(huì)話中含有后終結(jié)符的記錄數(shù)目。

(8) PRT(Percentage of Max Request Times):請求次數(shù)最多的頁面被請求的次數(shù)與會(huì)話長度的比例,即PRT=nrt/len_session,nrt為該會(huì)話中被請求次數(shù)最多的頁面被請求的次數(shù)。

(9) DT(Duration Time):會(huì)話的持續(xù)時(shí)間,即會(huì)話最后一條記錄的時(shí)間與第一條記錄的時(shí)間差。

日志預(yù)處理、用戶識(shí)別和會(huì)話識(shí)別后進(jìn)行行為特征字段提取,提取每個(gè)會(huì)話中的上述9個(gè)特征字段值,每個(gè)字段值的范圍是0~1。對所有會(huì)話記錄進(jìn)行SQL注入行為特征提取之后,形成大小為n×9的矩陣,其中n為會(huì)話記錄的個(gè)數(shù),9為每個(gè)會(huì)話的特征字段個(gè)數(shù)。由此得到SQL注入行為特征矩陣。

3 實(shí) 驗(yàn)

3.1 實(shí)驗(yàn)對象

通過分析電力信息系統(tǒng)特點(diǎn),本文搭建相應(yīng)的Web應(yīng)用系統(tǒng),并將其部署于模擬電力信息系統(tǒng)的實(shí)驗(yàn)環(huán)境中。在系統(tǒng)源代碼中人工添加GET、POST、HTTP Cookie、HTTP Referer和HTTP Header “X-Forwarded-For”5大種類共計(jì)13個(gè)SQL注入漏洞,如表3所示。

表3 Web系統(tǒng)SQL注入漏洞列表

針對SQL注入攻擊的需求,本文在模擬實(shí)驗(yàn)環(huán)境中部署的Web系統(tǒng)上增加了相應(yīng)的SQL注入漏洞入口。采用多用戶以及SQL注入工具的方式進(jìn)行多次正常訪問和嘗試攻擊,記錄下用戶訪問日志,其中部分日志InputPara信息如下:

controller=site&action=pro_list&cat=57

controller=site&action=pro_list&cat=

57 and(select count(1) from sysobjects)>0 And 1=1

controller=site&action=pro_list&cat=

57 and len(@@version)>0 And 1=1

controller=site&action=pro_list&cat=

57 and(select count(table_name) from user_tables)>0 And 1=1

controller=site&action=pro_list&cat=

57 and 1=1-- And 1=1

controller=site&action=pro_list&cat=

57 and 1=1/* And 1=1

controller=site&action=pro_list&cat=

57 and 0<=(select count(*) from master..syslogins) And 1=1

對Web訪問日志進(jìn)行去除無效訪問日志、解碼等預(yù)處理操作步驟,然后進(jìn)行特征提取,形成語法特征(Syntactic Feature,SF)矩陣與行為特征(Behavioral Feature,BF)矩陣兩類實(shí)驗(yàn)數(shù)據(jù)集。SQL注入攻擊數(shù)與正常訪問日志數(shù)比例如圖5所示,其中TrainSet為訓(xùn)練集,TestSet為測試集。

圖5 SQL注入攻擊數(shù)與正常訪問日志數(shù)比例

3.2 評(píng)估指標(biāo)

在入侵、攻擊檢測等研究中,常用漏報(bào)率和誤報(bào)率評(píng)價(jià)檢測方法的有效性[10,13]。漏報(bào)率即沒有檢測出來的攻擊記錄數(shù)與總攻擊記錄數(shù)的比例,用FNR(False Negative Rate)表示;誤報(bào)率即被檢測出來是攻擊但實(shí)際上是正常的記錄數(shù)與總的正常記錄數(shù)的比例,用FPR(False Positive Rate)表示。本文使用FNR和FPR評(píng)估檢測算法的有效性,通常具有較低漏報(bào)率和誤報(bào)率的模型檢測效果較好。誤報(bào)率和漏報(bào)率的計(jì)算分別如下:

FPR=FP/(FP+TN)

(1)

FNR=FN/(TP+FN)

(2)

式中:FP表示實(shí)際是正常的日志記錄,但檢測結(jié)果是SQLIA的日志記錄個(gè)數(shù);TN表示實(shí)際與檢測結(jié)果均是正常的訪問日志記錄;FN表示沒有檢測出來的SQLIA日志記錄個(gè)數(shù);TP表示實(shí)際與檢測結(jié)果均是SQLIA的訪問日志記錄數(shù)目。

3.3 實(shí)驗(yàn)結(jié)果

實(shí)驗(yàn)平臺(tái)為Windows 7,系統(tǒng)內(nèi)存4 GB,CPU為Core i3,使用Firefox瀏覽器,在模擬電力信息系統(tǒng)實(shí)驗(yàn)環(huán)境下運(yùn)行Web應(yīng)用。

使用K-means、樸素貝葉斯(Naive Bayes)、支持向量機(jī)(Support Vector Machine, SVM)和隨機(jī)森林(Random Forest,RF)算法分別對SQL注入語法特征矩陣和行為特征矩陣建模和預(yù)測,計(jì)算FPR和FNR。使用這兩種特征矩陣目的是評(píng)估語法特征和行為特征在SQL注入攻擊檢測中的效果。

另外,對SQL注入語法特征的每個(gè)樣本類型進(jìn)行重新標(biāo)注設(shè)計(jì)一組對比實(shí)驗(yàn)。進(jìn)行重新標(biāo)注是因?yàn)檎Z法特征是以每個(gè)日志作為一個(gè)樣本,單獨(dú)從每個(gè)日志的語法特征分析該樣本是否是攻擊往往具有一定的偏差。標(biāo)注標(biāo)準(zhǔn)嚴(yán)格會(huì)導(dǎo)致誤報(bào),標(biāo)準(zhǔn)寬松則會(huì)導(dǎo)致漏報(bào)。而行為特征是以用戶的一次會(huì)話作為一個(gè)樣本,其標(biāo)注一般不存在此問題。因此,為了增加實(shí)驗(yàn)結(jié)果的充分性,本文考慮對語法特征進(jìn)行重新標(biāo)注。

首先將兩類實(shí)驗(yàn)數(shù)據(jù)訓(xùn)練集TrainSet_SF(340條SQLIA記錄,25 040條正常訪問記錄)和TrainSet_BF(260條SQLIA記錄,1 590條正常訪問記錄)分別代入上述4種算法模型進(jìn)行訓(xùn)練,并不斷調(diào)整參數(shù)選出效果更優(yōu)的訓(xùn)練模型,采用十折交叉驗(yàn)證方法對模型進(jìn)行綜合驗(yàn)證評(píng)價(jià)。然后將TestSet1_SF(290條SQLIA記錄,1 470條正常訪問記錄)、TestSet2_SF(130條SQLIA記錄,20 380條正常訪問記錄)和TestSet1_BF(110條SQLIA記錄,120條正常訪問記錄)、 TestSet2_BF(130條SQLIA記錄,990條正常訪問記錄)代入4種訓(xùn)練模型進(jìn)行預(yù)測。上述模型對SQL注入攻擊檢測結(jié)果的漏報(bào)率和誤報(bào)率如表4所示。按照同樣的實(shí)驗(yàn)過程對重新標(biāo)注后的語法特征數(shù)據(jù)集SF進(jìn)行實(shí)驗(yàn),漏報(bào)率和誤報(bào)率結(jié)果如表5所示。其中TestSet1_SFR和TestSet2_SFR分別表示重新標(biāo)注后SF的兩個(gè)測試集。

表4 各模型在SQL注入語法特征和行為特征數(shù)據(jù)集的預(yù)測結(jié)果 %

表5 SQL注入語法特征數(shù)據(jù)集重新標(biāo)注前后預(yù)測結(jié)果對比 %

3.4 實(shí)驗(yàn)結(jié)果分析

(1) SQL注入語法特征和行為特征對漏報(bào)率FNR的影響。圖6為各模型在語法特征測試集和行為特征測試集上檢測結(jié)果的漏報(bào)率。可以看出,每個(gè)模型在語法特征數(shù)據(jù)集和行為特征數(shù)據(jù)集上的檢測結(jié)果的漏報(bào)率差距明顯,使用SQL注入行為特征數(shù)據(jù)集進(jìn)行SQL注入攻擊檢測,可以有效降低漏報(bào)率。

圖6 各模型在SF和BF上的FNR結(jié)果

(2) SQL注入語法特征和行為特征對誤報(bào)率FPR的影響。圖7為各模型在語法特征測試集和行為特征測試集上檢測結(jié)果的誤報(bào)率。可以看出,每個(gè)模型在語法特征數(shù)據(jù)集和行為特征數(shù)據(jù)集上的檢測結(jié)果的誤報(bào)率差距不是特別明顯,多數(shù)模型在行為特征數(shù)據(jù)集上測試結(jié)果的誤報(bào)率略高于在語法特征數(shù)據(jù)集上的結(jié)果。這是由于語法特征數(shù)據(jù)集在標(biāo)注時(shí)標(biāo)準(zhǔn)不太嚴(yán)格,導(dǎo)致漏報(bào)率較高,但是誤報(bào)率低。

圖7 各模型在SF和BF上的FPR結(jié)果

綜合考慮FNR和FPR兩個(gè)因素,行為特征在SQL注入攻擊檢測中具有更好的效果。

(3) 各模型檢測效果分析。本文實(shí)驗(yàn)數(shù)據(jù)的特點(diǎn)是小數(shù)據(jù)量和低維度。通過比較各模型在數(shù)據(jù)集上的分類效果,K-means無監(jiān)督聚類相比其他分類算法,F(xiàn)NR和FPR偏高。Naive Bayes適合屬性相互獨(dú)立的數(shù)據(jù)集,在本實(shí)驗(yàn)中的結(jié)果比SVM、RF稍差。RF適合較高維度和大數(shù)據(jù)量的數(shù)據(jù)集,SVM適合小樣本和高維數(shù)據(jù),在本文實(shí)驗(yàn)中的檢測結(jié)果相差不大,均能得到可以接受的分類結(jié)果。

(4) 數(shù)據(jù)集規(guī)模以及攻擊樣本所占比例對實(shí)驗(yàn)結(jié)果的影響。實(shí)驗(yàn)中TestSet1和TestSet2在數(shù)據(jù)集規(guī)模和攻擊樣本所占比例上都有很大差異。TestSet1是攻擊樣本比例高的規(guī)模較小的數(shù)據(jù)集;TestSet2是攻擊樣本比例低的規(guī)模較大的數(shù)據(jù)集,更符合真實(shí)環(huán)境中用戶訪問日志情況。可以看出,在TestSet2數(shù)據(jù)集下的預(yù)測結(jié)果更為穩(wěn)定,預(yù)測結(jié)果更加準(zhǔn)確。

(5) 語法特征數(shù)據(jù)集的標(biāo)注與否對SQL注入攻擊檢測漏報(bào)率FNR和誤報(bào)率FPR的影響。圖8、圖9分別為各模型在語法特征數(shù)據(jù)集重新標(biāo)注前后FNR、FPR的實(shí)驗(yàn)結(jié)果。可以看出,語法特征數(shù)據(jù)集樣本重新標(biāo)注后,各模型漏報(bào)率明顯降低,誤報(bào)率維持在可接受的較低范圍內(nèi)。由此可見,語法特征數(shù)據(jù)集的標(biāo)注標(biāo)準(zhǔn)對SQL注入攻擊檢測結(jié)果的影響較大。

圖8 SF重新標(biāo)注前后FNR對比

圖9 SF重新標(biāo)注前后FPR對比

通過上述結(jié)果分析可知,基于電力信息系統(tǒng)日志數(shù)據(jù)提取SQL注入攻擊語法特征和行為特征,用于注入攻擊檢測,能夠有效檢測出注入攻擊,且檢測結(jié)果具有較低的漏報(bào)率和誤報(bào)率。本文實(shí)驗(yàn)結(jié)果雖然依賴于日志定義、攻擊特征提取以及攻擊行為的認(rèn)定,但在SQL注入攻擊檢測方面具有非常好的通用性和易用性,經(jīng)過簡單的調(diào)整就可以對某類技術(shù)搭建的系統(tǒng)獲得很好的檢測效果。用于電力信息系統(tǒng)的SQL注入攻擊檢測中,可有效防止惡意用戶的SQL注入攻擊,保障電網(wǎng)信息系統(tǒng)的數(shù)據(jù)安全。

4 結(jié) 語

本文首先對Web應(yīng)用日志數(shù)據(jù)進(jìn)行分析,結(jié)合SQL注入攻擊特點(diǎn),從中提取注入攻擊語法特征與行為特征,得到語法特征矩陣SF和行為特征矩陣BF兩類實(shí)驗(yàn)數(shù)據(jù)集。然后使用K-means、Naive Bayes、SVM和RF算法進(jìn)行建模和預(yù)測。通過實(shí)際的電力信息系統(tǒng)訪問日志數(shù)據(jù)分析各算法模型在SF和BF數(shù)據(jù)集下對注入攻擊檢測的誤報(bào)率和漏報(bào)率。實(shí)驗(yàn)結(jié)果表明,面向電力信息系統(tǒng)日志數(shù)據(jù)的注入攻擊檢測方法可有效檢測對系統(tǒng)的SQL注入攻擊。與語法特征相比,行為特征在注入攻擊檢測中具有更好的檢測效果。SVM和RF算法的檢測效果較好,具有較低的漏報(bào)率和誤報(bào)率。未來工作將會(huì)在增加數(shù)據(jù)規(guī)模和安全攻擊數(shù)據(jù)類型的基礎(chǔ)上,基于多種數(shù)據(jù)挖掘模型進(jìn)行綜合研究分析,以進(jìn)一步提高面向電力信息系統(tǒng)安全相關(guān)數(shù)據(jù)特征的挖掘與分析能力。

猜你喜歡
特征用戶檢測
“不等式”檢測題
“一元一次不等式”檢測題
“一元一次不等式組”檢測題
如何表達(dá)“特征”
不忠誠的四個(gè)特征
抓住特征巧觀察
關(guān)注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關(guān)注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
小波變換在PCB缺陷檢測中的應(yīng)用
關(guān)注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
主站蜘蛛池模板: 青青草国产在线视频| 毛片在线播放a| 欧美一级色视频| 国产精品成| 丰满的少妇人妻无码区| 国产视频你懂得| 久久一级电影| 久久精品亚洲专区| 亚洲第一精品福利| 男人的天堂久久精品激情| 成人一级黄色毛片| 久久精品人妻中文视频| 在线观看免费国产| 欧美国产在线看| …亚洲 欧洲 另类 春色| 美女被躁出白浆视频播放| 国产97区一区二区三区无码| 91毛片网| 激情综合五月网| 亚洲欧美日韩动漫| 国产农村妇女精品一二区| 亚洲人成网18禁| 毛片免费视频| 久久情精品国产品免费| 好久久免费视频高清| 亚洲日韩精品伊甸| 亚洲AV无码一区二区三区牲色| 国产成人精品一区二区不卡| 日本免费a视频| 亚洲视频四区| 中文字幕 91| 一本大道在线一本久道| 免费人成黄页在线观看国产| 欧美成人免费午夜全| 亚洲一区网站| 欧美午夜理伦三级在线观看| 2019年国产精品自拍不卡| 一本一本大道香蕉久在线播放| 在线不卡免费视频| 亚洲欧美激情小说另类| 亚洲无限乱码一二三四区| 91在线丝袜| 亚洲无码一区在线观看| 欧美福利在线观看| 精品久久久久无码| 青青久视频| 色AV色 综合网站| 国产午夜不卡| 欧美激情视频一区二区三区免费| 亚洲人成在线精品| 欧美一区精品| 国产尤物jk自慰制服喷水| 成年av福利永久免费观看| 国产波多野结衣中文在线播放| 国产xxxxx免费视频| 国产自产视频一区二区三区| 制服无码网站| 亚洲午夜天堂| 欧美劲爆第一页| 自拍偷拍欧美日韩| 精品人妻AV区| 久久国产精品影院| 色视频久久| 激情成人综合网| 国产精品爆乳99久久| 青草免费在线观看| 久一在线视频| 免费一级毛片在线播放傲雪网| 国产在线98福利播放视频免费| 2021精品国产自在现线看| 91久久偷偷做嫩草影院电| 亚洲成人免费在线| 久996视频精品免费观看| 日韩无码视频播放| 中文字幕不卡免费高清视频| 在线观看91香蕉国产免费| 99久视频| 丰满人妻中出白浆| 欧美成人精品在线| 国产免费久久精品99re不卡| 中字无码av在线电影| 成人午夜视频免费看欧美|