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

針對JavaScript攻擊的惡意PDF文檔檢測技術研究

2016-09-23 06:00:32胡江周安民
現代計算機 2016年1期
關鍵詞:檢測模型

胡江,周安民

(四川大學電子信息學院,成都 610065)

針對JavaScript攻擊的惡意PDF文檔檢測技術研究

胡江,周安民

(四川大學電子信息學院,成都 610065)

惡意PDF文檔;JavaScript代碼;靜態檢測;特征提取

0 引言

PDF(Portable Document Format)是便攜式文檔格式的簡稱,是由Adobe公司所開發的一種獨特的跨平臺的文件格式,在Windows、Unix或者Mac OS中,PDF文件都是通用的。然而,正是由于PDF文檔的可移植性、兼容性、封裝性和免費性,它成為了互聯網上攻擊者傳播惡意代碼的主要載體[1]。最常用的方式就是利用電子郵件,通過社會工程學,讓用戶主動打開惡意PDF附件,從而感染受害者電腦。PDF文檔常被攻擊者利用的另一個重要原因是它擁有自己的JavaScript引擎,并允許在PDF文檔中嵌入JavaScript代碼,此功能意味著PDF能夠執行復雜的任務如形式驗證和計算。然而,它也使攻擊者擁有了運行任意代碼的途徑,攻擊者可以利用惡意的JavaScript代碼發起攻擊。塞門鐵克的一份安全報告表明,通過PDF文檔來執行惡意功能時,90%都使用了JavaScript代碼,因此在檢測惡意PDF文檔中,能否準確識別JavaScript代碼尤為重要,大部分嵌入的JavaScript代碼在一定程度上進行了混淆編碼,這樣,不但增加了人工分析的復雜度,而且連防病毒軟件也難以檢測出來。現階段的檢測技術主要有以下幾種方法:

(1)對PDF文檔的物理結構[2]進行解析,并根據數據流對象進行解壓縮操作,通過解壓后的數據,進行全局匹配,例如匹配/JS、/OpenAction等關鍵字段,然后通過確定規則判斷是否為惡意文檔。

(2)JScan模型[3],這是一種動態檢測模型,該模型是將異常JavaScript代碼檢測和仿真結合起來,異常檢測通常是基于對特定函數的監控,例如eval,從而達到對惡意代碼的自動識別的目的。

由于上述方法(1)中,很多惡意樣本是混淆或者加密過的,所以單單進行解壓縮后可能還是一些密文,造成檢測效率很低。而且很多正常PDF文檔也會有JavaScript代碼,所有這樣檢測很容易造成較高的誤報率。方法(2)由于使用了大量的仿真技術,所以該檢測系統會造成大量的資源消耗,所以通用性不強。本文通過對PDF文檔格式進行深入解析,對PDF文檔中流對象的壓縮算法與加密算法進行自動判斷,以及對解密后JavaScript代碼進行完整的預處理,形成有效的特征向量集,并在此基礎上建立規則特征庫,最后綜合判斷是否為惡意PDF文檔。

1 PDF文檔檢測模型

1.1PDF文檔格式解析

PDF文檔是一種文本和二進制混排的格式,它的文件結構主要是由文件頭(header)、文件體(body)、交叉引用表(cross-reference)和文件尾(tailer)組成。

(1)文件頭

文件頭是用來標識PDF文檔的版本,它出現在PDF文件的第一行。如%PDF-1.6表示該文件格式符合PDF 1.6規范。

(2)文件體

文件體主要包含了PDF文檔的主題內容,各部分之間是由對象方式(obj)呈現,這些對象構成了PDF文檔的具體內容如字體、頁面、圖像等。基本格式如下所示:

70 obj

〈〈/Kids[5 0 R]/Type/Pages/Count 1〉〉

endobj

其中7 0 obj中的7是對象序號,是用來唯一標記一個對象;0是生成號,是和對象序號一起標記其是原始對象還是修改后的對象。其中obj和endobj是對象的定義范圍。而對象obj的類型有很多種,例如根對象(Catalog)、頁集合(Page)、圖片對象(Xobject)、字體對象(Font)、流對象(stream)。

