Ubuntu16.04安装cuckoo sandbox

本文介绍了如何在Ubuntu16.04上安装Cuckoo Sandbox,包括准备环境、安装Python库、MongoDB、PostgreSQL、虚拟机、tcpdump、Volatility、M2Crypto和guacd等,以及配置Cuckoo,创建虚拟机,安装代理,配置网络,以实现恶意软件的自动化分析环境。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、官方文档

https://cuckoo.sh/docs/

二、沙盒简介

在计算机安全领域,沙盒(英语:sandbox,又译为沙箱)是一种安全机制,为运行中的程序提供的隔离环境。通常是作为一些来源不可信、具破坏力或无法判定程序意图的程序提供实验之用。
这个概念也适用于恶意软件分析的沙盒:我们的目标是在隔离环境中运行未知和不受信任的应用程序或文件,并获取有关它的功能的信息。简单的说,Cuckoo是一个允许执行沙盒恶意软件分析的工具。

三、Cuckoo简介

Cuckoo是一个开源的自动恶意软件分析系统。
它用于自动运行和分析文件,并收集所有的分析结果,输出恶意软件在隔离操作系统内运行时的情况。
它可以检索以下类型的结果:

  • 由恶意软件生成的所有进程执行的调用跟踪。
  • 恶意软件在执行期间创建,删除和下载的文件。
  • 恶意软件进程的内存转储。
  • PCAP格式的网络流量跟踪。
  • 在执行恶意软件期间拍摄的屏幕截图。
  • 机器的完整内存转储。

由于其极为模块化的设计,Cuckoo既可以作为独立应用程序使用,也可以集成到更大的框架中。
它可以用来分析:

  • 通用Windows可执行文件
  • DLL文件 PDF文件
  • Microsoft Office文档
  • 网址和HTML文件
  • PHP脚本
  • CPL文件
  • Visual Basic(VB)脚本
  • ZIP文件
  • Java JAR
  • Python文件
  • 几乎其他任何东西

由于其模块化和强大的脚本功能,使用Cuckoo可以实现的目标没有限制。

四、Cuckoo架构

Cuckoo的每个分析 都在一个 全新的 隔离的 虚拟机或物理机 中启动。Cuckoo基础架构的主要组件是主机(管理软件)和许多客户机(用于分析的虚拟机或物理机)。
主机上的管理软件是 整个分析过程的核心组件,而客户机是实际安全执行和分析恶意软件样本的隔离环境。
下图解释了Cuckoo的主要架构:
在这里插入图片描述

五、cuckoo的安装

我安装的系统:
主机:Ubuntu16.04 LTS
虚拟机:VMware
客户机:win xp

1 准备主机

1.1 准备cuckoo需要的环境

1.1.1安装python库

Cuckoo主机组件完全用Python编写,因此需要安装适当版本的Python。此时我们只完全支持Python 2.7。需要以下来自apt存储库的软件包才能使Cuckoo正确安装和运行:

$ sudo apt-get install python python-pip python-dev libffi-dev libssl-dev
$ sudo apt-get install python-virtualenv python-setuptools
$ sudo apt-get install libjpeg-dev zlib1g-dev swig

1.1.2 安装MongoDB

为了使用基于Django的Web界面,需要使用MongoDB:

$ sudo apt-get install mongodb

1.1.3 安装PostgreSQL

为了使用PostgreSQL作为数据库(我们的推荐),还必须安装PostgreSQL:

$ sudo apt-get install postgresql libpq-dev

1.1.4 安装虚拟机

我装的是VMware。(也试过virtualBox,但是在virtualBox上装win xp的时候没装上xp,就选择了VMware)

1.1.5安装tcpdump

为了在执行期间转储恶意软件执行的网络活动,需要正确配置网络嗅探器以捕获流量并将其转储到文件中。

$ sudo apt-get install tcpdump apparmor-utils
$ sudo 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

或者以其他方式(不推荐)做:

$ sudo chmod +s /usr/sbin/tcpdump

1.1.6 安装Volatility(内存取证分析工具)

Volatility是一种可选工具,可对内存转储进行取证分析。与Cuckoo结合使用,它可以自动提供对操作系统深度修改的额外可视性,并检测逃脱Cuckoo分析器监控域的rootkit技术的存在。(本文未安装)可以从他们的官方存储库下载它。

1.1.7安装M2Crypto

目前M2Crypto只有在安装SWIG时才支持该库。在Ubuntu /类似Debian的系统上,可以按如下方式完成:

$ sudo apt-get install swig

如果SWIG系统中存在,可以M2Crypto按如下方式安装:

$ sudo pip install m2crypto==0.24.0

1.1.8安装guacd

guacd 是一项可选服务,为Cuckoo Web界面中的远程控制功能提供RDP,VNC和SSH转换层。没有它,遥控器将无法工作。0.9.9及更高版本可以使用,但我们建议安装最新版本。在Ubuntu 17.04机器上,以下命令将安装版本0.9.9-2:

$sudo apt install libguac-client-rdp0 libguac-client-vnc0 libguac-client-ssh0 guacd

如果只需要RDP支持,则可以跳过libguac-client-vnc0和libguac-client-ssh0软件包的安装 。
如果使用的是较旧的发行版,或者只是想使用最新版本(我们的推荐),则以下内容0.9.14将从源代码构建最新版本():

$ sudo apt -y install libcairo2-dev libjpeg-turbo8-dev libpng-dev libossp-uuid-dev libfreerdp-dev
$ mkdir /tmp/guac-build && cd /tmp/guac-build
$ wget https://www.apache.org/dist/guacamole/0.9.14/source/guacamole-server-0.9.14.tar.gz
$ tar xvf guacamole-server-0.9.14.tar.gz && cd guacamole-server-0.9
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值