lunes, 5 de enero de 2009

Servicio Volume ShadowCopy en Windows Vista

NOTA: Este articulo esta basado enteramente en "VISTA Shadow Volume Forensics", una de las entradas publicadas en el blog de analisis forense de SANS.

Se trata de un servicio, habilitado por defecto con la instalación predeterminada de Windows Vista, y que constituye la base para su sistema de disaster recovery. Dicho sistema se basa en la creación, ya sea de forma manual o automática, de copias de seguridad y puntos de restauración del sistema, sin que para ello sea necesario obtener acceso exclusivo a los ficheros que se desean respaldar.

Esta funcionalidad se introdujo por primera vez con Windows XP, pero el auténtico predecesor del sistema utilizado por Vista proviene de Windows 2003 Server. No obstante en este artículo únicamente analizaremos las características relativas a Windows Vista.

Nótese que un requisito imprescindible para poder ejecutar el servicio es que el volumen en el cual se haya configurado esté formateado con el sistema de ficheros NTFS.

A pesar de que se incluye y habilita de forma predeterminada en todas las ediciones de Windows Vista solo las ediciones Business, Enterprise y Ultimate facilitan notablemente el aprovechamiento de sus características. En todas estas ediciones, al obtener el diálogo de propiedades de un fichero, carpeta o incluso un volumen completo advertiremos la existencia de una pestaña de nombre "Versiones anteriores", donde aparecerá una lista con los diferentes estados que existen para el objeto seleccionado, diferenciados por fechas y lugar de ubicación. Para las ediciones Home sera necesario utilizar una aplicación de terceros como, por ejemplo, ShadowExplorer, la cual nos mostrará una lista con las instantáneas disponibles y, tras seleccionar cualquiera de ellas, nos permitirá navegar por su contenido hasta dar con el fichero/carpeta a restaurar.

En Windows Vista el servicio Volume ShadowCopy realiza, al menos, una instantánea diaria del sistema pudiendo incrementarse su número si se realiza la instalación o desinstalación de un programa, driver o actualización automática. Puede realizarse una copia manual mediante la herramienta "Centro de copias de seguridad" o creando un punto de restauración a través de la pestaña "Protección del sistema" del cuadro de diálogo "Propiedades del sistema". Desde esta misma ubicación puede habilitarse/deshabilitarse la creación de instantáneas automáticas para cualquiera de las unidades disponibles.

Aplicación del sistema de instantáneas al análisis forense

Supóngase por un momento la necesidad de analizar un equipo Windows Vista comprometido. Sin duda la posibilidad de comprobar la estructura y diferencias del sistema a lo largo de diferentes estados anteriores a la fecha del compromiso supondrá una gran ventaja para el analista forense.

En la actualidad, para analizar las diferentes instantáneas de volumen será necesario disponer del dispositivo original donde éstas se encuentran almacenadas.

Si tenemos acceso al equipo podemos obtener el listado con las diferentes instantaneas de volumen existentes en el sistema utilizando el comando vssadmin. Suponiendo que deseamos obtener el listado de instantáneas disponibles de la unidad C: ejecutaremos el siguiente comando, teniendo en cuenta que deberemos tener privilegios de administrador:

C:\>vssadmin list shadows /for=C:

vssadmin 1.1 - Herramienta administrativa de línea de comando del
Servicio de instantáneas de volumen. (C) Copyright 2001-2005 Microsoft Corp.
 
Contenido de id. de conjunto de instantáneas: {3b3e7d59-9f8a-427c-8192-73821e7334f6}
Contenía 1 instantáneas en el momento de su creación: 17/12/2008 20:27:21
Id. de instantáneas: {5733ebae-1e6e-4bff-b35b-a314f2869a61}
Volumen original: (C:)\\?\Volume{34b48a9e-73df-11dc-8f73-806e6f6e6963}\
Volumen de instantáneas: \\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy1
Equipo de origen: osiris
Equipo de servicio: osiris
Proveedor: 'Microsoft Software Shadow Copy provider 1.0'
Tipo: ClientAccessibleWriters
Atributos: Persistente, Accesible para el cliente, Sin liberación
automática, Diferencial, Recuperado automáticamente
...

El número de instantáneas disponibles dependerá del espacio en disco reservado para tal fín siendo, de forma predeterminada, de un 15% del total de la unidad.

Una vez obtenido el nombre de la instantánea que deseamos analizar, sin duda basándonos para ello en la fecha, y desde el sistema objeto de análisis, podemos utilizar el comando mklink de Windows Vista para acceder a los datos contenidos en ella como si se tratase de un directorio más. Desde una consola de comandos con privilegios de Administrador ejecutaremos el siguiente comando:
C:\>mklink /d C:\instantanea01 \\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy1\

vínculo simbólico creado para C:\instantanea01 <<===>> \\?\GLOBALROOT\Device\Har
ddiskVolumeShadowCopy1\

Esta característica resultará de utilidad para recuperar ficheros que pudieran haber sido eliminados por un posible intruso.

También es posible hacer una imagen de cualquiera de las instantaneas disponibles en el sistema de forma que pueda ser analizada a posteriori, incluso arrancando la version de Windows contenida en ella mediante una herramienta como LiveView. Para ello podemos utilizar el binario dd que se incluye con las "Forensic Acquisition Utilities" de George M. Garner Jr. Suponiendo que deseemos hacer una imagen de la instantanea 1 en un disco externo USB cuya letra de unidad asignada sea F:
C:\>dd.exe if=\\.\HarddiskVolumeShadowCopy1 of=F:\instantanea1.dd –localwrt

Bibliografia

Información sobre shadow copy disponible en la wikipedia (english version)

How Volume Shadow Copy Service Works

Versiones anteriores de archivos: preguntas más frecuentes

Potential Impacts of Windows Vista on Digital Investigations

Y esto ha sido todo, en breve más, y mejor, espero.