Banner 1

Buster Sandbox Analyzer: instalación y primeros usos


Buster Sandbox Analyzer (en adelante BSA) es un analizador de comportamiento de malware de tipo sandbox, una herramienta diseñada para analizar los procesos y los cambios realizados en el sistema (ficheros, registro, puertos) para evaluar si son sospechosos.
 
Se basa en el  proyecto Sandboxie y además de evaluar malware ejecutándose en el sandbox, podemos utilizarlo para ver en detalle los cambios que realiza cualquier software al instalarse.



 
Esto incluye la posibilidad de analizar cualquier tipo de fichero (EXE, BAT, VBS, PDF, XLS, DOC, ...) si puede ejecutarse dentro de Sandboxie con la posibilidad de añadir librerías (DLL, OCX…) o instalar otro software adicional si es necesario.

 
Otra de las características a destacar de BSA es que oculta los procesos de sandboxie y otros para que los crypters y RATs que tienen activado el módulo anti-sandbox no impidan su análisis. Para ello hookea a nivel de kernel ZwQuerySystemInformation, por lo que es posible que el fichero BSA.SYS sea detectado por algunos antivirus como un rootkit (actualmente devuelven falsos positivos Rising, Sophos y TrendMicro).


Su autor, Pedro López, lleva casi 3 años desarrollándola y ha contactado con nosotros para que le echáramos un vistazo y viéramos qué aspectos consideráramos que podrían mejorarse. Es decir, funciones que no estén implementadas y que puedan servir para mejorar la calidad de los análisis, ya sea del estático o del dinámico, e identificación de comportamientos maliciosos que actualmente no estén incorporados.
 
Por esta razón y para que participéis en este análisis, vamos a compartir con vosotros dos entradas sobre esta potente herramienta: esta entrada en la que hablaremos básicamente de su instalación y primeros usos y una segunda que publicaremos más adelante con el análisis de un artefacto de malware para ver los resultados y proponer mejoras.

 
Como siempre, os agradeceríamos enormemente cualquier experiencia o comentario al respecto.


Pre-requisitos

 
-    Sandboxie
-    WinPCap (es recomendable su instalación pero, si por alguna oscura razón no quieres instalarlo, puedes copiar PACKET.DLL y WPCAP.DLL desde la carpeta PCAP al directorio donde se sitúa BSA.EXE).

 
Instalación

 
BSA es portable, así que simplemente descargaremos el rar de la última versión y lo descomprimiremos en el directorio que deseemos. Por ejemplo en d:\BSA:
 

 
Dentro del directorio podemos ver varios ficheros de configuración importantes:

 
    BSA.DAT: puntos de control de ficheros y entradas del registro
    config\APIExclude.TXT: APIs excluídas
    config\MA-Calc.ini: Umbrales de cálculo de riesgo
    config\MA-RATINGS.INI: Puntuación de seguridad para cada evento
    config\RegistryExclude.TXT: Entradas de registro excluídas
    config\WindowMessages.TXT: Mensajes de Windows excluídos
 

A continuación es recomendable crear un sandbox específico y dedicado para BSA (Control de Sandboxie -> Sandbox -> Crear Nueva Sandbox):

 
Ahora será necesario que añadamos las siguientes opciones en la configuración del nuevo sandbox creado, para ello modificaremos el fichero de configuración sandboxie.ini con nuestro editor favorito (Control de Sandboxie -> Configurar -> Editar Configuración):

 
-    InjectDll= D:\bsa\LOG_API\64\LOG_API64_VERBOSE.DLL: se inyecta una DLL en cada proceso del sandbox (en mi caso trabajo con 64 bits) para hookear funciones que procesan y envían “Mensajes de Windows” a la aplicación BSA (que se ejecuta fuera del sandbox).

       Las librerías ‘verbose’ registrarán las operaciones de ficheros y el registro. Aumentará el detalle pero disminuirá la velocidad de ejecución de BSA.

-    OpenWinClass=TFormBSA: especifica el nombre de la clase de BSA (fuera del sandbox) que puede ser accedida por el proceso ejecutándose en el sandbox.

-    NotifyDirectDiskAccess=y: con esta opción Sandboxie notificará cuando un programa está intentando obtener acceso fuera del sandbox (mensaje SBIE1313).

-    ProcessLimit1=20
     ProcessLimit2=30 (opcional): limita el número de procesos que Sandboxie permite en un sandbox a la vez. ProcessLimit1 indica el número de procesos a partir del cual el siguiente se ejecutará a partir de una pausa de 10 segundos. ProcessLimit2 indica el número a partir del cual el siguiente será terminado. Es decir, con la configuración propuesta sólo se permitirán 30 procesos concurrentes y a partir del proceso número 20 tardarán en ejecutarse 10 segundos.

-    SbieCtrl_HideMessage =*: Desactiva los mensajes de Sandboxie.

Al final, el fichero de configuración quedará de la siguiente manera:

[BSA]

ConfigLevel=7
AutoRecover=y
Template=AutoRecoverIgnore
Template=Firefox_Phishing_DirectAccess
Template=LingerPrograms
Template=BlockPorts
RecoverFolder=%Desktop%
RecoverFolder=%Favorites%
RecoverFolder=%Personal%
RecoverFolder=%{374DE290-123F-4665-9164-39C4925F467B}%
BorderColor=#00FFFF,ttl
DropAdminRights=y
Enabled=y
BoxNameTitle=y
FileRootPath=D:\Sandbox\BSA
InjectDll=D:\bsa\LOG_API\64\LOG_API64_VERBOSE.DLL
OpenWinClass=TFormBSA
NotifyDirectDiskAccess=y
ProcessLimit1=20
ProcessLimit2=30
SbieCtrl_HideMessage=*


Una vez modificado, procederemos a recargar la configuración de Sandboxie (Control de Sandboxie -> Configurar-> Recargar Configuración):



Y ya podemos ejecutar el programa principal (BSA.exe) indicando la ruta del Sandbox creado para el BSA:

 
Uso

 
Podemos comenzar un análisis pulsando el botón correspondiente de la ventana anterior, y os recomendamos también integrarlo con el shell de Windows para que aparezca la opción de ‘Analizar con BSA’  al pulsar el botón derecho del ratón:


 
También es posible ejecutar BSA de forma automática desde la línea de comandos, indicando el tiempo (-s) y el directorio (-f) o URL (-url) a procesar. Por ejemplo:

BSA.EXE -s 30 -f C:\TEST
BSA.EXE -s 30 – url http://www.hackplayers.com
BSA.EXE -s 30 -url C:\TEST\URLS.TXT (fichero conteniendo una lista de URLs)

¡Así que ya tenemos todo preparado para empezar a analizar malware!
No olvidéis mandarnos vuestro feedback si os animáis a probarlo o si ya lo habéis hecho. Eso sí, recordar que Sandboxie, el entorno que utiliza BSA, está diseñado para evitar específicamente cambios en el disco, es decir, con la instalación por defecto NO evitaremos que por ejemplo un determinado tipo de malware envíe información a Internet y, aunque esto es muy difícil, tampoco estaremos a salvo si llegamos a probar un malware que es capaz de evadir la seguridad del sandbox.
En cualquier caso, recomendamos probar BSA en un equipo destinado específicamente para ello (sin credenciales personales de ningún tipo).


Fuente:
http://www.hackplayers.com/2012/08/buster-sandbox-analyzer-install-usage.html

No hay comentarios:

Powered by Bad Robot
Helped by Blackubay