序言介紹:為了應(yīng)對層出不窮的反虛擬機(jī)技術(shù)甚牲,本文實(shí)現(xiàn)一種真機(jī)搭建cuckoo的方式滋觉,結(jié)合國家網(wǎng)路中心的clonezila來實(shí)現(xiàn)分析機(jī)器的還原砌们。
1.硬件準(zhǔn)備
*ubuntu16.04服務(wù)器一臺(可在虛擬機(jī)中實(shí)現(xiàn))
*win7或者winxp一臺
*交換機(jī)一臺
2.服務(wù)器搭建
?????我選擇的目前最新的ubuntu16.04若河,內(nèi)置python2.7比較方便,當(dāng)然也可以選擇其他版本的系統(tǒng),或者centos應(yīng)該也可以睹欲,不過最好用ubuntu,因?yàn)橘Y料較多,cuckoo官方資料也是用cuckoo搭建的一屋。
1.安裝python2.7
?????這是cuckoo所需要的窘疮,如果你的系統(tǒng)內(nèi)置了python2.7那就不用安裝了,安裝步驟網(wǎng)上教程一大堆冀墨,不再贅述闸衫。查看python版本 python -V,一般內(nèi)置pip安裝工具诽嘉,沒有的話另外安裝一下蔚出。
2.安裝依賴庫
?????1.安裝相關(guān)的依賴庫
sudo apt-get install python python-pip python-dev libffi-dev libssl-dev libxml2-dev libxslt1-dev libjpeg-dev
然后去cuckoog官網(wǎng)或者github下載cuckoo最新版本,然后解壓打開cuckoo文件夾,有個requiremens.txt的文件夾含懊,這需要全部下載身冬,可以用python的pip進(jìn)行安裝,其中其中的 pefile 需要從 Google Code 上下載岔乔,由于大陸網(wǎng)絡(luò)限制酥筝,需要自備梯子,登上梯子后執(zhí)行以下批量安裝命令:
pip install -r requirements.txt
或者先把pefile安裝源碼下載雏门,手動安裝嘿歌,然后把它從requirements.txt里刪除,然后用pip命令安裝茁影,個人建議用第二種方法宙帝。
?????2.Host 機(jī)需要可以嗅探網(wǎng)絡(luò)數(shù)據(jù)包,需要安裝 tcpdump 募闲,如果本機(jī)沒有步脓,則執(zhí)行以下命令安裝 tcpdump:
**apt-get install tcpdump**
如果系統(tǒng)沒啟用 root 賬戶,由于 tcpdump 的執(zhí)行需要 root 權(quán)限浩螺,則需要以下配置:
**$ sudo setcap cap_net_raw,cap_net_admin=eip /usr/sbin/tcpdump**
如果系統(tǒng)里沒有setcap命令靴患,則需要安裝 libpcap包:
**$ sudo apt-get install libcap2-bin**
如果需要啟用內(nèi)存鏡像分析,需要安裝 volatility:
**apt-get install volatility**
3.cuckoo配置文件的修改
?????主要修改的文件有:cuckoo.conf,physical.conf,auliary.conf.重點(diǎn)修改前兩個要出。
?????1.修改cuckoo.conf
version_check = on 這個其實(shí)可以關(guān)掉鸳君,不然一直檢查,如果你版本稍微低了一下就報錯患蹂。
machinery = physical 這個地方改成physical
ip = 192.168.56.1 根據(jù)你的實(shí)際情況填寫
vm_state = 60 根據(jù)你的電腦實(shí)際還原時間填寫
?????2.修改physical.conf
user = username
password = password 根據(jù)你的分析機(jī)填寫
interface = eth0根據(jù)你的網(wǎng)卡填寫
ip = 192.168.56.101根據(jù)你的分析機(jī)填寫
4.安裝drbl
?????1. 設(shè)置靜態(tài)ip地址或颊,直接在桌面設(shè)置及可以了砸紊。
?????2.安裝drbl金鑰
wget -q http://drbl.nchc.org.tw/GPG-KEY-DRBL -O- | sudo apt-key add -
?????3.添加drbl源(根據(jù)自己的系統(tǒng)版本修改一下)
vi /etc/apt/sources.list
deb http://free.nchc.org.tw/ubuntu xenial main restricted universe multiverse
deb http://free.nchc.org.tw/drbl-core drbl stable
?????3.安裝drbl
sudo apt-get update
sudo apt-get install drbl
?????4.設(shè)置drblserver
sudo drblsrv -i
提示!當(dāng)有yes/no選項(xiàng)的時候,預(yù)設(shè)的值是大寫的字母囱挑。例如 (y/N), 預(yù)設(shè)值是 "N", 當(dāng)你按 "Enter"的時候醉顽,程式使用的值就是 "N"。如果你不確認(rèn)選用那個好的時候看铆,直接按"Enter"鍵是一個保險的方式.感覺不保險的話徽鼎,去搜一下,很多介紹的弹惦,在這不贅述否淤。
?????5.設(shè)置環(huán)境
sudo drblpush -i
提示!當(dāng)有yes/no選項(xiàng)的時候,預(yù)設(shè)的值是大寫的字母棠隐。例如 (y/N), 預(yù)設(shè)值是 "N", 當(dāng)你按 "Enter"的時候石抡,程式使用的值就是 "N"。如果你不確認(rèn)選用那個好的時候助泽,直接按"Enter"鍵是一個保險的方式.感覺不保險的話啰扛,去搜一下,很多介紹的嗡贺,一般都差不多隐解。注意有一點(diǎn),搜集網(wǎng)卡的時候盡量選擇實(shí)時收集诫睬,然后收集完煞茫,注意查看是否有文件在相應(yīng)目錄,還有注意系統(tǒng)讀取網(wǎng)卡文件的名字的命名方式摄凡,比如我的網(wǎng)卡為ens33,所以網(wǎng)卡文件為macadr-ens33.txt,但是系統(tǒng)讀取文件的時候可能會去查找以macadr-eth開頭的文件续徽,所以遇到這種情況的話,去手動創(chuàng)建一個這樣的文件就可以了亲澡。還有就是配置的時候盡量切到/etc/drbl目錄下進(jìn)行操作钦扭。
?????6.現(xiàn)在基本上drbl就設(shè)置好了。
5床绪。網(wǎng)路設(shè)置
?????由于我在虛擬機(jī)上搭建的服務(wù)器客情,所以我選擇橋接模式,橋接到物理機(jī)有線網(wǎng)卡上癞己,然后外接到交換機(jī)膀斋,然后分析機(jī)器也接到交換機(jī),構(gòu)成一個物理的局域網(wǎng)環(huán)境末秃。
3.分析機(jī)設(shè)置
1.首先安裝python2.7,去python官網(wǎng)下載就好了籽御。
2.關(guān)閉防火墻练慕,自動更新惰匙,uac。
3.設(shè)置python運(yùn)行權(quán)限為管理員铃将。
4.設(shè)置固定ip.(注意此時的ip不要和clonezila給他分配的ip一致项鬼,否則在還原的時候,網(wǎng)絡(luò)捕捉模塊會抓取太多還原時候的無用包劲阎,從而導(dǎo)致分析報告異常龐大绘盟。)
**到此整個環(huán)境搭建就已經(jīng)差不多了。注意需要熟悉drbl的使用方法才能使用此環(huán)境悯仙。此外還需要把drbl還原分析機(jī)的指令加入到cuckoo的源代碼里去龄毡。文件具體為:scheduler庫文件,添加到讓分析機(jī)關(guān)機(jī)指令的前面位置锡垄。