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

基于N-Gram和TFIDF的SQL注入檢測方法?

2021-06-29 08:42:02蘇林萍劉小倩崔文超
計算機與數(shù)字工程 2021年6期
關鍵詞:文本實驗檢測

蘇林萍 劉小倩 陳 飛 李 為 崔文超

(華北電力大學控制與計算機工程學院 北京 102206)

1 引言

隨著互聯(lián)網(wǎng)服務的廣泛使用,Web應用也日漸復雜,而且Web的安全問題也因其易用性和開放性日益顯著[1~2]。根據(jù)開發(fā)式Web應用程序安全項目(OWASP)的發(fā)布數(shù)據(jù)顯示,SQL注入漏洞是網(wǎng)絡信息安全的主要漏洞[3]。在過去的一些年里,許多專家學者對SQL注入問題做了大量研究,提出了許多防御方法和檢測技術。但是隨著攻擊者攻擊手段的不斷變化,現(xiàn)有的SQL注入防御與檢測方法依然存在一些不足。因此,如何防御與檢測SQL注入一直是安全領域的熱點研究問題。

國內外學者已經(jīng)針對SQL注入攻擊做了大量研究。文獻[4~5]使用事先定義好的特征向量對SQL語句進行文本向量化及類別檢測,準確率有所提高,但是忽略了詞與詞之間的聯(lián)系;文獻[6]從惡意代碼中提取有效的N-gram特征的方法,并利用支持向量機(SVM)作為機器學習分類器,將可執(zhí)行代碼分類為惡意代碼或良性代碼。但是該方法存在一些不足之處,使用SVM進行分類時不能夠為不同的特征子序列賦予不同的權重;A.Joshi和V.Geetha結合樸素貝葉斯機器學習算法和基于角色的訪問控制機制對SQL語句進行檢測,但此方法的測試用例具有局限性[7];文獻[8]提出一種基于Simhash算法的SQL注入檢測方法,首先通過自學習過程生成初始的Simhash指紋庫構建具有索引結構的指紋庫,再結合強白名單策略來判斷每條SQL語句的合法性,具有抵御未知SQL注入攻擊的能力。

針對目前存在的一些缺陷,本文結合N-gram和TFIDF進行文本向量化,利用N-gram提取關鍵字,然后在所提取的關鍵字的基礎上計算TFIDF矩陣,使用SVM算法進行模型訓練。然后與現(xiàn)有研究結果進行對比,以驗證此方法所存在的優(yōu)勢之處。

2 SQL語句向量化

2.1 SQL注入攻擊

結構化查詢語言(structured query language SQL)是一種用于存取數(shù)據(jù)以及管理、查詢和更新關系數(shù)據(jù)庫系統(tǒng)的語言[9]。SQL注入是一種代碼注入攻擊,其原理為通過將特殊字符或是SQL語句插入到在數(shù)據(jù)庫中正常運行的語句中,構造精巧的畸形輸入,生成惡意SQL語句進入數(shù)據(jù)庫執(zhí)行,使得攻擊者獲取到網(wǎng)站中存在安全漏洞的數(shù)據(jù)庫的查訪權限,從而對數(shù)據(jù)庫進行破壞、侵入、竊取等等[10~11]。SQL注入攻擊可以細分為九種類型[12~13]:重言式、基于Union查詢、基于報錯、布爾盲注、時間盲注、帶外攻擊、piggy-backed、基于存儲過程、編碼攻擊。

2.2 N-Gram特征提取

N-Gram是一種基于統(tǒng)計語言模型的算法,又被稱為一階馬爾科夫鏈。每一個字節(jié)片段稱為gram,將文本里面的內容按照字節(jié)大小為N的滑動窗口操作,就形成了長度為N的字節(jié)片段序列。針對于SQL文本,取滑動窗口的長度為N個詞,從SQL語句的第一個詞開始從左向右每次滑動一個詞進行取詞。如SQL語句“select name from users where uerId=1”針對N的不同取值,其提取的特征如表1所示。

表1 特征提取示例

2.3 SQL語句文本向量化

