
Volatile Artifact Collector recopila una instantánea de datos volátiles de un sistema. Te informa sobre lo que está sucediendo en un sistema y es de particular utilidad al investigar un incidente de seguridad.
varc recopila una instantánea de datos volátiles de un sistema. Te indica lo que está sucediendo en un sistema, y es de particular utilidad cuando se investiga un incidente de seguridad.
Crea un zip que contiene varios tipos de datos para comprender lo que está sucediendo en un sistema:
Lo hemos ejecutado con éxito en:
¡Echa un vistazo a las capturas de ejemplo en la pestaña "Releases" para ver algunos datos increíbles! La grabación de pantalla a continuación muestra una recopilación de un contenedor Docker (izquierda) y la salida de ejecución dentro de una función AWS Lambda que desplegó Xmrig (derecha):

De acuerdo con el orden de volatilidad, recopilamos la memoria de los procesos antes que cualquier otra cosa. Tenga en cuenta que varc, y cualquier otra herramienta que se ejecute dentro de un sistema, afectará la memoria del sistema.
Puede encontrar binarios compilados para Windows, Linux y OSX en la pestaña Releases. Simplemente ejecute y se crea un zip con la salida. Para acceder a algunos datos, necesitará ejecutar con privilegios elevados (es decir, sudo o root en 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
Instale desde pip con:
pip3 install varc
O alternativamente, clone este repositorio e instálelo con:
python3 setup.py install
Luego llame con:
from varc import acquire_system
output_file_path = acquire_system().zip_path
varc simplifica significativamente la adquisición y el análisis de datos volátiles. Si bien se puede usar manualmente de forma ad hoc, es una excelente opción para el despliegue automático en respuesta a detecciones de seguridad. La salida de varc está diseñada para ser fácilmente consumida por otras herramientas, en formato JSON estándar en la medida de lo posible.
Un pipeline típico podría ser:
La recopilación de memoria de procesos no está soportada actualmente en OSX.
Si ejecuta varc en un sistema Linux sin la capacidad del kernel Ptrace habilitada, obtendrá archivos de memoria vacíos. Aún así obtendrá una salida detallada del sistema.
Por ejemplo, en nuestras pruebas:
Todos los datos se guardan en un formato abierto y no propietario, con la esperanza de que puedan ser procesados fácilmente por otras herramientas de la comunidad.
Nuestra herramienta gratuita Cado Community Edition analizará felizmente este zip y mostrará las tablas de datos JSON según lo previsto.
Nuestra herramienta comercial Cado Response además le permite capturar automáticamente datos estáticos y volátiles de sistemas a través de Cado Host. Usando la API, puede investigar y responder automáticamente a detecciones de herramientas de terceros como un EDR como SentinelOne o una herramienta de detección en la nube como GuardDuty.
Aquí hay un ejemplo de la salida de varc para una función Lambda que ejecuta xmrig, vista en Cado Community Edition:

Esto está licenciado bajo GPL. Por favor contáctenos si esto no funciona para su caso de uso; es posible que podamos licenciar alternativamente bajo una licencia no copyleft como la Licencia Apache. ¡Somos amigables! Dado que este software está licenciado bajo GPL y se utiliza en nuestro producto comercial, pedimos a los contribuyentes que firmen un Acuerdo de Licencia de Contribuyente (CLA) simple.
¡Nos encantaría recibir Pull Requests o Reportes de Errores!