
Скрипт автоматической установки Cuckoo Sandbox
Cuckoo Sandbox <http://www.cuckoosandbox.org/>_ — скрипт автоматической установки
Cuckoo Sandbox — это система анализа вредоносных программ.
Это означает, что вы можете скормить ей любой подозрительный файл и получить отчёт с подробностями о поведении файла в изолированной среде.
Мы создали это в Buguroo Offensive Security <http://www.buguroo.com>_ изначально, чтобы сделать мучительную
установку cuckoo более быстрой, лёгкой и безболезненной
Большая часть этого скрипта не зависит от дистрибутива (хотя, конечно, запускать его нужно на GNU/Linux), но установка пакетов на данный момент поддерживает только производные Debian.
Кроме того, поскольку мы используем проприетарную версию VirtualBox (в большинстве случаев OSE
редакция не удовлетворяет нашим потребностям), этот скрипт требует, чтобы для вашего дистрибутива существовал
репозиторий Debian в Virtualbox Downloads <http://downloads.virtualbox.org>_.
Принудительное указание дистрибутива в конфигурационном файле должно заставить его работать в
неподдерживаемых.
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
Если вы доверяете нам, настройке вашей сети и достаточно большому количеству прочих переменных (что совершенно не рекомендуется) и вы максимально ленивы, вы можете выполнить установку от обычного пользователя, если у вас настроен sudo:
::
wget -O - https://raw.githubusercontent.com/buguroo/cuckooautoinstall/master/cuckooautoinstall.bash | bash
Скрипт принимает конфигурационный файл в виде простого bash-скрипта с такими параметрами, как:
::
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
Вы можете переопределить любую из этих переменных в конфигурационном файле.
Он принимает параметры
::
┌─────────────────────────────────────────────────────────┐
│ 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)
Для большинства конфигураций всегда рекомендуется использовать --upgrade.
::
passwd cuckoo
http://docs.cuckoosandbox.org/en/latest/installation/guest/
или импортируйте виртуальные машины::
VBoxManage import virtual_machine.ova
::
vboxmanage modifyvm “virtual_machine" --hostonlyadapter1 vboxnet0
Настройте cuckoo (http://docs.cuckoosandbox.org/en/latest/installation/host/configuration/ )
Запустите 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
Разрешает запуск tcpdump пользователю без прав root
::
sudo apt-get -y install libcap2-bin
sudo setcap cap_net_raw,cap_net_admin=eip /usr/sbin/tcpdump
Исправляет ошибку "TEMPLATE_DIRS setting must be a tuple" при запуске python manage.py с DJANGO версии >= 1.6. Заменяя в web/web/settings.py
::
TEMPLATE_DIRS = (
"templates"
)
становится
::
TEMPLATE_DIRS = (
("templates"),
)
Для этого мы рекомендуем использовать supervisor.
Установите supervisor
::
sudo apt-get install supervisor
Отредактируйте /etc/supervisor/conf.d/cuckoo.conf, например:
::
[program:cuckoo]
command=python cuckoo.py
directory=/home/cuckoo
User=cuckoo
[program:cuckoo-api]
command=python api.py
directory=/home/cuckoo/utils
user=cuckoo
Перезагрузите supervisor
::
sudo supervisorctl reload
Как вы, вероятно, уже заметили, правила iptables не сохраняются после перезагрузки. Если вы хотите сделать их постоянными, мы рекомендуем iptables-save и iptables-restore
::
iptables-save > your_custom_iptables_rules
iptables-restore < your_custom_iptables_rules
Возможно, вам будет полезно прочитать:
Remote <./doc/Remote.rst>_ — Включение удалённого администрирования ВМ и VBoxOVA <./doc/OVA.rst>_ — Работа с образами OVAAntivm <./doc/Antivm.rst>_ Как бороться с вредоносными программами, использующими методы обнаружения ВМVMcloak <./doc/Vmcloak.rst>_ VMCloak — управление Windows-виртуальными машинами CuckooЭтот проект распространяется под лицензией GPL3+, как вы можете видеть в файле "LICENSE". Все pull request'ы приветствуются, но имейте в виду:
Мы, скорее всего, ответим на PR в течение 7–14 дней, пожалуйста, наберитесь терпения.