TF-IDF是一種統(tǒng)計方法,它的建立過程是這樣的:對文檔分類有用的詞語,應該是文檔集合中那些在某一文件中出現(xiàn)頻率高,而在其他文件中出現(xiàn)頻率少的詞語,所以想要呈現(xiàn)同類文本的特點所在,特征空間坐標系就可以去TF作為測度。但是要體現(xiàn)不同類別文本的特點,光靠TF是不可能實現(xiàn)的,所以引入了IDF逆文本頻率的概念,IDF認為一個單詞對區(qū)別不同類別文本的意義越大,則它出現(xiàn)的文本頻數(shù)就越小。因此,TF-IDF在特征空間坐標系中就是以TF和IDF的乘積作為其取值測度,并且以此來完成對權值TF的調整,目的在于抑制次要單詞,突出重要單詞[14]。

1)TF是詞頻(term frequency),可以用式(1)計算:

式中ni,j是ti在文件dj中出現(xiàn)的次數(shù),∑knk,j是文件dj中所有詞出現(xiàn)的次數(shù)之和。

2)IDF是逆文本頻率(Inverse Document Fre?quency),其表示此項在文檔集合中的重要性,此項所在的文檔數(shù)越多,則區(qū)別能力就越差,重要性就越低。IDF是文件總數(shù)與出現(xiàn)此詞的文件數(shù)商的對數(shù)值,如式(2)所示:

|D|:文本集合中的文件的總數(shù),在本文中即SQL語句的總數(shù);包含詞語ti的文件數(shù)目。

3)TF-IDF的計算公式如式(3)所示:

TFIDF算法雖然能夠很好地應用于特征權重計算,但其仍然存在一些不足之處。傳統(tǒng)TFIDF算法的缺點如下:沒有考慮特征詞在不同條件下的信息分布、IDF沒有考慮類內信息分布問題、沒有考慮單詞不完全分類的情況[15~16]。因此避免采用固定關鍵詞本文在N-Gram特征提取的基礎上應用TFIDF算法進行SQL語句文本向量化。

3 實驗結果分析

3.1 數(shù)據(jù)集和實驗流程

本實驗數(shù)據(jù)集采集于GitHub倉庫和電力運維審計系統(tǒng)人員的日常操作,由非法SQL語句和正常SQL語句數(shù)據(jù)集組成,共計1490條,其中基本涵蓋了常見的SQL注入類型和其變形語句,數(shù)據(jù)使用情況如表2所示。

表2 實驗樣本

實驗流程如圖1所示。

圖1 實驗流程

在處理階段應用N-Gram技術進行初步特征提取,實驗分別取N值為1、2、3,將N-Gram特征提取之后的子序列做去重匯總處理,得到具有一定數(shù)量的詞匯表,對應不同窗口所得到的詞語匯總如表3所示。

表3 詞語匯總

基于上述得到的詞匯表計算詞頻和TF-IDF,對計算出的TFIDF進行排序,選取每篇文檔前30個關鍵詞,選取完成之后將每篇文檔的關鍵詞合并成一個集合,將集合去重之后的詞匯表作為最終特征,再基于TFIDF算法對文本集合進行向量化。然后使用SVM分類器進行模型訓練,并對測試數(shù)據(jù)進行驗證模型預測,最后對實驗結果進行評估分析。

3.2 評價指標

為了評估提出的入侵檢測模型的效果,本文使用精確率、召回率來評價檢測效果。其中精確率和召回率可根據(jù)混淆矩陣計算得出。

1)混淆矩陣(Confusion Matrix):又稱為可能性表格。它是一種特定的能夠將算法可視化的矩陣,通常用來監(jiān)督學習。在表格中它用列來表示預測值,用行來表示真實值。混淆矩陣有四個基礎指標:

(1)TP(True Positive):真陽性將正類預測為正整數(shù),真實為0,預測也為0;

(2)FN(False Negative):假陰性將正類預測為負類數(shù),真實為0,預測為1;

(3)FP(False Positive):假陽性將負類預測為正類數(shù),真實為1,預測為0;

(4)TN(True Negative):真陰性將負類預測為負類數(shù),真實為1,預測為1。

將以上四個指標呈現(xiàn)在表格中,就得到了如表4所示混淆矩陣。

表4 混淆矩陣

2)準確率(Precision):對預測結果而言被預測為正類的樣本中真正的正樣本所占的比例,其側重于將負樣本錯分為正樣本的情況,如式(4)所示:

3)召回率(Recall):對原來的樣本而言樣本中被預測正確的比例,其側重于將正樣本分為負樣本的情況,如式(5)所示:

3.3 結果分析

在文本預處理階段,使用N-Gram與TFIDF進行關鍵詞的選取及文本向量化。向量化結果表明使用此方法相對于文獻[4]中使用固定關鍵詞進行文本向量化具有更高的準確率,具體效果如圖2所示。

