Cuckoo Sandbox grows really fast and in every release new features are added and some others are fixed or removed. There are two ways to upgrade your Cuckoo: start from scratch or migrate your “old” setup (migration is supported only starting from Cuckoo 0.6). The suggested way to upgrade Cuckoo is to start from a fresh setup because it’s easier and faster than migrate your old setup.
To start from scratch you have to perform a fresh setup as described in Installation. The following steps are suggested:
If something goes wrong you probably failed to do some steps during the fresh installation or reconfiguration. Check again the procedure explained in this book.
It’s not recommended to rewrite an old Cuckoo installation with the latest release files, as it might raise some problems because:
Data migration is shipped starting from Cuckoo 1.1 and supports migration starting from Cuckoo 0.6. If your Cuckoo release is older than 0.6 you can’t migrate your data.
The following steps are suggested as requirement to migrate your data:
Now setup Alembic (the framework used for migrations) and dateutil with:
pip install alembic
pip install python-dateutil
Enter the alembic migration directory in “utils/db_migration” with:
cd utils/db_migration
If you are using a custom database (MySQL, PostgreSQL or SQLite in a non-default location) edit “alembic.ini” and change “sqlalchemy.url” to point your database. Before starting the migration script you must set your database connection in “cuckoo.conf” if you are using a custom one.
Again, please remeber to backup before launching migration tool! A wrong configuration may corrupt your data, backup should save kittens!
Run the database migrations with:
alembic upgrade head