当前位置: 首页 > 工具软件 > Cuckoo > 使用案例 >

cuckoo沙箱配置部署流程

韦嘉颖
2023-12-01

环境以及安装前的注意事项

  • 本次安装所需要构造的所有的环境的大体图
  1. 物理机(windows)
我的物理机是windows 10 64位
  1. 虚拟机管理软件(安装在物理机上)
我使用的是VMware
  1. 虚拟机里的虚拟机
VMware中安装Ubuntu 16.04  64位
在该ubuntu中安装virtualbox,然后再安装
windows7(x86)32位机器
也就是说我们需要在虚拟机下装一个虚拟机

所以大体的环境就是你的win10本机下装一个VMware,VMware里面装了一个Ubuntu16.04,Ubuntu16.04里面装了个windows7,其中Ubuntu称为host主机,Windows称为我们guest

  • 环境及版本的问题
1. Ubuntu的版本(笔者用的是ubuntu 16.04.6,所以以下的所有测试操作以16.04.6为准)
	Ubuntu 16.04.6
2. windows的版本
	cn_windows_7_professional_x86_dvd_x15-65790.iso
3. VMware的版本
	VMware 15.1.0
4. Virtualbox的版本
	virtualbox 6.0.8(cuckoo不支持低版本的virtualbox了)

Host主机和Guest安装配置

  • 以下操作基于一台刚装好的Ubuntu机器,安装过程可以百度

基本设置和更新

  • 核对复制粘贴是否可用
    如果不可用请先尝试执行如下命令并重启虚拟机
sudo apt-get autoremove open-vm-tools
sudo apt-get install open-vm-tools-desktop

如果仍然不行请核对安装的ubuntu版本,我就是不小心装了32位的ubuntu才导致一直不可用(可能因为物理机是64位的)

  • 更新源
gedit /etc/apt/sources.list
## 16.04.4的推荐源
deb http://mirrors.aliyun.com/ubuntu/ trusty main multiverse restricted universe
deb http://mirrors.aliyun.com/ubuntu/ trusty-backports main multiverse restricted universe
deb http://mirrors.aliyun.com/ubuntu/ trusty-proposed main multiverse restricted universe
deb http://mirrors.aliyun.com/ubuntu/ trusty-security main multiverse restricted universe
deb http://mirrors.aliyun.com/ubuntu/ trusty-updates main multiverse restricted universe
deb-src http://mirrors.aliyun.com/ubuntu/ trusty main multiverse restricted universe
deb-src http://mirrors.aliyun.com/ubuntu/ trusty-backports main multiverse restricted universe
deb-src http://mirrors.aliyun.com/ubuntu/ trusty-proposed main multiverse restricted universe
deb-src http://mirrors.aliyun.com/ubuntu/ trusty-security main multiverse restricted universe
deb-src http://mirrors.aliyun.com/ubuntu/ trusty-updates main multiverse restricted universe
## 16.04.6的推荐源
deb-src http://archive.ubuntu.com/ubuntu xenial main restricted
deb http://mirrors.aliyun.com/ubuntu/ xenial main restricted
deb-src http://mirrors.aliyun.com/ubuntu/ xenial main restricted multiverse universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted multiverse universe
deb http://mirrors.aliyun.com/ubuntu/ xenial universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates universe
deb http://mirrors.aliyun.com/ubuntu/ xenial multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse
deb http://archive.canonical.com/ubuntu xenial partner
deb-src http://archive.canonical.com/ubuntu xenial partner
deb http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted multiverse universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-security universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-security multiverse
apt-get update && apt-get upgrade
  • 终端美化(非必需)

1、安装zsh

apt-get install zsh -y

2、修改默认shell

chsh -s /bin/zsh

3、 安装Git

apt-get install git -y

4、安装oh-my-zsh

sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"

5、安装zsh-syntax-highlighting语法高亮插件

git clone https://github.com/zsh-users/zsh-syntax-highlighting.git
echo "source ${(q-)PWD}/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh" >> ${ZDOTDIR:-$HOME}/.zshrc
source ~/.zshrc

6、安装zsh-autosuggestions语法历史记录插件

git clone git://github.com/zsh-users/zsh-autosuggestions $ZSH_CUSTOM/plugins/zsh-autosuggestions
vim ~/.zshrc

## 在zshrc的这一行加入zsh-autosuggestions
    plugins=(
        zsh-autosuggestions
    )
source ~/.zshrc

依赖环境和cuckoo的安装

Git安装

apt-get install git -y

