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

二進制代碼分析實驗平臺搭建

2015-04-17 12:17:08高敏芬
實驗室研究與探索 2015年5期
關鍵詞:實驗分析

高敏芬, 劉 露

(南開大學 a. 數學科學學院; b. 計算機與控制工程學院, 天津 300071)

?

二進制代碼分析實驗平臺搭建

高敏芬a, 劉 露b

(南開大學 a. 數學科學學院; b. 計算機與控制工程學院, 天津 300071)

二進制代碼分析實驗平臺是南開大學信息安全專業“惡意代碼分析”課程基本的實驗環境。本文就如何在實驗室中搭建基于BitBlaze的二進制代碼分析實驗平臺進行了詳細的闡述,包括實驗平臺的架構、實驗平臺安裝環境部署、實驗平臺的安裝、實驗平臺的使用流程等內容,以期對與二進制代碼分析相關的實驗環境的搭建和使用起到很好的參考作用。

實驗平臺搭建; 二進制代碼分析; BitBlaze; 信息安全; 惡意代碼

0 引 言

在惡意代碼攻擊中,攻擊者通常不是對源代碼直接進行攻擊,二進制代碼才是受攻擊系統真正被動執行的代碼形式,因此,分析二進制代碼才能得到惡意代碼真實的行為信息。 “惡意代碼分析”課程面對的樣本就是二進制代碼。但由于二進制代碼通常比較復雜,而且缺乏高級語言的語義和結構信息,因此其分析是一件極具挑戰性的工作。

目前,常見的二進制代碼分析工具主要有IDA PRO、OLLYDBG[1]和Pin[2]。IDA PRO是一個靜態反匯編工具,OLLYDBG是一個動態追蹤工具,而Pin是一種分析程序動態特征的工具。BitBlaze[3-4]是由美國加州大學伯克利分校發起的一個開源項目,它提供了一種全新的通過二進制代碼分析解決計算機安全問題的方法。BitBlaze支持精確的分析,提供了一種可擴展的架構,而且結合了靜態和動態分析技術以及程序驗證技術用以滿足各種安全應用的普遍需求。BitBlaze可以把二進制代碼中與安全相關的部分直接提取出來,從而提供了一種本質性的、基于根源的計算機安全問題的解決方案。

較強的實踐動手能力,是信息安全專業本科學生具備的基本素質之一,而實驗教學是提高學生實踐動手能力的重要環節。本文所介紹的二進制代碼分析實驗平臺是南開大學信息安全專業學生“惡意代碼分析”課程的實驗環境[5-6],是在我們前期的研究和實踐工作的基礎上形成的具體方案[7-9]。通過該實驗平臺的搭建和使用,學生可以深入認識二進制代碼的構造原理和基本特征,能夠學會使用先進的分析工具對二進制代碼進行動態的和靜態的分析,提高對程序的分析能力,鞏固課堂上所學的知識。同時,也期望學生通過在實驗平臺上的實踐活動,能夠產生認知二進制代碼分析的興趣和激情,從而進一步探索惡意代碼的分析方法和技術。

1 實驗平臺的架構與配置

這里所介紹的二進制代碼分析實驗平臺是由BitBlaze項目擴展而成的,圖1給出了本實驗平臺的基本架構。實驗平臺如虛線內部部分所示,主要由QEMU虛擬操作系統、TEMU[10]動態分析組件和VINE[11]靜態分析組件構成。二進制代碼是實驗平臺的分析對象,實驗前會將二進制代碼輸入QEMU虛擬環境中去;二進制代碼在實驗平臺運行期間可能會與外網或者用戶終端發生交互。二進制文件的整個執行過程將由動態組件TEMU監控下來,同時提取執行過程中的系統信息,獲得二進制代碼的執行軌跡。實驗平臺生成的分析文件將用于后期從惡意代碼的行為、語法、語義、協議等方面進行深層次分析[12-15]。

圖1 二進制代碼分析實驗平臺架構

實驗平臺的硬件環境最低要求為:內存2G,硬盤100G,操作系統為Ubuntu9.X/Ubuntu10.04/Ubuntu10.10。系統所需的其他軟件支持有llconf-0.4.5、kqemu和gcc-3.4。實驗平臺源代碼為TEMU源碼壓縮包(temu.tar.gz)和VINE源碼壓縮包(vine.tar.gz)。

為了方便實驗平臺的安裝,在實驗之前將終端后臺的安裝流程和啟動流程編寫為自動化Bash腳本,其中TEMU的安裝腳本為install-temu.sh,VINE的安裝腳本為install-vine.sh。平臺中虛擬監控系統的啟動腳本為start-up.sh。

2 實驗平臺的安裝流程

二進制代碼分析實驗平臺的安裝,大致包括如下4個步驟:

(1) 執行TEMU和VINE的安裝腳本。運行自動安裝腳本install-temu.sh和install-vine.sh。

(2) 制作和安裝實驗平臺所需虛擬監控操作系統。

① 制作系統映像文件:

qemu-img create -f qcow2 winxp.qcow2 20G

創建格式為qcow2、容量為20G的硬盤映像文件winxp.qcow2。

② 安裝Windows XP(需要說明的是,操作系統要求是微軟官方的版本,否則可能會安裝失敗):

qemu -hda winxp.qcow2 -cdrom /root/winxp.iso -boot d

其中,hda參數表示是硬盤映像,cdrom參數表示從光盤安裝,后跟iso所在的路徑,boot選d表明從光盤引導。

③ 用TEMU啟動系統映像:

temu -monitor stdio -kernel-kqemu winxp.qcow2

啟動后安裝TEMU的驅動,在虛擬機中將TEMU源碼中的testdrv/driver目錄下的testdrv.sys驅動文件拷貝至%SYSTEM32%drivers目錄下。然后,雙擊testdrv.reg文件將內容拷貝至注冊表來配置驅動程序,它將會在下次啟動后加載。若要確認該驅動是否工作正常,在TEMU運行的目錄中尋找一個名為guest.log的創建日志文件,觀察其是否包含一些TEMU收集的數據。

(3) 協議配置與共享目錄修改。

① 配置SMB文件共享協議:

sudo apt-get install uml-utilities

sudo /usr/sbin/tunctl -b user -t tap0

sudo chmod 666 /dev/net/tun

sudo apt-get install samba

sudo apt-get install smbfs

sudo gedit /etc/samba/smb.conf

② 修改共享目錄,在該文件末尾添加如下代碼:

[qemu]

comment = Windows file space

path =/文件共享目錄

read only =no

public =yes

sudo apt-get install samba-common-bin

testparm /etc/samba/smb.conf

sudo /etc/init.d/smbd restart

(4) 配置虛擬系統的網絡連接。配置虛擬系統的網絡連接,可以通過如下方式實現:

echo 1 > /proc/sys/net/ipv4/ip_forward

iptables -t nat -A POSTROUTING -o eth0 -s 192.168.10.0/24 -j MASQUERADE

3 實驗平臺的使用流程

利用實驗平臺對二進制代碼進行分析,可以依據下述步驟進行:

第1步:運行實驗平臺啟動腳本,QEMU虛擬系統將會啟動:

bash start-up.sh

第2步:系統啟動之后,根據實驗要求裝載并啟動動態監控插件。比如,要裝載的是tracecap插件:

(qemu) load_plugin /home/zwang/temu-tags-0.2.4/tracecap/tracecap.so

將會顯示如下的裝載信息:

general/trace_only_after_first_taint is enabled.

**general/log_external_calls is disabled.

general/write_ops_at_insn_end is disabled.

general/save_state_at_trace_stop is disabled.

tracing/tracing_table_lookup is enabled.

tracing/tracing_tainted_only is disabled.

tracing/tracing_kernel is disabled.

tracing/tracing_kernel_tainted is disabled.

tracing/tracing_kernel_partial is disabled.

**network/ignore_dns is disabled.

Enabled: 0x00 Proto: 0x00 Sport: 0 Dport: 0 Src: 0.0.0.0 Dst: 0.0.0.0

Loading plugin options from: /home/temu-tags-0.2.4/tracecap/ini/hook_plugin.ini

Loading plugins from: /home/temu-tags-0.2.4/shared/hooks/hook_plugins

/home/temu-tags-0.2.4/tracecap/tracecap.so is loaded successfully!

第3步:根據實驗需要設置監控配置項。比如,開啟污點標記:

(qemu) taint_nic 1

第4步:開始監控實驗所分析的程序進程,并指明生成文件:

(qemu) trace ProcessID "/home/name.trace"

此時終端將會顯示監控信息:

Waiting for process *** to start

(qemu) PID: 1234 CR3:0x0a025000

這一過程所需時間通常與所分析的程序有關,程序結構復雜,通常所需時間會比較長。如果要通過標記鍵盤終端輸入對二進制代碼的影響,需要通過taint_sendkey命令來輸入數據:

