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缺陷檢測中的應用
主站蜘蛛池模板: 国产精品yjizz视频网一二区| 99er这里只有精品| 伊人成人在线视频| 日韩毛片免费视频| 亚洲一级毛片免费看| 欧美一级高清视频在线播放| 熟妇丰满人妻av无码区| 99成人在线观看| 青青草原偷拍视频| 欧美性久久久久| 国产一二视频| 日日噜噜夜夜狠狠视频| 亚洲人人视频| 在线看片中文字幕| 欧美一区二区三区香蕉视| 国产网友愉拍精品视频| 黄色不卡视频| 国产成熟女人性满足视频| 全裸无码专区| 国产1区2区在线观看| 亚洲视频色图| 国产99在线| 一区二区偷拍美女撒尿视频| 亚洲综合精品香蕉久久网| 欧美一级99在线观看国产| 无码中文字幕精品推荐| 国产在线观看99| 亚洲天堂网站在线| 国产精品视频猛进猛出| 国模极品一区二区三区| 久久久久无码国产精品不卡| 日本精品中文字幕在线不卡| 啪啪永久免费av| 亚洲天堂久久新| 国产色网站| 欧美人人干| 亚洲成av人无码综合在线观看| 天堂亚洲网| 欧美国产精品不卡在线观看 | 69精品在线观看| 国产欧美中文字幕| 无码啪啪精品天堂浪潮av| 伊人天堂网| 秘书高跟黑色丝袜国产91在线| 成人一区专区在线观看| 亚洲中文字幕av无码区| 免费在线不卡视频| 狠狠躁天天躁夜夜躁婷婷| 国产99精品久久| 国产成人久久综合777777麻豆| 精品一区二区三区波多野结衣| 日韩欧美高清视频| 久青草网站| 99re热精品视频中文字幕不卡| 成年A级毛片| 国产精品成人一区二区不卡 | 亚洲成人精品在线| 国产成人久久综合一区| 在线精品亚洲一区二区古装| 亚洲天堂视频网站| 99在线国产| 精品国产免费观看一区| 午夜毛片福利| 91久久青青草原精品国产| 人妻无码中文字幕一区二区三区| 欧美日在线观看| 国产欧美在线| 精品国产自在在线在线观看| 国产精品福利尤物youwu| 国产高清毛片| 日韩性网站| 成人字幕网视频在线观看| 最新午夜男女福利片视频| 国产成人精品亚洲日本对白优播| 亚洲视频色图| 久久99国产综合精品女同| 日韩第九页| 青草视频久久| 一级毛片在线播放| 久久久久青草大香线综合精品| 亚洲精品午夜天堂网页| 高清大学生毛片一级|