Requirements

apt-get install python python-pip python-dev libffi-dev libssl-dev -y
apt-get install python-virtualenv python-setuptools -y
apt-get install libjpeg-dev zlib1g-dev swig -y
  • 配置pip源,加速pip下载
# 创建pip的配置文件
mkdir ~/.pip
touch ~/.pip/pip.conf
sudo gedit ~/.pip/pip.conf

# 粘贴一下内容
[global] 
index-url = http://pypi.douban.com/simple 
[install] 
trusted-host=pypi.douban.com

# 推荐的镜像源
# 豆瓣(douban) http://pypi.douban.com/simple/ (推荐) 
# 清华大学 https://pypi.tuna.tsinghua.edu.cn/simple/ 
# 阿里云 http://mirrors.aliyun.com/pypi/simple/ 
# 中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/ 
# 中国科学技术大学 http://pypi.mirrors.ustc.edu.cn/simple/ 

# pip升级后会有文件的错误,编辑以下文件内容(如果你pip能够正常不需要改)
# 实测ubuntu16.04.7无需如下修改
gedit /usr/bin/pip
from pip import main 改为 from pip._internal import main

Mongodb

apt-get install mongodb -y

Postgresql

## 可能出现安装失败,按提示安装相关依赖
apt-get install postgresql libpq-dev -y

VirtualBox

echo deb http://download.virtualbox.org/virtualbox/debian xenial contrib | sudo tee -a /etc/apt/sources.list.d/virtualbox.list
wget -q https://www.virtualbox.org/download/oracle_vbox_2016.asc -O- | sudo apt-key add -
apt-get update

## 切换到你的virtualbox deb包目录下后执行以下命令
## 注意deb文件需要官网自己下载对应ubuntu的版本
dpkg -i virtualbox-6.0_6.0.8-130520~Ubuntu~xenial_amd64.deb

## 如果你的机器原来安装过virtualbox,也就是你的Ubuntu,执行以下命令后再进行安装
apt remove virtualbox*

Tcpdump

apt-get install tcpdump apparmor-utils -y
aa-disable /usr/sbin/tcpdump

请注意,只有在使用默认目录时才需要apparmor禁用配置文件(aa-disable命令),CWD因为apparmor会阻止创建实际的PCAP文件(另请参阅 tcpdump的权限被拒绝)。
对于禁用apparmor的Linux平台(例如,Debian),以下命令就足以安装tcpdump:

$ sudo apt-get install tcpdump

Tcpdump需要root权限,但由于不希望Cuckoo以root身份运行,因此必须为二进制文件设置特定的Linux功能:

$ sudo groupadd pcap
$ sudo usermod -a -G pcap cuckoo
$ sudo chgrp pcap /usr/sbin/tcpdump
$ sudo setcap cap_net_raw,cap_net_admin=eip /usr/sbin/tcpdump

可以使用以下命令验证上一个命令的结果:

$ getcap /usr/sbin/tcpdump
/usr/sbin/tcpdump = cap_net_admin,cap_net_raw+eip

如果没有安装setcap,可以使用:

$ sudo apt-get install libcap2-bin

M2Crypto

## 如果下载速度很慢,请翻到上面pip的源配置,进行源更新
pip install m2crypto==0.24.0

Cuckoo

## 如果下载速度很慢,请翻到上面pip的源配置,进行源更新
## 下载完成安装时候可能出现如下错误
## ERROR: Package ‘pyrsistent‘ requires a different Python: 2.7.5 not in ‘>=3.5‘
## 需要更新pyrsistent的版本:pip install pyrsistent==0.15.0
pip install -U pip setuptools
pip install -U cuckoo

Cuckoo Working Directory

adduser cuckoo
mkdir /opt/cuckoo
chown cuckoo:cuckoo /opt/cuckoo
# cuckoo -cwd 可以将工作路径切换到/opt/cuckoo这个目录下,这样在这个目录下就可以看到所有的配置文件
cuckoo --cwd /opt/cuckoo
usermod -a -G sudo cuckoo

Network Config

# 创建一张网卡
vboxmanage hostonlyif create

以下几步每次ubuntu重启都需要重新设置

vboxmanage hostonlyif ipconfig vboxnet0 --ip 192.168.201.1
# 设置host与guest的转发规则
# 注意网卡与你的电脑的网卡是否对应 ifconfig可查看对应网卡
sudo iptables -A FORWARD -o ens33 -i vboxnet0 -s 192.168.201.0/24 -m conntrack --ctstate NEW -j ACCEPT
sudo iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
sudo iptables -A POSTROUTING -t nat -j MASQUERADE

