
Volatile Artifact Collector raccoglie un'istantanea dei dati volatili da un sistema. Ti dice cosa sta succedendo su un sistema, ed è particolarmente utile quando si indaga su un incidente di sicurezza.
varc raccoglie un'istantanea dei dati volatili da un sistema. Ti dice cosa sta succedendo su un sistema ed è particolarmente utile quando si indaga su un incidente di sicurezza.
Crea uno zip che contiene diversi tipi di dati per capire cosa sta succedendo su un sistema:
Lo abbiamo eseguito con successo su:
Dai un'occhiata alle catture di esempio nella scheda "Releases" per vedere alcuni dati pazzeschi! La registrazione dello schermo qui sotto mostra una raccolta da un contenitore Docker (sinistra) e l'output dall'esecuzione all'interno di una funzione AWS Lambda che ha distribuito Xmrig (destra):

In linea con l'ordine di volatilità, raccogliamo la memoria dei processi prima di qualsiasi altra cosa. Nota che varc, e qualsiasi altro strumento che viene eseguito all'interno di un sistema, influenzerà la memoria del sistema.
Puoi trovare binari compilati per Windows, Linux e OSX nella scheda Releases. Basta eseguire e viene creato uno zip con l'output. Per accedere ad alcuni dati, dovrai eseguire con privilegi elevati (es. sudo o root su Linux).
usage: varc [-h] [--skip-memory] [--skip-open] [--dump-extract] ...
optional arguments:
-h, --help show this help message and exit
--skip-memory Skip collecting process memory, which can be slow
--skip-open Skip collecting open files, which can be slow
--dump-extract Extract process memory dumps, which can be slow
Installa da pip con:
pip3 install varc
In alternativa, clona questo repository e poi installa con:
python3 setup.py install
Poi chiama con:
from varc import acquire_system
output_file_path = acquire_system().zip_path
varc semplifica notevolmente l'acquisizione e l'analisi dei dati volatili. Sebbene possa essere utilizzato manualmente su base ad-hoc, è un'ottima scelta per il dispiegamento automatico in risposta a rilevamenti di sicurezza. L'output di varc è progettato per essere facilmente consumato da altri strumenti, in formato JSON standard il più possibile.
Una tipica pipeline potrebbe essere:
La raccolta della memoria dei processi non è attualmente supportata su OSX.
Se esegui varc su un sistema Linux senza la capacità del kernel Ptrace abilitata, otterrai file di memoria vuoti. Riceverai comunque un output dettagliato del sistema.
Ad esempio, nei nostri test:
Tutti i dati sono salvati in un formato aperto e non proprietario nella speranza che possano essere facilmente elaborati da altri strumenti della community.
Il nostro strumento gratuito Cado Community Edition analizzerà volentieri questo zip e visualizzerà le tabelle di dati JSON come previsto.
Il nostro strumento commerciale Cado Response ti consente inoltre di catturare automaticamente sia i dati statici che volatili dai sistemi tramite Cado Host. Utilizzando l'API, puoi indagare e rispondere automaticamente ai rilevamenti di strumenti di terze parti come un EDR come SentinelOne o uno strumento di rilevamento cloud come GuardDuty.
Ecco un esempio di output di varc per una funzione Lambda che esegue xmrig, visualizzato in Cado Community Edition:

Questo è concesso in licenza sotto GPL. Contattaci se questo non funziona per il tuo caso d'uso - potremmo essere in grado di concedere in licenza alternativamente sotto una licenza non copyleft come la Apache License. Siamo amichevoli! Poiché questo software è concesso in licenza sotto GPL e utilizzato nel nostro prodotto commerciale, chiediamo a tutti i contributori di firmare un semplice Contributor License Agreement (CLA).
Apprezziamo qualsiasi Pull Request o Segnalazione di Bug!