(qemu) taint_sendkey 5 1001

Tainting Keystroke: 9 00000001

第5步:程序運行結束后,輸入停止監控指令,并停止和卸載插件。

(qemu) trace_stop

(qemu) disable_emulation

(qemu) unload_plug

完成上述幾個步驟之后,就可以使用靜態組件VINE將trace文件轉換為匯編指令文件進行分析。分析實驗平臺生成的文件包括執行軌跡文件(trace)、進程空間加載進的動態模塊地址(functions)、程序運行過程中調用的API函數序列(calls)、系統接收到的網絡數據包(netlog)等。

4 結 語

從南開大學信息安全專業實驗室的實驗條件出發,結合實踐教學的具體要求,在我們已有工作基礎[7-9]上,探討了二進制代碼分析平臺的構建問題,包括實驗平臺的架構、配置、安裝和使用等問題,以期對相關的二進制代碼分析的實驗環境的構建和使用起到一定的指導意義。該二進制代碼分析實驗平臺能夠對不同類型的二進制代碼進行全方位的分析,目前我們所搭建的二進制代碼分析實驗平臺已應用在僵尸網絡的命令與控制協議研究和代碼混淆技術的效果分析中[16]。

二進制代碼分析平臺為信息安全專業學生提供了一個貼近國際流行新技術的學習和研究的實踐平臺,有益于學生接觸最前沿的信息安全技術;同時,也為理論學習與實踐之間的有機結合提供了良好的教學場景,有利于激發學生的學習興趣。從搭建分析平臺并使用它進行惡意代碼分析的過程中,學生可以找到自己的感興趣的內容并進行深入、自主的學習,提高自主創新的能力。

[1] DynamoRio: Dynamic Instrumentation Tool Platform. http://code.google.com/p/dynamorio/ [EB/OL] [2013-12-29]

[2] Pin - A Dynamic Binary Instrumentation Tool[EB/OL]. http://software.intel.com/en-us/articles/pin-a-dynamic-binary-instrumentation-tool. [2013-11-28].

[3] Song D, Brumley D, Yin H, et al. BitBlaze: A new approach to computer security via binary analysis[C]// 4thInternational Conference on Information Systems Security (ICISS 2008),Hyderabad, India: Springer, 2008:1-25.

[4] Newsome J, Song D. Dynamic taint analysis for automatic detection, analysis, and signature generation of exploits on commodity software[C]//2005 Network and Distributed System Security Symposium(NDSS 2005), San Diego, USA: The Internet Society, 2005:1-17.

[5] 王 志, 賈春福. “惡意代碼及其防治技術”課程的實驗環境構建與實驗內容設計[J], 計算機教育, 2009(18): 140-142.

[6] 郭鳳海,賈春福. 信息安全開放實驗探討[J]. 計算機教育, 2010(10):119-122.

[7] 高敏芬,郭鳳海. 惡意代碼防治技術課程的實踐和實驗室的有效管理[J]. 實驗室科學, 2010(2):141-144.

[8] 高敏芬,王 志. 二進制代碼分析與反分析技術開放實驗的探索[J]. 實驗室科學, 2011(3):154-156.

[9] 高敏芬, 王 志. 二進制代碼分析實驗平臺設計[J]. 實驗室科學, 2011(6):121-123.

[10] YIN H, SONG D. TEMU: The BitBlaze Dynamic Analysis Component[EB/OL]. http://bitblaze.cs.berkeley.edu/temu.html. [2014-3-1].

[11] YIN H, SONG D. Vine: The BitBlaze Static Analysis Component[EB/OL]. http://bitblaze.cs.berkeley.edu/vine.html. [2014-3-1].

[12] Cui W, Kannan J, Wang H. Discoverer: Automatic protocol reverse engineering from network traces[C]//16th USENIX Security, Boston, MA, USA: USENIX Association, 2007: 1-14.

[13] 應凌云, 楊 軼, 馮登國, 等. 惡意軟件網絡協議的語法和行為語義分析方法[J]. 軟件學報, 2011, 22(7): 1676-1689.

[14] Juan C, Pongsin P, Christian K,etal. Dispatcher: Enabling active botnet infiltration using automatic protocol reverse-engineering [C]//16thACM Conference on Computer and Communication Security(CCS 2009). Chicago, IL, USA: ACM Press, 2009: 621-634.

[15] Cho C, Babic D, Shin E,etal. Inference and analysis of formal models of botnet command and control protocols[C] //17thACM Conference on Computer and Communication Security(CCS 2010). Chicago, IL, USA: ACM Press,2010: 426-439.

[16] 王 志, 蔡亞運, 劉 露, 等. 基于覆蓋率分析的僵尸網絡控制命令發掘方法[J].通信學報, 2014, 35(1): 156-166.

Constructing Experimental Platform of Binary Code Analysis

GAOMin-fena,LIULub

(a. College of Mathematical Science; b. College of Computer and Control, Nankai University, Tianjin 300071, China)

Binary code analysis experimental platform is the experimental environment for the undergraduate course of Malicious Code Analysis of Information Security in Nankai University. This paper introduces how to construct a binary code analysis experimental platform based on BitBlaze, a binary code analysis tool. It includes the architecture of experimental platform, the deployment of installation environment, the installation of the platform, and the process using the platform. This paper may be helpful for those people who are constructing and using binary code analysis experimental platform.

experimental platform construction; binary code analysis; BitBlaze; information security; malicious code

2014-12-12

天津自然科學基金項目(2013JCYBJ00300);南開大學2012年本科教育教學改革項目(教通字[2013]17號)

高敏芬(1968-),女,天津人,碩士,高級工程師;主要從事計算機實驗教學管理工作。 E-mail:gaomf@nankai.edu.cn

TP 392

A

1006-7167(2015)05-0116-00

猜你喜歡
實驗分析
記一次有趣的實驗
微型實驗里看“燃燒”
隱蔽失效適航要求符合性驗證分析
做個怪怪長實驗
電力系統不平衡分析
電子制作(2018年18期)2018-11-14 01:48:24
電力系統及其自動化發展趨勢分析
NO與NO2相互轉化實驗的改進
實踐十號上的19項實驗
太空探索(2016年5期)2016-07-12 15:17:55
中西醫結合治療抑郁癥100例分析
在線教育與MOOC的比較分析
主站蜘蛛池模板: 中字无码av在线电影| 国产欧美日韩va| 久久免费成人| 思思热精品在线8| 日本黄色不卡视频| 国产真实乱人视频| 国产h视频免费观看| 国内黄色精品| 色综合激情网| 亚洲av无码牛牛影视在线二区| 亚洲精品国产综合99久久夜夜嗨| 国产又粗又猛又爽| 国产精品观看视频免费完整版| 日本手机在线视频| 国产亚洲精品精品精品| 幺女国产一级毛片| 亚洲欧美日韩中文字幕在线一区| 2021国产v亚洲v天堂无码| 无码AV高清毛片中国一级毛片| 91精品免费高清在线| 欧洲一区二区三区无码| 国产啪在线91| 任我操在线视频| 六月婷婷激情综合| 亚洲天堂成人| 国产人人射| 99在线视频网站| 精品久久国产综合精麻豆| 波多野结衣中文字幕久久| 国产综合在线观看视频| AV老司机AV天堂| 亚洲欧洲日产国产无码AV| 992tv国产人成在线观看| 成年人免费国产视频| 国产精品久久精品| 五月激情婷婷综合| 欧美日韩第三页| 亚洲国产精品无码AV| 亚洲欧美在线看片AI| 色婷婷综合在线| 欧美一区二区精品久久久| 亚洲综合中文字幕国产精品欧美| 成人综合久久综合| 精品午夜国产福利观看| 四虎精品黑人视频| 女人18一级毛片免费观看| 国产黄网站在线观看| 色综合综合网| 婷婷激情亚洲| 欧美福利在线| 午夜日本永久乱码免费播放片| 无遮挡国产高潮视频免费观看 | 最近最新中文字幕在线第一页| 国产色爱av资源综合区| 人妻精品久久久无码区色视| 欧美在线三级| 九九免费观看全部免费视频| 欧美激情视频二区| 日韩在线视频网站| 日韩精品一区二区三区免费| 在线观看国产精品第一区免费| 一级香蕉人体视频| 伊人色综合久久天天| 亚洲三级a| 婷婷午夜影院| 精品综合久久久久久97超人| 亚洲人成网站在线观看播放不卡| www.国产福利| 免费jjzz在在线播放国产| 黄色网页在线观看| 成人一级黄色毛片| 欧美色视频在线| 伊人成人在线视频| 波多野结衣一二三| 8090成人午夜精品| 欲色天天综合网| 亚洲日韩在线满18点击进入| 国产成人精品在线| 国产xx在线观看| 亚洲日韩在线满18点击进入| 色网站在线视频| 中文字幕日韩欧美|