圖2 效果圖

本實驗分別選取第一輪TFIDF之后每篇文檔的前30個關鍵詞進行最終關鍵詞的確定。并針對不同N-Gram窗口進行SVM模型訓練,結果如表5所示。

表5 實驗結果

由表可知,3-gram的檢測效果比1-gram和2-gram檢測效果好,因此,本文中的特征向量由3-gram選取出的關鍵詞為特征詞。

表6是本實驗與文獻[4]的實驗結果,與TFIDF相比,N-Gram+TFIDF在較大程度上提高了準確率的同時提高了召回率。

表6 TFIDF和N-Gram+TFIDF實驗效果對比

由表6可知N-Gram方法的準確率較TFIDF方法有所提升,與此同時其召回率比TFIDF方法更高。

4 結語

為了增強文本向量化過程中詞與詞之間的聯(lián)系,本文使用N-Gram和TFIDF算法結合動態(tài)選取關鍵詞,并且使用TFIDF進行文本向量化賦予SQL語句的權重。實驗結果表明,在所述準備工作的基礎上訓練的SVM不僅確保了結果的召回率,并且與現(xiàn)有研究工作相比,還在一定程度上提高了樣本類別的準確率。

猜你喜歡
文本實驗檢測
記一次有趣的實驗
“不等式”檢測題
“一元一次不等式”檢測題
“一元一次不等式組”檢測題
在808DA上文本顯示的改善
做個怪怪長實驗
基于doc2vec和TF-IDF的相似文本識別
電子制作(2018年18期)2018-11-14 01:48:06
NO與NO2相互轉化實驗的改進
實踐十號上的19項實驗
太空探索(2016年5期)2016-07-12 15:17:55
小波變換在PCB缺陷檢測中的應用
主站蜘蛛池模板: 又粗又硬又大又爽免费视频播放| 亚洲精品另类| 免费观看国产小粉嫩喷水| 98精品全国免费观看视频| 日韩欧美国产精品| 亚洲欧美在线综合一区二区三区| 看av免费毛片手机播放| 日本亚洲国产一区二区三区| 国产精品亚洲一区二区三区z| 成人免费午夜视频| 国产白丝av| 亚洲无码熟妇人妻AV在线| 国产成人无码Av在线播放无广告| 无码国内精品人妻少妇蜜桃视频 | 久久黄色免费电影| 怡红院美国分院一区二区| 久久国产精品波多野结衣| 99re在线视频观看| 996免费视频国产在线播放| 亚洲自偷自拍另类小说| 国产超碰一区二区三区| 国产区福利小视频在线观看尤物| 国产又爽又黄无遮挡免费观看 | 丁香综合在线| 国产美女久久久久不卡| 欧美色伊人| 国产日韩丝袜一二三区| 自慰高潮喷白浆在线观看| 综合亚洲网| 亚洲国产精品一区二区高清无码久久| a天堂视频| 国产手机在线观看| 亚洲精品无码AV电影在线播放| 无遮挡一级毛片呦女视频| 色成人亚洲| 欧美a在线看| 久久精品视频亚洲| 久久久久人妻一区精品色奶水| 性欧美在线| 日韩免费成人| 欧美在线伊人| 日本高清成本人视频一区| 亚洲成人高清无码| 国内嫩模私拍精品视频| YW尤物AV无码国产在线观看| 全午夜免费一级毛片| 国产在线精品美女观看| 啦啦啦网站在线观看a毛片| www.91在线播放| 亚洲天堂视频在线观看| 国产欧美日韩在线一区| 久久成人免费| 伊人网址在线| 亚洲成a人片| 色噜噜综合网| 免费看美女毛片| 久久国产免费观看| 永久免费无码成人网站| 免费一极毛片| 综合成人国产| 国产福利观看| 粉嫩国产白浆在线观看| 久久久久无码国产精品不卡| 亚洲国产无码有码| 欧美黄色a| 亚洲无码37.| 67194在线午夜亚洲| 免费a级毛片18以上观看精品| 女人18一级毛片免费观看| 日本高清在线看免费观看| 国产视频 第一页| 国产精品国产三级国产专业不| 日韩精品一区二区深田咏美| 亚洲欧美自拍中文| 久久精品最新免费国产成人| AV网站中文| 亚洲欧美一区二区三区图片| 五月婷婷精品| 国产午夜福利亚洲第一| 91视频日本| 亚洲无码免费黄色网址| 免费一看一级毛片|