其中流對象里面保存了所有的二進制內容,JavaScript很多也是加密混淆后放入流對象中,因此它是本文重點關注對象,圖1說明了數據流在obj中的表現形式。

圖1 stream在obj中的形式

其中Dictionary又包含了常用字段Length,該字段表示關鍵字組合stream和endstream之間字符串的長度,Filter字段表明stream中使用的編碼算法,常用的算法有 Flate、JPEG、ASCIIHex、LZW、CCITTGroups,DecodeParms[4]表示一個參數字典,供Filter使用。例如:

10 obj

〈〈/Filter/FlateDecode/Length 336〉〉

stream

data

endstream

endobj

其中336表示流數據(data)的大小,FlateDecode表示數據流的解碼算法,即著名的zip壓縮算法。

(3)交叉引用表

交叉引用表是為了能對對象進行隨機存取而設立的對象地址的索引表 ,主要目的是為了快速定位PDF文檔中的各對象。

(4)文件尾部

文件尾部包含了交叉引用的摘要和交叉引用表的起始位置。例如startxref 1946%%EOF,其中1946就是交叉引用表的偏移地址,EOF為結束標志。

1.2基于JavaScript的攻擊方式

嵌入PDF中的惡意JavaScript代碼主要是通過PDF閱讀器(例如Adobe Reader)的漏洞來將正常的執行控制流指向植入的惡意JavaScript代碼中去的。這個控制過程一般可以通過Heap Spraying技術實現。使用JavaScript代碼進行的另一惡意活動是從互聯網下載可執行文件到受害者機器上來初始化一個攻擊。此外,JavaScript代碼也能打開一個惡意網站來對受害者機器進行一系列的惡意操作。然而攻擊者在利用JavaScript進行攻擊時,一般使用了代碼混淆技術,以防止被基于特征關鍵字的檢測器識別出來。因此,在檢測時,需要進行代碼還原。

1.3基于JavaScript的攻擊特征向量集提取

在分析大量基于JavaScript攻擊的PDF樣本文件后,發現了一些共同的特征。

第一條,PDF對象中經常出現/JavaScript,/JS,/S等關鍵詞或“JavaScript”字符串時,就表明該文件包含了JavaScript代碼,此時,再結合/AA,/Type/Action,/Open-Action,/URL,/GOTO,/launch,/Acroform等關鍵詞的行為就可以判定PDF文檔的性質,當然一些正常的文件也可能會有JavaScript,因此建立規則應該排除一些正常的特征,減少誤差。

第二條,這種攻擊一般是利用了PDF閱讀器的漏洞,并使用堆噴射技術,堆噴射技術一般會包含一些典型特征,例如0c0c,0a0a,%u,spray,crypt等字符串、一些通用函數 (fromCharCode,eval,unescape和replace)來混淆代碼,以及一些常用的存在漏洞的典型函數(getIcon(),Collab()等)。

第三條,從惡意代碼嵌有Shellcode過程中來分析特征,例如惡意代碼中的單詞“for”,“while”出現的次數一般是確定的;文件流中JavaScript代碼一般通常擁有超過四十個單詞的代碼,這個長度值通常要在uneacape()函數中返回;并且使用堆分配的方式創建相同大小的內存塊許多次,數據一般用NOP填充字段,shellcode功能主體組成。

通過上述對基于JavaScript攻擊的PDF樣本文件分析,提取出一個確定特征向量集的模型,該模型特征提取主要是通過對惡意PDF進行大量分析,其中包括解壓縮與解密各個PDF文件流對象,定位并提取JavaScript代碼,形成大量特征向量,最后借鑒惡意軟件匹配利器YARA[5]創建規則,例如,檢測字符串、正則表達式、常用shellcode中的API函數以及一些混淆函數等。

具體特征向量集模型如圖2所示:

圖2 特征向量集確定模型

1.4基于JavaScript攻擊的PDF文檔檢測系統

