miércoles, 5 de octubre de 2016

Sandboxie: Caja de arena para analizar archivos sospechosos

Introducción:

Hay dos formas básicas para poner en marcha de forma segura un archivo ejecutable sospechoso; debajo de la máquina virtual, o en la denominada "caja de arena" (sandbox). Y por último, se puede utilizar de una manera elegante para adaptarse al análisis operativo del archivo, sin necesidad de utilidades especializadas y servicios en línea y no utilizar una gran cantidad de recursos.

ADVERTENCIA

El uso inadecuado de las técnicas descritas puede dañar el sistema y provocar una infección! Sea cuidadoso y cauteloso. 

Definición:

Las personas que se ocupan de la seguridad informática, están familiarizados con el concepto de "caja de arena". En resumen, "caja de arena" es un entorno de prueba en el que se ejecuta un cierto programa. Este trabajo está organizado de tal manera que todas las actividades del programa se supervisan, todos los archivos modificados y los ajustes se guardan, pero en un sistema real, no pasa nada. En general, se puede ejecutar cualquier archivo con plena confianza de que esto no afectará el rendimiento del sistema. Tales herramientas se pueden utilizar no sólo para la seguridad, sino también para el análisis de las acciones maliciosas que se realizan después de su ejecución.

Por supuesto, en internet hay un montón de servicios en línea ya preparadas que ofrecen los ficheros de análisis: Anubis , Camas , ThreatExpert , ThreatTrack . Estos servicios utilizan diferentes enfoques y tienen sus ventajas y desventajas, algunas desventajas son:
 
• Debe tener acceso a Internet. 

• Es necesario esperar en la cola en el procesamiento (la versión gratuita). 
• Como regla general, los archivos creados o modificados durante la ejecución, no están disponibles.
 • No es posible controlar los parámetros de rendimiento (la versión gratuita). 
• No se puede interferir en el proceso de puesta en marcha (por ejemplo, pulsar los botones que aparecen ventana). 
• Por regla general, es imposible proporcionar bibliotecas específicas que se requieren para funcionar (en la versión gratuita). 
• Como regla general, se analizan sólo los archivos ejecutables PE.

Sandboxie:

 Hoy vamos a tratar de hacer nuestro propio analizador basado en la "caja de arena", es decir, la utilidad de Sandboxie. Este programa está disponible como shareware en el sitio web del autor www.sandboxie.com . Para nuestro estudio la versión gratuita limitada es muy adecuada. El programa se ejecuta aplicaciones en un entorno aislado, por lo que no se producen cambios perjudiciales en el sistema real. Pero hay dos escollos:

    Sandboxie le permite monitorizar sólo el programa en el nivel de modo de usuario. Toda la actividad de código malicioso en modo de núcleo no se supervisa. Por lo tanto, el máximo que será capaz de aprender al estudiar rootkits - así es como se está introduciendo el código malicioso en el sistema. Para analizar el comportamiento en sí en el nivel de modo de núcleo, por desgracia, es imposible.
    Dependiendo de la configuración, Sandboxie puede bloquear el acceso a la red para permitir el acceso completo o sólo el acceso a ciertos programas. Está claro que si el malware de funcionamiento normal necesitan tener acceso a la Internet, debe proporcionarla. Por otro lado, si usted tiene una pizca unidad flash mentira, que se extiende, recoge todas las contraseñas en el sistema y los envía a la ftp atacante, el Sandboxie con acceso público a Internet no le protegerá contra la pérdida de información confidencial! Esto es muy importante, y debe ser consciente de ello.  


Para instalarlo es muy fácil y cuenta con un tutorial básico de iniciación.

Configuración BSA Plugin:

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 c:\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 de Sandboxie (Sandboxie.ini localizado en la carpeta de Windows o la de la instalación del programa). Para ello modificaremos el fichero de configuración sandboxie.ini con nuestro editor favorito (Control de Sandboxie -> Configurar -> Editar Configuración):

    Sección sandbox BSA[BSA]

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

       Si el sistema operativo donde se trabaja es de 64 bits es necesario especificar ambas librerías (son complementarias).

       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.

    Sección configuración de usuario [UserSettings_xxxxxxxx]

-    SbieCtrl_HideMessage =*: Desactiva los mensajes de Sandboxie.

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

[UserSettings_xxxxxxxx]

SbieCtrl_UserName=vmotos
SbieCtrl_NextUpdateCheck=875344338989
SbieCtrl_UpdateCheckNotify=y
SbieCtrl_ShowWelcome=n
SbieCtrl_AutoApplySettings=n
SbieCtrl_WindowCoords=414,112,660,448
SbieCtrl_ActiveView=40031
SbieCtrl_ReloadConfNotify=n
SbieCtrl_BoxExpandedView=1,BSA,DefaultBox
SbieCtrl_HideMessage=*

[BSA]

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

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


Iniciaremos BSA normal y iremos a «Opciones -> Modo de Análisis -> Manual» y luego «Opciones -> Opciones de programa -> Windows Shell Integración -> Agregar haga clic con la acción« Run BSA »».

Listo ahora botón derecho > run BSA a cualquier malware que queramos analizar. 

Vídeo:

Lista de webs donde descargar malware:

 
Previous Post
Next Post

post written by:

0 comentarios: