基于深度學習的JavaScript惡意代碼檢測技術研究與實現(xiàn)
發(fā)布時間:2021-02-02 12:54
JavaScript(JS)是網(wǎng)絡開發(fā)中最為廣泛應用的腳本語言,也是最常被攻擊者利用的語言之一,這使惡意JS代碼檢測成為了安全領域的熱點問題。近年來,機器學習在多個領域取得了令人矚目的進展,研究者提出了一些基于機器學習的惡意JS代碼檢測方法。然而,這些方法通常將JS視作一種自然語言而非程序語言,并應用自然語言處理的模型和方法進行研究。雖然自然語言和程序語言存在相似之處,但這些方法忽略了程序語言獨有的語法信息和語義信息。本文提出了一個惡意JS代碼檢測模型JSAC。JSAC模型結合了深度學習技術和程序分析方法以分析JS程序中的語法和語義信息,并依據(jù)這兩類信息對程序進行惡意性檢測。具體來說,對于一個JS程序,JSAC模型生成出它的抽象語法樹(Abstract Syntax tree,AST)和控制流圖(Control Flow Graph,CFG);再將AST中的結點和CFG中的指令轉換為向量表示;接著JSAC模型將這兩類向量分別送入基于樹結構的卷積神經(jīng)網(wǎng)絡模型和基于圖結構的卷積神經(jīng)網(wǎng)絡模型,從中提取語法特征和語義特征;最后,提取出的兩類特征向量被合并到一起以用作分類檢測。本文在包含有695...
【文章來源】:北京郵電大學北京市 211工程院校 教育部直屬院校
【文章頁數(shù)】:88 頁
【學位級別】:碩士
【文章目錄】:
摘要
ABSTRACT
第一章 緒論
1.1 課題背景和意義
1.2 研究領域現(xiàn)狀
1.2.1 靜態(tài)分析方法
1.2.2 動態(tài)分析方法
1.3 本文研究內容
1.4 本文結構安排
第二章 相關技術和理論
2.1 網(wǎng)絡爬蟲
2.2 程序分析
2.3 抽象語法樹
2.4 控制流圖
2.5 詞嵌入與分布式向量表示
2.6 卷積神經(jīng)網(wǎng)絡
2.7 小結
第三章 JSAC模型設計
3.1 分布式向量表示
3.1.1 抽象語法樹結點類型的向量表示
3.1.2 控制流圖指令類型的向量表示
3.2 基于樹結構的卷積神經(jīng)網(wǎng)絡
3.2.1 表示學習層
3.2.2 編碼層
3.2.3 基于樹結構的卷積層
3.2.4 動態(tài)池化層
3.3 基于圖結構的卷積神經(jīng)網(wǎng)絡
3.4 特征合并與分類
3.5 小結
第四章 JSAC模型實現(xiàn)
4.1 數(shù)據(jù)預處理
4.1.1 生成抽象語法樹
4.1.2 生成控制流圖
4.2 分布式向量表示
4.2.1 樹結點的分布式向量表示
4.2.2 圖指令的分布式向量表示
4.3 神經(jīng)網(wǎng)絡模型
4.3.1 基于樹結構的卷積神經(jīng)網(wǎng)絡
4.3.2 基于圖結構的卷積神經(jīng)網(wǎng)絡
4.3.3 特征合并與分類
4.4 小結
第五章 實驗和評估
5.1 構建數(shù)據(jù)集
5.1.1 獲取正常樣本
5.1.2 獲取惡意樣本
5.2 參數(shù)調優(yōu)
5.2.1 調整分布式向量的維度
5.2.2 調整卷積核的數(shù)量
5.2.3 調整全連接層的數(shù)量
5.3 實驗結果和評估
5.3.1 對分布式向量的評估
5.3.2 模型評估指標
5.3.3 對JSAC檢測性能的評估
5.3.4 對語法特征和語義特征的評估
5.4 小結
第六章 總結與展望
6.1 設計與性能
6.2 存在的不足
6.3 未來工作
參考文獻
附錄 縮略語表
致謝
攻讀學位期間發(fā)表的學術論文目錄
本文編號:3014731
【文章來源】:北京郵電大學北京市 211工程院校 教育部直屬院校
【文章頁數(shù)】:88 頁
【學位級別】:碩士
【文章目錄】:
摘要
ABSTRACT
第一章 緒論
1.1 課題背景和意義
1.2 研究領域現(xiàn)狀
1.2.1 靜態(tài)分析方法
1.2.2 動態(tài)分析方法
1.3 本文研究內容
1.4 本文結構安排
第二章 相關技術和理論
2.1 網(wǎng)絡爬蟲
2.2 程序分析
2.3 抽象語法樹
2.4 控制流圖
2.5 詞嵌入與分布式向量表示
2.6 卷積神經(jīng)網(wǎng)絡
2.7 小結
第三章 JSAC模型設計
3.1 分布式向量表示
3.1.1 抽象語法樹結點類型的向量表示
3.1.2 控制流圖指令類型的向量表示
3.2 基于樹結構的卷積神經(jīng)網(wǎng)絡
3.2.1 表示學習層
3.2.2 編碼層
3.2.3 基于樹結構的卷積層
3.2.4 動態(tài)池化層
3.3 基于圖結構的卷積神經(jīng)網(wǎng)絡
3.4 特征合并與分類
3.5 小結
第四章 JSAC模型實現(xiàn)
4.1 數(shù)據(jù)預處理
4.1.1 生成抽象語法樹
4.1.2 生成控制流圖
4.2 分布式向量表示
4.2.1 樹結點的分布式向量表示
4.2.2 圖指令的分布式向量表示
4.3 神經(jīng)網(wǎng)絡模型
4.3.1 基于樹結構的卷積神經(jīng)網(wǎng)絡
4.3.2 基于圖結構的卷積神經(jīng)網(wǎng)絡
4.3.3 特征合并與分類
4.4 小結
第五章 實驗和評估
5.1 構建數(shù)據(jù)集
5.1.1 獲取正常樣本
5.1.2 獲取惡意樣本
5.2 參數(shù)調優(yōu)
5.2.1 調整分布式向量的維度
5.2.2 調整卷積核的數(shù)量
5.2.3 調整全連接層的數(shù)量
5.3 實驗結果和評估
5.3.1 對分布式向量的評估
5.3.2 模型評估指標
5.3.3 對JSAC檢測性能的評估
5.3.4 對語法特征和語義特征的評估
5.4 小結
第六章 總結與展望
6.1 設計與性能
6.2 存在的不足
6.3 未來工作
參考文獻
附錄 縮略語表
致謝
攻讀學位期間發(fā)表的學術論文目錄
本文編號:3014731
本文鏈接:http://sikaile.net/kejilunwen/zidonghuakongzhilunwen/3014731.html
最近更新
教材專著