基于上述研究結果,提出了基于 JavaScript攻擊技術的PDF文件檢測模型,其流程示意如圖3所示。

該檢測系統在對未知PDF文件檢測時,首先對PDF二進制流映射到內存,對文檔格式深入進行解析,主要是對各個流對象進行掃描,標識一些惡意PDF常用字符串,以及統計各個流對象的大小以及壓縮算法,常用的有Flate、ASCLLHex,并對各個流對象數據進行自動解壓縮與加密,在結合一些關鍵字段,如/Javascrip,/JS,/S,定位到 JavaScript,定位 JavaScript后自動判斷是否有有編碼,若有進行解碼操作,其后判斷是否有混淆,若有混淆,則進行去混淆操作,最后提取JavaScript代碼中的特征向量集,與已有的特征識別器進行對比,判斷出結果。

圖3 PDF文件檢測模型

2 系統有效性分析

為了驗證系統的有效性,對多個PDF文件進行了測試驗證,在測試中,共選取了100個PDF文件,其中惡意樣本40個,來自metasploit、Virustotal[6]、secuelist[7],都是基于JavaScript攻擊的樣本,正常樣本60個。并分為10組測試,每組10個。測試環境為Windows 7 64位。圖4是第一組的樣本文件。

通過PDF檢測系統后,結果如表1所示。

表1 第一組樣本分析結果

圖4 其中一組的樣本文件

表1中文件屬性是指文檔本身是否為惡意文檔,M(Malicious)為惡意樣本,N(Normal)為正常樣本。因此如表1所示,第一組樣本中有惡意樣本3個,用檢測系統測試后發現,第一組的惡意樣本都能檢測出來。

用同樣的的方法測試了其他9組數據,現將數據結果(漏報個數,誤報個數)用表2示意。

其根據表1、2所示,100個測試樣本中,2個樣本屬于漏報,4個樣本屬于誤報。因此其誤報率與漏報率都在接受范圍內,特別是對于惡意樣本,檢測效率很高。

表2 其他9組測試數據結果

3 結語

實驗表明該系統的檢測結果與實際PDF文檔屬性相符合,并且檢測時間很迅速,說明基于JavaScript攻擊的樣本檢測系統的可行性,未來會在特征提取以及特征規則上進一步優化,以提高PDF檢測效率。

[1]Lu Xun,Zhuge Jianwei,Wang Ruoyu,Cao Yinzhi,Yan Chen.De-Obfuscation and Detection of Malicious PDF Files with High Accuracy [J].System Science(HICSS),2013(1):1530-1605.

[2]Tzermias Z,Sykiotakis G,Polychronakis M,et al.Combining Static and Dynamic Analysis for the Detection of Malicious Documents Proceedings of the Fourth European Workshop on System Security.ACM,2011:4.

[3]Laskov P,rndi N.Static Detection of Malicious JavaScript-bearing PDF Documents Proceedings of the 27th Annual Computer Security Applications Conference.ACM,2011:373-382.

[4]丁曉煌.惡意PDF文檔的靜態檢測模型技術研究.西安:西安電子科技大學,2014.

[5]武學峰.惡意PDF文檔的分析.山東:山東大學,2012.

[6]Securelist,http://www.securelist.com/en/

[7]Virustotal,https://www.virustotal.com

Malicious PDF Documets;JavaScript Code;Static Detection;Feature Extraction

Research on Malicious PDF Documents Detection Technology Based on JavaScript Attack

HU Jiang1,ZHOU An-min2
(Department of Electronic Information,Sichuan University,Chendu 610065)

胡江(1991-),男,四川達州人,碩士研究生,研究方向為信息系統安全理論與技術

周安民(1963-),男,四川成都人,碩士生導師,研究方向為信息安全關鍵技術和核心產品工程2015-11-20

2015-12-20

