
Uno strumento basato sul web per assistere il lavoro degli analisti delle minacce intuitivi.
Machine Learning per l'Analisi Intuitiva delle Minacce
L'obiettivo del progetto ManaTI è sviluppare tecniche di machine learning per assistere un analista di minacce intuitivo ad accelerare la scoperta di nuovi problemi di sicurezza. Il machine learning contribuirà all'analisi trovando nuove relazioni e inferenze. Il progetto includerà lo sviluppo di un'interfaccia web per consentire all'analista di interagire con i dati e l'output del machine learning.
Questo progetto è parzialmente supportato da Cisco Systems. Per maggiori informazioni sul progetto, visita la pagina del Stratosphere Lab

ManaTI è un progetto Django con database Postgres e funziona in Linux e MacOS. Raccomandiamo l'uso di un ambiente virtualenv per configurarlo. I passaggi di installazione per Linux sono:
sudo apt-get update ; sudo apt-get upgrade -y
git clone [email protected]:stratosphereips/Manati.git; cd Manati
oppure se non vuoi usare SSH, usa HTTPS
git clone https://github.com/stratosphereips/Manati.git; cd Manati
sudo apt-get install virtualenv python-pip python-dev libpq-dev build-essential libssl-dev libffi-dev
virtualenv .vmanati
source .vmanati/bin/activate
sudo apt-get install postgresql-server-dev-all postgresql-9.5 postgresql-client-9.5
cp .env.example .env
cp .env-docker.example .env-docker
OPZIONALE
Puoi modificare la password e il nome del database, se lo desideri. Ricorda di applicare le modifiche nelle impostazioni del database Postgres di seguito.
pip install -r requirements/local.txt
Potresti avere qualche problema di permessi nella cartella ~/.cache; esegui il comando seguente e il problema sarà risolto:
sudo chmod 777 ~/.cache
Se deployi su Amazon AWS EC2 e hai un errore di memoria, prova:
pip install -r requirements/local.txt --no-cache-dir
sudo /etc/init.d/postgresql start
su - postgres
psql
create user manati_db_user with password 'password';
create database manati_db;
grant all privileges on database manati_db to manati_db_user;
alter role manati_db_user createrole createdb;
CTRL-D (per uscire dalla shell del database postgres)
OPZIONALE
Per cambiare la password predefinita dell'utente postgres (puoi impostare la stessa password se vuoi), particolarmente utile se vuoi usare pgAdmin3-4 come client postgres. Ricorda di non uscire da "sudo - postgres"
psql
\password;
CTRL-D (per uscire dalla shell del database postgres)
psql -h localhost -d manati_db -U manati_db_user
(e inserisci la password)
Dopo aver inserito la password dovresti aver effettuato l'accesso a postgres.
sudo apt-get install redis-server
OPZIONALE
Se vuoi configurare Redis. Ad esempio, se sei interessato a cambiare la password, puoi:
sudo vi /etc/redis/redis.conf
e trova la riga requirepass e scrivi accanto la password che desideri.
requirepass passwodUser
Ricorda solo di aggiornare la variabile d'ambiente REDIS_PASSWORD nel file .env nella radice del progetto.
python ./manage.py makemigrations guardian
python ./manage.py migrate
python ./manage.py check_external_modules
./utility/redis_worker.sh
python manage.py createsuperuser
Non è consigliato eseguire il server come root, ma poiché solo root può aprire porte con numeri inferiori a 1024, sta a te quale utente usare. Di default apre la porta 8000, quindi puoi eseguirlo come root:
python ./manage.py runserver
Successivamente, apri il tuo browser su http://localhost:8000/manati_project/manati_ui
Se vuoi aprire il server sulla rete, puoi farlo con:
python ./manage.py runserver <indirizzo-ip>:8000
Se vuoi vedere i job in esecuzione o in coda, vai su http://localhost:8000/manati_project/django-rq/
cd path/to/project_directory
git pull origin master
pip install -r requirements/local.txt
./utility/redis_worker.sh
python ./manage.py makemigrations guardian --noinput
python ./manage.py migrate --noinput
python ./manage.py check_external_modules
python ./manage.py runserver