Belkasoft RamCapturer

Belkasoft RAMCapturer es, como su nombre indica, una herramienta de la empresa Belkasoft que realiza una captura de la información contenida en memoria. Funciona en plataformas MS Windows. Yo lo he probado en XP (sic), Win7 y Win8 pro con excelentes resultados. En todos los casos ha funcionado bien. Es un software gratuito de Belkasoft (no así la herramienta para analizar la información capturada) y, por supuesto, no requiere instalación.

Notas previas antes de usar RAMCapturer: para qué y para qué no 
¿para qué querría una persona capturar el contenido de la memoria de un ordenador? Muy buena pregunta. La respuesta críptica inmediata sería "hombre, para espiar lo que está haciendo el PC" y la réplica "ya, pero el PC hará lo que ordene la persona que lo está utilizando. Si lo estás usando tú, ya sabes lo que está haciendo (puede que no) y si no lo estás usando tú, estás espiando a su legítimo usuario (puede que no tan legítimo)". Vamos a comentar algunos ejemplos.

Cuándo usar RAMCapturer (por ejemplo):
Algunos casos de uso "legítimo":
  • Perteneces a una fuerza de seguridad legítima (policía, guardia civil, ertzaina, mossos, etc.) entras en un domicilio con una orden de registro y encuentras un ordenador en funcionamiento. La buena práctica forense recomienda "tirar del cable" (desconectar corriente, quitar batería, quitar LAN, etc.) y ya veremos cómo recuperamos la información más tarde. Pero si en ese momento los "malos" están usando el PC, se quiere obtener toda la información que estén manejando y hay riesgo de que si se apaga se pierda información valiosa (por ejemplo, están chateando). En este caso se podría intentar un volcado de la memoria. 
  • Eres usuario del ordenador y quieres analizar lo que está haciendo. Esto es típico cuando detectas que el ordenador se conecta a donde no debería, usa mucha CPU, etc. Lo normal aquí sería quitar el virus, recuperar una copia de seguridad de tu ordenador y actualizar el antivirus. Pero bueno, si te dedicas a la seguridad igual tienes curiosidad por ver lo que hace el troyano antes de eliminarlo.
  • Eres el propietario legítimo del ordenador y quieres ver lo que está haciendo su usuario (o usuarios). Esto pasa cuando una empresa sospecha de lo que hace su empleado y le quieren pillar con las manos en la masa. Otro caso (que viví en primera persona): un servidor Windows se usaba como consola para administrar un sistema complejo (unos 50 servidores a los que se llegaba desde el servidor Windows). Todos los operadores, ingenieros, técnicos de sistemas, etc. se conectaban al PC con una VPN desde un lugar muy remoto y desde allí lanzaban sesiones X/WIN, Telnet, SSH, FTP, etc. Pues bien, al cliente no le gustó esto y nos pidió una auditoria de todo lo que estaba ejecutando el PC, qué conexiones tenía abiertas, quién estaba loggeado, etc. etc.
El volcado de memoria se debe completar con el pagefile.sys y el hiberfil.sys. Normalmente los peritos informáticos preferimos tirar del cable antes que usar la hibernación, aunque aquí también entran en consideración otros factores (legales, jurídicos, procedimentales, etc.). En USA, algunas buenas prácticas recomiendan hibernar el sistema antes de apagarlo bruscamente. Es lo que tienen las buenas prácticas, que no son universales.

Cuándo NO usar RAM capturer:
Algunas contraindicaciones aunque, como siempre, el sentido común ya dice lo que no se debe hacer:
  • Para espiar a un compañero que se ha dejado el PC encendido y sin contraseña.
  • Para espiar lo que ha hecho el usuario anterior cuando coges un ordenador compartido (por ejemplo, en una biblioteca pública).
  • Para obtener una prueba que se va a presentar a juicio. Esto depende de la legislación de cada sitio pero, en general, una captura de memoria como prueba funciona bastante mal:
    • Para capturar la memoria hay que ejecutar un software en el ordenador lo que supone que el perito tiene que manipular el sistema antes de obtener la prueba. 
    • La captura no es reproducible. Dos capturas consecutivas (incluso separadas por un par de segundos) generan imágenes de memoria diferentes lo que impide contrastar el resultado.
    • La captura incluye todos los datos en memoria por lo que la parte afectada podría alegar que el perito no ha restringido su búsqueda a la información relevante, que ha obtenido datos de carácter personal sin autorización previa y, al final, podría intentar anular la prueba.

Ejemplo de uso de RAMCapturer 
El funcionamiento es realmente sencillo. El programa tiene versión de 32 y de 64 bits. Cada versión tiene un ejecutable y un driver. No necesita instalación, sólo lanzar el exe y seguir las instrucciones.


Se elige el directorio de salida (mejor si es una unidad rápida). Aquí veis que lo he probado en un ordenador con sólo 4GB de RAM. Lógicamente el tamaño del fichero de salida depende del tamaño de la RAM. En este ordenador en concreto, usando el disco duro como salida la captura duró dos (2) minutos. 30 segundos cada Giga.


Cuando termina, nos deja un fichero con la extensión MEM y como nombre la fecha del día (y un contador a partir del segundo fichero del mismo día). El fichero no está comprimido, ni cifrado, ni nada de nada, es el contenido de la memoria tal cual.



Cómo usar la captura realizada
Hay varias herramientas que se pueden usar para analizar el fichero generado, mis preferidas son las siguientes (en realidad, las únicas que he probado con RAMCapturer):
  • Belkasoft Evidence Center. De pago pero relativamente barata. Es el mismo desarrollador. Es una herramienta muy potente (tipo ENCASE) de la que hablaré en otro momento.
  • HxD. O tu editor hexadecimal preferido. En este caso está bien conocer algo de ensamblador y del API de Windows.
  • Strings. Hay versión en Windows de Mark Russinovich.
En el ejemplo mostrado, usando el comando "strings" he sido capaz de obtener:
  • Sesiones "estándar": tanto del navegador IE como de Chrome como de Skype, incluso de Exchange/Outlook. Algunos programas protegen la memoria que usan pero en mis pruebas RAMCapturer obtuvo esta información sin problemas.
  • Información de sesiones de incógnito de Chrome. Tenía abierta una ventana en modo incógnito con una sesión de Hotmail y en la captura estaba la sesión, usuario y password. La navegación de incógnito tampoco se resiste al volcado de memoria (lógicamente).
  • Información de una sesión de Facebook que tenía en un navegador Firefox que tenía en ejecución en una máquina virtual (Virtual Box) que estaba ejecutando una distribución Linux: BugTraq. Como en euskera, esta frase se entiende mejor si se lee del final al principio.
Por supuesto, para este ejemplo no me recorrí toda la información obtenida (la salida de "strings" ocupa 1,5GB). Para simplificar, preparé el escenario, saqué las cadenas a un archivo y busqué directamente las credenciales que ya conocía. Hacer un análisis "a lo bruto" sin saber lo que se busca es prácticamente inviable sin un software de apoyo.
Lo dicho, herramienta muy interesante aunque, probablemente, de poca utilidad en la vida real.

</Belkasoft RamCapturer> 



No hay comentarios:

Publicar un comentario