# 开启转发
## 如果执行如下命令出现Bash /proc/sys/net/ipv4/ip_forward: Permission denied错误
## 可以选择如下命令之一替换执行
## sudo bash -c 'echo 1 > /proc/sys/net/ipv4/ip_forward'
## echo 1 | sudo tee /proc/sys/net/ipv4/ip_forward
echo 1 > /proc/sys/net/ipv4/ip_forward

Guest Config

virtualbox安装windows xp

  1. 命令行输入virtualbox启动图形界面
  2. 新建虚拟机,选择对应的系统版本,虚拟机命名为cuckoo1(否则cuckoo沙箱无法识别),一直默认下一步(注意调整分配内存和存储空间)
  3. 新建结束,右键虚拟机设置:
    点击网络,将网络改为仅主机模式并选择vboxnet0这张网卡
    点击存储-没有盘片,选择已经下载好的iso镜像
    注意:设置界面底部出现发现无效配置时请按要求进行设置(比如取消勾选系统栏目下的硬件加速)
  4. 启动虚拟机,开始安装windows
    安装过程:
    1)需要输入产品秘钥
    CM3HY-26VYW-6JRYC-X66GX-JVY2D 可用
    DP7CM-PD6MC-6BKXT-M8JJ6-RPXGJ 可用
    链接:http://www.xitongcheng.com/jiaocheng/xtazjc_article_33955.html
    2)选择关闭自动更新(可跳过,后续再配置)
    3)选择关闭防火墙(可跳过,后续再配置)
    3)设置网络(可跳过,后续再配置)
    4)关闭自动通知
    5)点击virtualbox菜单的设备,安装增强功能,然后重启,在该栏目下勾选共享粘贴板与拖放,然后重启
    以上设置可在控制面板的安全中心进行管理
# 在cmd下能ping www.baidu.com即可
静态 IP - 192.168.201.101
子网掩码 255.255.255.0
默认网关 - 192.168.201.1
DNS - any DNS server (8.8.8.8)

安装Python

  1. 下载 Python
    python-2.7.12.msi
    链接:http://www.python.org/download/
  2. 由于启动拖放,可直接把安装包拖到windows xp,双击安装
  3. 安装结束可在开始菜单启用python命令,或者自行添加环境变量(如果下边的path不行就尝试在上边创建path,添加地址)

安装pillow

需要安装pip

## cmd命令行转到C:\Python27\Scripts然后执行
easy_install.exe pip

## 然后升级pip
python -m pip install --upgrade pip

安装
pip install pillow

agent.py配置

# 1. 找到agent.py文件,文件所在目录如下
## /home/cuckoo/.local/lib/python2.7/site-packages/cuckoo/data/agent/agent.py
# 2. 将agent.py改名为agent.pyw
# 3. 将agent.pyw放到windows7: C:\Users\[USER]\AppData\Roaming\MicroSoft\Windows\Start Menu\Programs\Startup\
#  windwos xp: C:\Documents and Settings\yfl\「开始」菜单\程序\启动
#	路径类似,只是作为参照
# user为自己的计算机登录名

然后重启,可以看到进程中存在pythonw,在命令行输入netstat -na可以看到8000端口处于监听状态

快照创建

保持windows系统处于开启,且进程中存在pythonw,点击virtualbox管理器菜单栏控制-工具-备份[系统快照],生成新的快照,取名为Snapshot1,若取为其他名字则在接下来的cuckoo配置中请于virtualbox.conf文件中修改

cuckoo配置与启动

启动以进行初始化

cuckoo -d

第一次会进行初始化配置,然后自动关闭

cuckoo配置文件修改,.cuckoo目录被隐藏,需要ctrl+H显示所有文件

  1. 对.cuckoo/conf/cuckoo.conf文件修改
    修改resultserver栏下的ip地址为 192.168.201.1(201还是56或者其他的地址取决于你的ubuntu原ip地址)
  2. 对.cuckoo/conf/virtualbox.conf文件修改-修改以下几项
    mode = gui
    machines = cuckoo1
    label = cuckoo1
    ip = 192.168.201.101

重新启动沙箱

cuckoo -d

注:要启动web界面需要修改reporting.conf文件,将Mongodb的配置选项改为yes

cuckoo web

本次配置参考自博文:https://blog.csdn.net/qq_38990949/article/details/103336089
并在此基础上做了更加详细的配置介绍

 类似资料: