Skip to content

Ubicación de ActivitiesCache.db y adquisición forense

Dónde está ActivitiesCache.db según el tipo de cuenta y cómo adquirirlo con su -wal desde imágenes de disco, KAPE, Velociraptor o un sistema en ejecución.

Publicado el 7 min de lectura

Resumen. La base está en C:\Users\<user>\AppData\Local\ConnectedDevicesPlatform\<account-folder>\ActivitiesCache.db. Adquiera la carpeta ConnectedDevicesPlatform completa de cada perfil, incluido ActivitiesCache.db-wal. En un sistema en ejecución, use un recolector con acceso raw al disco (target WindowsTimeline de KAPE, Velociraptor) o una instantánea de volumen, y tome la base y el WAL a la vez. Calcule hashes antes de analizar.

Obtener el archivo es fácil en un disco apagado y sorprendentemente fácil de hacer mal en uno encendido. Los dos errores clásicos son copiar la base sin su WAL y copiar los dos archivos en momentos distintos. En ambos casos se obtiene una cronología que parece correcta y que en silencio está incompleta.

La ruta

ComponenteValor
Base%LOCALAPPDATA%\ConnectedDevicesPlatform\ (C:\Users\<user>\AppData\Local\ConnectedDevicesPlatform\)
Carpeta de cuentaL.<username> para una cuenta local (artifacts-kb); los profesionales describen un identificador de estilo hexadecimal para cuentas Microsoft y una carpeta con prefijo AAD. para cuentas Entra ID (Azure AD) (README de ActivitiesCacheParser)
ArchivosActivitiesCache.db, ActivitiesCache.db-wal, ActivitiesCache.db-shm
CercaCDPGlobalSettings.cdp y archivos .cdp por cuenta (ajustes JSON de la plataforma)

Dos detalles importan en la práctica.

Un usuario, varias carpetas de cuenta. kacos2000 observó que, cuando un usuario pasa de una cuenta local a una cuenta Microsoft, la carpeta L.<username> se elimina y se crea una nueva para la cuenta Microsoft, trasladando las entradas anteriores; al volver a una cuenta local, la base de la cuenta Microsoft permanece (kacos2000). No se detenga en la primera carpeta que encuentre.

El nombre de la carpeta no es el usuario. En las cuentas Microsoft y Entra ID, el nombre de la carpeta no contiene el nombre de usuario. Atribuya la base a partir de la ruta del perfil (Users\<name>\) y conserve esa estructura en la adquisición. La entrada del glosario ConnectedDevicesPlatform resume la nomenclatura.

Qué archivos tomar

Archivo¿Tomarlo?Por qué
ActivitiesCache.dbSíLa base tras el checkpoint
ActivitiesCache.db-walSíCambios confirmados aún no volcados, a menudo la actividad más reciente (por qué importa el WAL)
ActivitiesCache.db-shmOpcionalEl índice WAL: una estructura de búsqueda reconstruible, sin evidencia propia
Archivos de ajustes *.cdpSí, no cuesta nadaContexto sobre la cuenta y la configuración de la plataforma

SQLite indica que el archivo WAL forma parte del estado persistente de la base y que separarlos puede provocar la pérdida de transacciones confirmadas (sqlite.org/wal.html). Trate el par como una única evidencia.

Desde una imagen de disco

La adquisición en frío es el caso limpio: nada mantiene los archivos abiertos y no puede producirse ningún checkpoint mientras trabaja.

  1. Monte la imagen en solo lectura.
  2. Exporte Users\*\AppData\Local\ConnectedDevicesPlatform\ de forma recursiva, conservando las rutas.
  3. Calcule el hash de cada archivo exportado.
  4. Compruebe si cada carpeta de cuenta tiene un -wal. Un WAL vacío o ausente en una imagen suele indicar que la última conexión se cerró limpiamente y volcó los datos (sqlite.org); anótelo, no es un error.

Revise también las instantáneas de volumen si la imagen las tiene. Una instantánea más antigua puede contener una base anterior a que el usuario borrara el historial o a que caducaran las entradas. El parser de imágenes de disco y el parser de la Papelera de reciclaje cubren la evidencia vecina que querrá extraer de la misma imagen.

Desde un sistema en ejecución

En un equipo encendido, la sesión del usuario mantiene la base abierta. Una copia normal de archivos suele fallar por una infracción de uso compartido o, peor aún, funciona con la base y no con el WAL.

KAPE. El target WindowsTimeline de KapeFiles recoge ActivitiesCache.db* de forma recursiva bajo la carpeta ConnectedDevicesPlatform de cada usuario, lo que trae la base, el WAL y el SHM de una vez (WindowsTimeline.tkape). KAPE lee archivos bloqueados mediante acceso raw al disco.

Velociraptor. El artefacto Windows.Forensics.Timeline apunta por defecto a C:\Users\*\AppData\Local\ConnectedDevicesPlatform\*\ActivitiesCache.db; su documentación lo marca como obsoleto en favor de Generic.Forensic.SQLiteHunter (documentación de Velociraptor). Para recoger archivos, use un patrón que termine en ActivitiesCache.db* para que el WAL venga incluido.

Instantánea de volumen. Crear una instantánea y copiar desde ella da un par coherente y fijado en el tiempo. Modifica el sistema, así que regístrelo en sus notas.

Use lo que use, la regla es la misma: la base y el WAL deben proceder del mismo instante. Un WAL de otro momento puede contener frames que no encajan con las páginas de la base. El Windows Timeline Parser comprueba que el resultado reproducido siga siendo un Timeline plausible e ignora un WAL que no coincide, con una advertencia, pero no puede recuperar lo que una mala copia nunca capturó.

Señales de una mala copia

SíntomaCausa probable
El archivo empieza con ceros en lugar de SQLite format 3La herramienta de copia no pudo leer el archivo bloqueado y escribió un búfer vacío
Hay WAL, pero el parser informa de un salt o checksum que no coincide en el primer frameWAL tomado en otro momento o de otra base
La base se analiza, pero la actividad más reciente tiene horas o días en un equipo activoFalta el WAL
Solo hay un -wal y un -shm, sin basePatrón de adquisición demasiado estrecho

La herramienta informa de cada uno de estos casos de forma explícita: los archivos que empiezan con ceros, un WAL sin su base y un -shm ignorado aparecen en Archivos no analizados, y la falta de WAL genera una advertencia.

Atribución y cadena de custodia

  • Mantenga intacto Users\<name>\AppData\Local\ConnectedDevicesPlatform\<account-folder>\ en la adquisición. La herramienta atribuye cada base a partir de Users/<name>/ o de la carpeta L.<name>; su informe debe hacer lo mismo.
  • Calcule el hash de los archivos adquiridos y trabaje solo con copias. Abrir los originales con una biblioteca SQLite estándar puede volcar el WAL en la base y borrarlo al cerrar la conexión (sqlite.org), lo que altera la evidencia.
  • Anote la zona horaria del sistema y la del usuario, y mantenga las marcas de tiempo en UTC en sus notas de trabajo.

Colecciones de triaje: qué más recoger

Si ya está recogiendo Timeline, la misma pasada debería traer los artefactos que lo corroboran: SRUDB.dat para SRUM, C:\Windows\Prefetch para Prefetch, AutomaticDestinations para las Jump Lists, Recent\*.lnk para los archivos LNK, las colmenas de usuario para la evidencia del registro y los registros de eventos para EVTX. Timeline es más sólido cuando es una voz entre varias; vea Windows Timeline vs SRUM vs Prefetch vs Jump Lists.

FAQ

¿Dónde se almacena la base de datos de Windows Timeline?

En C:\Users\<user>\AppData\Local\ConnectedDevicesPlatform\<account-folder>\ActivitiesCache.db. La carpeta de cuenta es L.<username> para una cuenta local y otro identificador para cuentas Microsoft o profesionales y educativas.

¿Necesito el archivo -shm?

No. El archivo -shm es un índice de memoria compartida que SQLite reconstruye. Adquiéralo si su herramienta lo recoge, pero la evidencia está en ActivitiesCache.db y ActivitiesCache.db-wal.

¿Puedo copiar ActivitiesCache.db de un sistema en ejecución?

No con una copia normal mientras el usuario tiene la sesión iniciada, porque el archivo suele estar abierto. Use un recolector con acceso raw al disco, como KAPE o Velociraptor, o una instantánea de volumen, y tome la base de datos y su WAL en el mismo instante.

Próximos pasos

Con los archivos en la mano, analice ActivitiesCache.db en su navegador, o vuelva a la guía completa de análisis forense de Windows Timeline.

Artículos relacionados

Paso a paso: abra ActivitiesCache.db y su -wal en un visor gratuito, filtre aplicaciones, archivos, tiempo de foco y portapapeles, y exporte a CSV o JSON.
Windows 11 retiró la vista Timeline, pero ActivitiesCache.db puede seguir en el disco. Qué cambió, qué dicen las fuentes y cómo comprobar una imagen.
Referencia de campos de ActivitiesCache.db: ActivityType 5, 6, 10 y 16, JSON AppId, claves del payload como activeDurationSeconds y las columnas de fecha.