當今社會,便攜式文檔(PDF)已經成為惡意代碼傳播的主要載體,而90%的惡意PDF樣本都是基于JavaScript攻擊的。因此針對JavaScript攻擊的惡意樣本檢測是非常有必要的。介紹PDF的結構,以及常見的嵌入JavaScript的惡意PDF文檔攻擊手段,在此基礎上,提出一種基于JavaScript攻擊的惡意PDF文檔檢測方法,并實現基于該方法的檢測系統,主要包括PDF文檔格式深入解析模塊、JavaScript代碼定位與提取模塊、惡意特征提取模塊。實驗表明該系統能有效檢測PDF惡意文檔。

In today's society,portable document(PDF)has become the main carrier of the spread of malicious code,while 90%of the malicious PDF sample are based on JavaScript attacks.So it is necessary to detect the malicious sample based on JavaScript attack.Introduces the structure of PDF files and attack method based on JavaScript code.Based on this research,proposes a malicious PDF document detection method based on JavaScript attack and realizes the detection system,which mainly includes the parsing module of PDF file format, JavaScript code location and extraction module,malicious feature extraction module.Experiments show that this system can effectively detect malicious PDF document.

猜你喜歡
檢測模型
一半模型
“不等式”檢測題
“一元一次不等式”檢測題
“一元一次不等式組”檢測題
“幾何圖形”檢測題
“角”檢測題
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
3D打印中的模型分割與打包
小波變換在PCB缺陷檢測中的應用
主站蜘蛛池模板: 四虎成人精品| 精品夜恋影院亚洲欧洲| 国产免费一级精品视频 | 亚洲综合狠狠| 综合人妻久久一区二区精品 | 午夜视频免费试看| 无码人中文字幕| 欧美一级片在线| 国产精品成人免费视频99| 久久99国产综合精品1| 亚洲综合色吧| 国精品91人妻无码一区二区三区| 久久天天躁狠狠躁夜夜躁| 高清无码不卡视频| 特级做a爰片毛片免费69| 亚洲区视频在线观看| 黄片一区二区三区| 69精品在线观看| 永久毛片在线播| 一区二区三区四区日韩| 日韩国产无码一区| 青青草原国产免费av观看| 国产精品久久久久鬼色| 亚洲男人天堂网址| 欧美在线一级片| 国产精品亚洲片在线va| 伊伊人成亚洲综合人网7777| 国产日韩欧美精品区性色| 日韩精品成人在线| 极品国产一区二区三区| 伊人色在线视频| 激情爆乳一区二区| 成人第一页| 日本三级黄在线观看| 在线日本国产成人免费的| 色爽网免费视频| 欧美日韩动态图| 国产91导航| 香蕉久久国产超碰青草| 99re精彩视频| 日韩无码视频播放| 精品一区二区三区四区五区| 91久久夜色精品国产网站| 四虎国产在线观看| 91无码人妻精品一区| 久久综合色播五月男人的天堂| 国产美女一级毛片| 在线观看国产精美视频| 国产杨幂丝袜av在线播放| 国产亚洲视频中文字幕视频| 国产日本欧美亚洲精品视| 国产产在线精品亚洲aavv| 巨熟乳波霸若妻中文观看免费| 中文字幕日韩视频欧美一区| 亚洲国产综合精品一区| 91小视频版在线观看www| 欧美日韩精品一区二区在线线| 日韩二区三区| AV在线麻免费观看网站| 欧美成一级| 国产色偷丝袜婷婷无码麻豆制服| 亚洲人成网站观看在线观看| 色婷婷电影网| 国产精品欧美日本韩免费一区二区三区不卡 | 国产办公室秘书无码精品| 熟女成人国产精品视频| 日韩精品一区二区三区免费| 亚洲最猛黑人xxxx黑人猛交| 看你懂的巨臀中文字幕一区二区| 精品视频第一页| 99久久精彩视频| 2021精品国产自在现线看| 91久久偷偷做嫩草影院电| 女人爽到高潮免费视频大全| 99视频在线观看免费| 国产成人成人一区二区| 欧美国产中文| 亚洲精品欧美重口| 黄色污网站在线观看| 黄色一及毛片| 亚洲欧洲AV一区二区三区| 手机在线看片不卡中文字幕|