
Script de instalación automática para Cuckoo Sandbox
Cuckoo Sandbox <http://www.cuckoosandbox.org/>_. script de autoinstalación
Cuckoo Sandbox es un sistema de análisis de malware.
Significa que puedes lanzarle cualquier archivo sospechoso y obtener un informe con detalles sobre el comportamiento del archivo dentro de un entorno aislado.
Creamos esto en Buguroo Offensive Security <http://www.buguroo.com>_ inicialmente para hacer que la dolorosa instalación de cuckoo fuera más rápida, fácil e indolora.
La mayor parte de este script no depende de la distribución (aunque, por supuesto, tienes que ejecutarlo en GNU/Linux), pero la instalación de paquetes, por ahora, solo admite derivados de Debian.
Además, dado que usamos la versión propietaria de VirtualBox (la mayoría de las veces la edición OSE no satisface nuestras necesidades), este script requiere que tengan un repositorio de Debian en Virtualbox Downloads <http://downloads.virtualbox.org>_ para tu distribución. Forzar la distribución en el archivo de configuración debería hacer que funcione en las no compatibles.
David Reguera García - Dreg <http://github.com/David-Reguera-Garcia-Dreg>_ - [email protected] <mailto:[email protected]>_ - @fr33project <https://twitter.com/fr33project>_
David Francos Cuartero - XayOn <http://github.com/Xayon>_ - [email protected] <mailto:[email protected]>_ - @davidfrancos <https://twitter.com/davidfrancos>_
.. image:: /../screenshots/cuckooautoinstall.png?raw=true
Si confías en nosotros, en tu configuración de red y en suficientes variables más (lo cual no es nada recomendable) y eres de lo más perezoso, puedes ejecutarlo como un usuario normal si tienes sudo configurado:
::
wget -O - https://raw.githubusercontent.com/buguroo/cuckooautoinstall/master/cuckooautoinstall.bash | bash
El script acepta un archivo de configuración con la forma de un simple script bash con opciones como:
::
SUDO="sudo"
TMPDIR=$(mktemp -d)
RELEASE=$(lsb_release -cs)
CUCKOO_USER="cuckoo"
CUSTOM_PKGS=""
ORIG_DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )
VOLATILITY_URL="http://downloads.volatilityfoundation.org/releases/2.4/volatility-2.4.tar.gz"
VIRTUALBOX_REP="deb http://download.virtualbox.org/virtualbox/debian $RELEASE contrib"
CUCKOO_REPO='https://github.com/cuckoobox/cuckoo'
YARA_REPO="https://github.com/plusvic/yara"
JANSSON_REPO="https://github.com/akheron/jansson"
LOG=$(mktemp)
UPGRADE=false
Puedes sobrescribir cualquiera de estas variables en el archivo de configuración.
Acepta parámetros
::
┌─────────────────────────────────────────────────────────┐
│ CuckooAutoInstall 0.2 │
│ David Reguera García - Dreg <[email protected]> │
│ David Francos Cuartero - XayOn <[email protected]> │
│ Buguroo Offensive Security - 2015 │
└─────────────────────────────────────────────────────────┘
Usage: cuckooautoinstall.bash [--verbose|-v] [--help|-h] [--upgrade|-u]
--verbose Print output to stdout instead of temp logfile
--help This help menu
--upgrade Use newer volatility, yara and jansson versions (install from source)
Para la mayoría de las configuraciones, --upgrade siempre es recomendable.
::
passwd cuckoo
http://docs.cuckoosandbox.org/en/latest/installation/guest/
o importa máquinas virtuales::
VBoxManage import virtual_machine.ova
::
vboxmanage modifyvm “virtual_machine" --hostonlyadapter1 vboxnet0
Configura cuckoo (http://docs.cuckoosandbox.org/en/latest/installation/host/configuration/ )
Ejecuta cuckoo
::
cd ~cuckoo/cuckoo python cuckoo.py
.. image:: /../screenshots/github%20cuckoo%20working.png?raw=true
::
cd ~cuckoo/cuckoo/web python manage.py runserver 0.0.0.0:6969
.. image:: /../screenshots/github%20django.png?raw=true
::
sudo iptables -A FORWARD -o eth0 -i vboxnet0 -s 192.168.56.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
sudo sysctl -w net.ipv4.ip_forward=1
Habilita la ejecución de tcpdump desde un usuario no root
::
sudo apt-get -y install libcap2-bin
sudo setcap cap_net_raw,cap_net_admin=eip /usr/sbin/tcpdump
Corrige el error "TEMPLATE_DIRS setting must be a tuple" al ejecutar python manage.py desde la versión de DJANGO >= 1.6. Reemplazando en web/web/settings.py
::
TEMPLATE_DIRS = (
"templates"
)
se convierte en
::
TEMPLATE_DIRS = (
("templates"),
)
Para ello, recomendamos el uso de supervisor.
Instala supervisor
::
sudo apt-get install supervisor
Edita /etc/supervisor/conf.d/cuckoo.conf, así
::
[program:cuckoo]
command=python cuckoo.py
directory=/home/cuckoo
User=cuckoo
[program:cuckoo-api]
command=python api.py
directory=/home/cuckoo/utils
user=cuckoo
Recarga supervisor
::
sudo supervisorctl reload
Como probablemente ya habrás notado, las reglas de iptables no permanecen después de un reinicio. Si quieres hacerlas persistentes, te recomendamos iptables-save e iptables-restore
::
iptables-save > your_custom_iptables_rules
iptables-restore < your_custom_iptables_rules
Puede que quieras leer:
Remote <./doc/Remote.rst>_ - Habilitación de la administración remota de VMs y VBoxOVA <./doc/OVA.rst>_ - Trabajar con imágenes OVAAntivm <./doc/Antivm.rst>_ Cómo tratar con malware que tiene técnicas de detección de VMVMcloak <./doc/Vmcloak.rst>_ VMCloak - Gestión de máquinas virtuales Windows de CuckooEste proyecto está licenciado como GPL3+, como puedes ver en el archivo "LICENSE". Todas las pull requests son bienvenidas, teniendo en cuenta que:
Probablemente respondamos a las PRs en un plazo de 7-14 días, por favor ten paciencia.