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的比較分析
主站蜘蛛池模板: 国产精品亚洲αv天堂无码| 国产午夜精品一区二区三区软件| 国产精品九九视频| 亚洲另类第一页| 久久这里只有精品国产99| 三上悠亚一区二区| 国产成年女人特黄特色毛片免| 亚洲床戏一区| 久久综合九九亚洲一区| 国产在线专区| 成人精品视频一区二区在线| 久久a级片| 青青青伊人色综合久久| 无码中文AⅤ在线观看| 人妻熟妇日韩AV在线播放| 午夜成人在线视频| 亚洲精品欧美重口| 成人在线第一页| 99在线国产| 欧美一级高清视频在线播放| 日韩精品一区二区三区中文无码| 国产精品妖精视频| 国产精品55夜色66夜色| 久久久久亚洲精品成人网| 国产精品一老牛影视频| 欧洲亚洲一区| 特级毛片免费视频| 国产一区三区二区中文在线| 成人va亚洲va欧美天堂| 99re在线视频观看| 男女男免费视频网站国产| 综合五月天网| 99re这里只有国产中文精品国产精品| 欧美福利在线观看| 无码aⅴ精品一区二区三区| 国产地址二永久伊甸园| 激情网址在线观看| 999精品色在线观看| 国产国语一级毛片在线视频| 国产精品久久久久久久久久98| 免费一看一级毛片| 伊人久久影视| 亚洲妓女综合网995久久| 日本午夜在线视频| 国产成人夜色91| 四虎永久在线精品国产免费| 久久久久九九精品影院| 青青国产在线| 成人在线亚洲| 无码综合天天久久综合网| 欧美怡红院视频一区二区三区| 欧美一级夜夜爽| 国产青榴视频| 亚洲精品动漫| 国产日本一区二区三区| 男人天堂亚洲天堂| 91午夜福利在线观看精品| 99re免费视频| 五月婷婷综合色| 国产18在线| 国产玖玖玖精品视频| 国产欧美日韩视频怡春院| 天天躁狠狠躁| 亚洲成人一区二区三区| 亚洲无码熟妇人妻AV在线| 成人午夜视频免费看欧美| 99热这里只有精品免费国产| 女人一级毛片| 欧美精品一区二区三区中文字幕| 中文字幕波多野不卡一区| 欧美精品成人一区二区视频一| 国产杨幂丝袜av在线播放| 在线日韩日本国产亚洲| 一区二区三区在线不卡免费| 亚洲成在线观看| 国产黑丝一区| 欧美一区二区三区香蕉视| 毛片在线播放a| 91精品国产自产在线老师啪l| 欧美笫一页| 亚洲天堂网在线观看视频| 亚洲中文字幕无码mv|