日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢(xún)
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
Cuckoo惡意軟件自動(dòng)化分析平臺(tái)搭建

0x00 cuckoo概述

讓客戶(hù)滿(mǎn)意是我們工作的目標(biāo),不斷超越客戶(hù)的期望值來(lái)自于我們對(duì)這個(gè)行業(yè)的熱愛(ài)。我們立志把好的技術(shù)通過(guò)有效、簡(jiǎn)單的方式提供給客戶(hù),將通過(guò)不懈努力成為客戶(hù)在信息化領(lǐng)域值得信任、有價(jià)值的長(zhǎng)期合作伙伴,公司提供的服務(wù)項(xiàng)目有:域名注冊(cè)、網(wǎng)頁(yè)空間、營(yíng)銷(xiāo)軟件、網(wǎng)站建設(shè)、阿爾山網(wǎng)站維護(hù)、網(wǎng)站推廣。

Cuckoo是一款開(kāi)源的自動(dòng)化惡意軟件分析系統(tǒng),目前主要用于分析windows平臺(tái)下的惡意軟件,但其框架同時(shí)支持Linux和Mac OS。cuckoo能夠自動(dòng)化獲取如下信息:

  1. 能夠跟蹤惡意軟件進(jìn)程及其產(chǎn)生的所有進(jìn)程的win32 API調(diào)用記錄;
  2. 能夠檢測(cè)惡意軟件的文件創(chuàng)建、刪除和下載;
  3. 能夠獲取惡意軟件進(jìn)程的內(nèi)存鏡像;
  4. 能夠獲取系統(tǒng)全部?jī)?nèi)存鏡像,方便其他工具進(jìn)行進(jìn)一步分析;
  5. 能夠以pacp格式抓取網(wǎng)絡(luò)數(shù)據(jù);
  6. 能夠抓取惡意軟件運(yùn)行時(shí)的截圖。

Cuckoo支持分析多種文件格式,包括windows可執(zhí)行文件,DLL文件,PDF文檔,Office文檔,惡意URL,HTML文件,PHP文件,CPL文件,VBS,ZIP壓縮文件,jar文件,python程序等。這些完全依賴(lài)于他的分析模塊。

下圖是cuckoo的架構(gòu)圖,非常清晰。Cuckoo依賴(lài)于下面的虛擬機(jī)進(jìn)行實(shí)際的分析,然后通過(guò)虛擬網(wǎng)絡(luò)將分析結(jié)果傳輸給cuckoo host。所以cuckoo的運(yùn)行至少需要一個(gè)虛擬化環(huán)境。目前cuckoo能夠支持vmware,virtualbox,kvm,qemu,xen,avd等主流虛擬化平臺(tái)。

Cuckoo的架構(gòu)是高度模塊化的,只要我們添加不同的分析模塊,cuckoo就能夠完成不同系統(tǒng)平臺(tái)下的分析工作。

0x01 環(huán)境搭建

測(cè)試環(huán)境是host:kali 2.0 x64,guest:windows xp sp3 en。

1.1 安裝

獲取cuckoo,我們從github上獲取***的cuckoo:

Git clone https://github.com/cuckoobox/cuckoo.git

安裝cuckoo依賴(lài)的python庫(kù):

$ sudo apt-get install python python-pip
$ sudo apt-get install mongodb
$ sudo pip install -r requirements.txt

此處安裝可能會(huì)出現(xiàn)問(wèn)題,是系統(tǒng)所安裝的python庫(kù)與pip安裝的庫(kù)版本不一致導(dǎo)致的,因?yàn)橄到y(tǒng)所安裝的python庫(kù)往往比較舊,而pip安裝的庫(kù)比較新,且pip安裝的其他庫(kù)依賴(lài)較新的庫(kù),所以導(dǎo)致問(wèn)題。解決方法是將系統(tǒng)的python庫(kù)卸載,不過(guò)系統(tǒng)的某些python庫(kù)存在依賴(lài),需要用dpkg --purge --force-all 包名來(lái)強(qiáng)制卸載,然后再用pip來(lái)安裝即可解決。

$ sudo apt-get install tcpdump
$ sudo apt-get install libcap2-bin

如果想進(jìn)行內(nèi)存鏡像分析,需要安裝volatility。

$ sudo apt-get install volatility

啟用截圖功能,需要Python Image庫(kù)

$ sudo pip install PIL

這里我們采用virtualbox虛擬化平臺(tái),所以需要下載并安裝virtualbox。

1.2 配置

軟件安裝好后,需要先創(chuàng)建一個(gè)虛擬機(jī),可以利用virtualbox圖形界面進(jìn)行操作。Cuckoo在運(yùn)行的時(shí)候,需要在host上監(jiān)聽(tīng)一個(gè)地址,用于獲取報(bào)告信息,而這個(gè)地址虛擬機(jī)必須能夠訪問(wèn)的到。這里采用的網(wǎng)絡(luò)配置是將虛擬機(jī)網(wǎng)卡調(diào)整為host-only模式,相當(dāng)于虛擬機(jī)與host之間連接了一根網(wǎng)線。此時(shí),host的網(wǎng)卡列表中會(huì)有一個(gè)類(lèi)似vboxnet0的網(wǎng)卡,這就是host與虛擬機(jī)之間通信的網(wǎng)卡。虛擬機(jī)內(nèi)部的ip地址可以自己設(shè)置,只要跟vboxnet0的地址在一個(gè)網(wǎng)段即可。默認(rèn)情況下vboxnet0是192.168.56.1。虛擬機(jī)可以是192.168.56.101。

為了讓虛擬機(jī)能夠正常的訪問(wèn)外網(wǎng),host還需要進(jìn)行數(shù)據(jù)轉(zhuǎn)發(fā),參考官方的命令:

iptables -A FORWARD -o eth0 -i vboxnet0 -s 192.168.56.0/24 -m conntrack --ctstate NEW -j ACCEPT
iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A POSTROUTING -t nat -j MASQUERADE
sysctl -w net.ipv4.ip_forward=1

其中***條命令中的eth0是你host的上網(wǎng)用的真實(shí)網(wǎng)卡地址,vboxnet0則是虛擬網(wǎng)卡。

***一條是開(kāi)啟內(nèi)核數(shù)據(jù)轉(zhuǎn)發(fā)。

裝好虛擬機(jī)系統(tǒng)后,為達(dá)到***的兼容效果,需要將windows虛擬機(jī)的防火墻,自動(dòng)更新關(guān)閉,然后需要安裝python2.7環(huán)境。并將cuckoo根目錄下agent/agent.py復(fù)制到虛擬機(jī)中。agent.py負(fù)責(zé)虛擬機(jī)到主機(jī)的數(shù)據(jù)傳輸,可以將其添加到startup文件夾下,開(kāi)機(jī)自動(dòng)啟動(dòng),如果不想出現(xiàn)黑窗口,可以修改文件名agent.py到agent.pyw。運(yùn)行agent.pyw后,此時(shí)的虛擬機(jī)環(huán)境基本搭建完成了,當(dāng)然,如果需要分析office或者pdf等,那么還需要安裝這些軟件。現(xiàn)在可以創(chuàng)建一個(gè)純凈的系統(tǒng)快照了,以備后用。

虛擬機(jī)配置完成之后,就是配置cuckoo了。Cuckoo的配置文件在conf目錄下,該目錄下有很多配置文件,其中:

auxiliary.conf 是輔助配置模塊,用于輔助其他功能如sniffer,mitm。這里可以不用配置。

cuckoo.conf是主要配置文件,最主要的是machinery用于指定我們使用的虛擬機(jī)配置文件,默認(rèn)是virtualbox,該文件同樣位于conf目錄下,名字是virtualbox.conf。當(dāng)然我們可以自己定義自己的虛擬機(jī)配置文件,并放在conf目錄下,命名規(guī)則是一樣的。另外重要的選項(xiàng)是ip和port,用于指定接收分析結(jié)果的服務(wù)器。該地址必須能夠讓虛擬機(jī)訪問(wèn)到,一般設(shè)置為虛擬網(wǎng)卡的地址,比如上面配置的vboxnet0地址192.168.56.1,端口默認(rèn)就可以。

memory.conf是內(nèi)存鏡像配置選項(xiàng),主要用于Volatility分析,這里可以不用配置。

processing.conf是結(jié)果處理配置模塊,其中的配置選項(xiàng)直接影響最終報(bào)告的內(nèi)容,這里可以不用配置。

.conf是指所有的虛擬化配置文件,包括virtualbox、vmware、kvm等。這些文件屬于一類(lèi)文件,在實(shí)際的配置當(dāng)中,我們根據(jù)我們的虛擬化環(huán)境,只需要配置其中一個(gè)即可,同時(shí)采用的這個(gè)配置文件也必須在cuckoo.conf的machinery字段指定。這里的配置選項(xiàng)都是針對(duì)特定虛擬化平臺(tái)的,很多選項(xiàng)只適用于某些平臺(tái)。我們采用的是virtualbox.conf,其中mode指定virtualbox的運(yùn)行模式,path指定VBoxManage的絕對(duì)路徑,machines指定我們使用的虛擬機(jī)的名字,platform指定虛擬機(jī)運(yùn)行的系統(tǒng)平臺(tái),ip指定虛擬機(jī)的ip地址。

reporting.conf用于配置報(bào)告生成的方式,這里可以不用配置。

***我們?cè)谂渲靡幌耤uckoo的web界面。需要開(kāi)啟reporting.conf中的mongodb。然后開(kāi)啟mongodb服務(wù):systemctl enable mongodb;systemctl start mongodb?,F(xiàn)在可以啟動(dòng)web服務(wù)web/manage.py runserver。服務(wù)運(yùn)行于127.0.0.1:8000。

1.3 運(yùn)行

Python cuckoo.py 運(yùn)行cuckoo分析系統(tǒng)。如下圖:

啟動(dòng)后cuckoo開(kāi)始等待分析任務(wù)。添加分析任務(wù)使用根目錄下的utils/的submit.py。具體用法可以看幫助,這里主要介紹利用web界面來(lái)添加任務(wù)及查看報(bào)告。

在瀏覽器中打開(kāi)127.0.0.1:8000

點(diǎn)擊submit添加任務(wù),同時(shí)還有一些高級(jí)選項(xiàng),如果需要內(nèi)存分析,請(qǐng)選中Full Memory Dump。提交后,cuckoo就會(huì)開(kāi)始自動(dòng)分析,期間virtualbox會(huì)啟動(dòng)并運(yùn)行程序。最終分析結(jié)果:

最上面就是cuckoo分析的類(lèi)型,包括靜態(tài)分析,行為分析,網(wǎng)絡(luò)分析等。

0x02 結(jié)束語(yǔ)

本文主要介紹了cuckoo的基本特性和安裝,配置方法。利用cuckoo能夠快速的分析惡意程序的部分行為,提高對(duì)惡意程序分析的效率。后續(xù)文章會(huì)繼續(xù)分析cuckoo的程序結(jié)構(gòu)及模塊開(kāi)發(fā)。


當(dāng)前題目:Cuckoo惡意軟件自動(dòng)化分析平臺(tái)搭建
網(wǎng)站網(wǎng)址:http://www.5511xx.com/article/dhehesj.html