Navegadores, correo y sincronización en la nube · Lección 6 de 6
Clientes de sincronización en la nube: OneDrive, Google Drive y Dropbox
13 min de lectura
Un cliente de sincronización convierte una operación de archivo ordinaria en una carga: basta con copiar o mover un archivo a una carpeta supervisada para enviarlo a la nube, sin navegador ni transferencia visible. Esta lección explica dónde guardan OneDrive, Google Drive para ordenadores y Dropbox los datos de las cuentas, las bases de datos de archivos y los registros en Windows, por qué un archivo de una carpeta de sincronización puede no tener contenido en la imagen y cómo combinar la evidencia local y la del proveedor para responder a «¿se cargó este archivo, cuándo y desde qué cuenta?». Los formatos de los clientes, en su mayoría, no están documentados y cambian entre versiones, por lo que debe considerar cada estructura de base de datos y registro que se describe a continuación como típica de versiones recientes y confirmarla en la evidencia.
OneDrive
OneDrive está integrado en Windows 10 y 11 y se ejecuta como OneDrive.exe en la sesión de cada usuario, de forma predeterminada desde %LOCALAPPDATA%\Microsoft\OneDrive\ (las instalaciones por equipo utilizan Program Files). Una cuenta personal de Microsoft se sincroniza de forma predeterminada con C:\Users\<user>\OneDrive; una cuenta profesional o educativa se sincroniza con C:\Users\<user>\OneDrive - <Organization>, por ejemplo, OneDrive - Contoso. Las bibliotecas de SharePoint sincronizadas mediante la misma cuenta profesional aparecen en una carpeta con el nombre de la organización.
Configuración de la cuenta en NTUSER.DAT
Cada cuenta con sesión iniciada tiene una clave en NTUSER.DAT\Software\Microsoft\OneDrive\Accounts\: Personal para una cuenta de Microsoft y Business1 (después Business2, etc.) para las cuentas profesionales o educativas. Las claves contienen valores como UserEmail (la dirección de inicio de sesión) y UserFolder (la raíz de sincronización local), y la clave personal contiene el cid de la cuenta, un identificador de 16 dígitos hexadecimales que también da nombre a archivos de la carpeta de configuración. Como la clave está en el subárbol del Registro del propio usuario, vincula una raíz de sincronización y una dirección de correo electrónico con un perfil de Windows. Las marcas de tiempo de última escritura de la clave muestran cuándo el cliente modificó su configuración por última vez, no cuándo se sincronizaron los archivos.
Carpeta de configuración y base de datos de sincronización
%LOCALAPPDATA%\Microsoft\OneDrive\settings\ tiene una subcarpeta por tipo de cuenta, Personal y Business1. Dentro hay pequeños archivos de texto, <cid>.ini (las bibliotecas sincronizadas y sus rutas locales) y global.ini (la configuración del cliente), y la base de datos de archivos del cliente:
- SyncEngineDatabase.db en las versiones actuales. Es SQLite, por lo que también debe recopilar sus archivos
-waly-shm. Tablas comood_ClientFile_Recordsyod_ClientFolder_Recordscontienen una fila por cada archivo o carpeta que el cliente conoce, con el nombre, un ID de recurso, el ID de recurso de la carpeta principal, el tamaño, un hash del contenido y marcas de tiempo. Reconstruir una ruta completa implica seguir los ID de las carpetas principales hasta la raíz. <cid>.daten versiones anteriores: un archivo binario no documentado con entradas similares de archivos y carpetas. Puede seguir presente en sistemas que se hayan actualizado.
El hash depende del tipo de cuenta y del servicio: las cuentas profesionales utilizan QuickXorHash de Microsoft, un valor de 160 bits que suele almacenarse como 28 caracteres Base64, y las cuentas personales han utilizado SHA-1. QuickXorHash no es MD5 ni SHA-256, por lo que, para cotejar un archivo de la imagen con una fila de la base de datos, debe calcular el hash del archivo con el mismo algoritmo. Herramientas como OneDriveExplorer reconstruyen el árbol de carpetas a partir de estas bases de datos; DB Browser for SQLite permite inspeccionar las filas directamente.
Registros ODL
%LOCALAPPDATA%\Microsoft\OneDrive\logs\ contiene subcarpetas como Personal, Business1 y Common. El motor de sincronización escribe registros binarios ODL (.odl, .odlgz comprimidos y .odlsent; el conjunto de extensiones varía entre versiones) que registran operaciones de sincronización, incluidas cargas, descargas, cambios de nombre y eliminaciones, con una marca de tiempo por entrada. Los nombres de archivo y otras cadenas de los registros están protegidos: las versiones anteriores los sustituían por tokens enumerados en ObfuscationStringMap.txt, y las versiones más recientes los cifran con una clave guardada en un archivo general.keystore. Los decodificadores, como el analizador de ODL de OneDrive de Yogesh Khatri, necesitan ese archivo de la misma instalación; sin él se ven las operaciones, pero no los nombres. Recopile todo el árbol de logs y compruebe qué zona horaria utiliza el analizador para su salida.
Archivos a petición y traslado de carpetas conocidas
Con Archivos a petición, que los clientes actuales activan de forma predeterminada, un archivo puede estar solo en línea: el nombre, el tamaño y las marcas de tiempo existen localmente, pero el contenido permanece en la nube hasta que se abre. NTFS almacena ese archivo como un punto de reanálisis con atributos de nube (por ejemplo, FILE_ATTRIBUTE_RECALL_ON_DATA_ACCESS, a menudo con FILE_ATTRIBUTE_OFFLINE), y su $DATA no tiene clústeres asignados. Por tanto, un archivo que está «presente» en OneDrive - Contoso puede no tener contenido en la imagen; indique en el informe que se trata de un marcador de posición y solicite el contenido al proveedor. Los archivos que el usuario marca como «Mantener siempre en este dispositivo» quedan anclados y se almacenan íntegramente de forma local.
El traslado de carpetas conocidas redirige carpetas conocidas como Escritorio, Documentos e Imágenes a la carpeta de OneDrive. Compruebe NTUSER.DAT\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders (valores Desktop, Personal para Documentos y My Pictures): si apuntan a OneDrive, todos los archivos guardados en el escritorio eran candidatos a la sincronización.
La papelera de reciclaje, el historial de versiones y los enlaces para compartir de OneDrive residen en la nube. Son datos del proveedor, no artefactos del equipo.
Google Drive para ordenadores
Google Drive para ordenadores (GoogleDriveFS.exe) guarda sus datos en %LOCALAPPDATA%\Google\DriveFS\. Cada cuenta tiene una subcarpeta cuyo nombre es un ID de cuenta numérico largo, que contiene:
- metadata_sqlite_db (SQLite, sin extensión) con tablas como
itemseitem_properties: nombres, relaciones con las carpetas principales, tamaño, hora de modificación y unstable_idque vincula filas entre tablas. - content_cache, una carpeta de contenido de archivos almacenado en caché, en archivos sin sus nombres ni extensiones originales. Identifíquelos por su firma y tamaño y, a continuación, cotéjelos con las filas de la base de datos.
Bases de datos como root_preference_sqlite.db, en la carpeta DriveFS, contienen las preferencias de las cuentas y de montaje. Los registros son de texto sin formato: %LOCALAPPDATA%\Google\DriveFS\Logs\drive_fs.txt y archivos rotados drive_fs_<n>.txt, que pueden leerse con cualquier editor de texto o con grep.
De forma predeterminada, el cliente transmite Mi unidad a través de una unidad virtual, normalmente G:. Esa unidad no es un volumen NTFS, por lo que sus archivos no tienen entradas de $MFT en la imagen de disco; solo el contenido almacenado en caché y la base de datos los describen. En el modo de replicación, los archivos también se almacenan en una carpeta local y se comportan como archivos NTFS ordinarios.
Dropbox
Dropbox almacena la ruta de su carpeta de sincronización en info.json, ubicado en %LOCALAPPDATA%\Dropbox\ o %APPDATA%\Dropbox\, con un valor path para cada cuenta personal o empresarial. Los datos del cliente se encuentran en %LOCALAPPDATA%\Dropbox\instance1\ (más instancias para más cuentas). Los archivos con extensión .dbx, como config.dbx y aggregation.dbx, son bases de datos SQLite cifradas cuya clave está protegida por DPAPI (API de protección de datos de Windows), por lo que descifrarlos requiere el material de claves DPAPI del usuario o una sesión activa. Otros archivos, como sync_history.db, han sido legibles en algunas versiones y han estado cifrados en otras. Compruebe cada archivo antes de basarse en él: un archivo SQLite sin cifrar comienza en el offset 0 con la cadena de cabecera de 16 bytes SQLite format 3 más un byte nulo de terminación (53 51 4C 69 74 65 20 66 6F 72 6D 61 74 20 33 00), mientras que uno cifrado no.
La carpeta oculta .dropbox.cache, situada en la raíz de sincronización, conserva copias de archivos eliminados o modificados recientemente durante un período breve, normalmente unos días. Puede contener contenido que ya no exista en ninguna otra parte del disco.
Comparación de los clientes
| Cliente | Información de la cuenta | Base de datos de archivos | Registros | Qué requiere acudir al proveedor |
|---|---|---|---|---|
| OneDrive | NTUSER.DAT\...\OneDrive\Accounts\Personal, Business1 (UserEmail, UserFolder) | settings\<account>\SyncEngineDatabase.db (anteriores: <cid>.dat) | logs\<account>\*.odl, requiere ObfuscationStringMap.txt o general.keystore | Registro de auditoría unificado, papelera de reciclaje en la nube, versiones, uso compartido |
| Google Drive | DriveFS\<account id>\, root_preference_sqlite.db | metadata_sqlite_db, content_cache | DriveFS\Logs\drive_fs*.txt, texto sin formato | Registro de auditoría de Drive, papelera, revisiones, contenido de archivos transmitidos |
| Dropbox | info.json (ruta por cuenta) | instance1\*.dbx, cifradas con DPAPI | Varían según la versión, a menudo cifrados | Historial de eventos, archivos eliminados, versiones |
Método: ¿se cargó el archivo X, cuándo y desde qué cuenta?
Ningún artefacto responde por sí solo a la pregunta. Construya la respuesta a partir de fuentes independientes:
- Sistema de archivos. Localice el archivo en la carpeta de sincronización. Su hora de creación de
$SIregistra cuándo se creó el archivo y se conserva al moverlo; un movimiento o cambio de nombre que lo introduce en la carpeta aparece en$Jcomo registrosRENAME_OLD_NAMEyRENAME_NEW_NAME, y una copia aparece como un archivo nuevo creado allí (Lección 1.4). - Base de datos del cliente. Localice la fila con el mismo nombre, carpeta principal y tamaño. Una fila en la base de datos significa que el cliente conocía el archivo; un hash coincidente lo vincula con el contenido.
- Registro del cliente. Localice la entrada de carga y su hora de finalización.
- SRUM. Compruebe los bytes enviados por
OneDrive.exe,GoogleDriveFS.exeoDropbox.exeen el intervalo que contiene la carga (Lección 2.8). - Cuenta. Vincule la raíz de sincronización con la cuenta mediante el Registro,
info.jsono la carpeta de cuenta de DriveFS. - Proveedor. Cuando estén disponibles, el registro de auditoría unificado de Microsoft 365 (operaciones como
FileUploadedyFileSyncUploadedFull) o el registro de auditoría de Drive de Google Workspace confirman la carga, la cuenta y la dirección IP del cliente.
Las recopilaciones de triaje deben incluir las carpetas de configuración y registros indicadas anteriormente. Una recopilación que solo incluya subárboles del Registro y registros de eventos no puede responder a esta pregunta.
Ejemplo resuelto
La usuaria ana copia q3-files.7z desde E:\Clients\ en la unidad USB (el archivo comprimido creado en la Lección 3.4) a C:\Users\ana\OneDrive - Contoso\Shared\. La evidencia:
| Fuente | Valor |
|---|---|
Accounts\Business1 | UserEmail ana@contoso.com, UserFolder C:\Users\ana\OneDrive - Contoso |
$J | 2026-03-14T14:01:03Z, FILE_CREATE, después DATA_EXTEND y CLOSE, carpeta principal Shared, una nueva entrada de MFT |
Marcas de tiempo de $SI | creación 2026-03-14T14:01:03Z (la copia); modificación 2026-03-14T13:59:12Z, conservada del archivo en E:\ (Lección 3.2) |
| SyncEngineDatabase.db | q3-files.7z, la carpeta principal se resuelve como Shared, tamaño de 64.108.233 bytes |
| ODL (Business1) | carga de q3-files.7z completada a las 2026-03-14T14:01:41Z |
| Uso de datos de red de SRUM | OneDrive.exe, BytesSent 64.812.544 en el intervalo 13:31:09Z–14:31:09Z |
Comprobaciones. La carga se completó 14:01:41 − 14:01:03 = 38 segundos después de que el archivo entrara en la carpeta. 64.108.233 bytes × 8 / 38 s = 13,5 Mbit/s, una velocidad de carga plausible. 64.108.233 / 1.048.576 = 61,1 MiB. Los bytes enviados según SRUM superan el tamaño del archivo en 64.812.544 − 64.108.233 = 704.311 bytes (aproximadamente un 1,1%), lo que concuerda con la sobrecarga del protocolo y otro tráfico de sincronización en el mismo intervalo; SRUM no puede demostrar que esos bytes correspondieran a este archivo. Si el archivo sigue almacenado localmente, calcule su QuickXorHash y compárelo con el valor de la base de datos.
Declaración. «A las 2026-03-14T14:01:03Z se copió el archivo q3-files.7z (64.108.233 bytes) desde la unidad USB E:\ a C:\Users\ana\OneDrive - Contoso\Shared\, la carpeta de sincronización de la cuenta profesional ana@contoso.com configurada en el perfil de la usuaria ana. La base de datos del cliente de OneDrive enumera el archivo en esa carpeta con el mismo tamaño, y el registro del cliente indica que su carga se completó a las 2026-03-14T14:01:41Z. SRUM registra 64.812.544 bytes enviados por OneDrive.exe en el intervalo 13:31:09Z–14:31:09Z, lo que es compatible con la carga. Debe solicitarse el registro de auditoría unificado de Microsoft 365 del inquilino de Contoso para confirmar la carga del lado del servidor». La declaración no indica quién estaba usando el teclado ni afirma que el archivo se compartiera con alguien.
Enfoque del examen: Espere preguntas sobre qué archivo se cargó a través de OneDrive y cuándo, mediante el razonamiento a partir de las entradas de los registros ODL y las filas de SyncEngineDatabase.db, con la cuenta obtenida deAccounts\Business1oAccounts\Personal. Conozca las rutas de configuración y registros, que las cadenas ODL requieren ObfuscationStringMap.txt o general.keystore y que un marcador de posición solo en línea no tiene contenido en la imagen. Prepárese para distinguir la hora en que un archivo llegó a la carpeta de sincronización ($J) de su hora de creación ($SI) y su hora de carga (registro).
Puntos clave
- Las cuentas de OneDrive están en
NTUSER.DAT\Software\Microsoft\OneDrive\Accounts\PersonalyBusiness1, con valores como UserEmail y UserFolder. settings\<account>\SyncEngineDatabase.db(SQLite en las versiones actuales,<cid>.daten las anteriores) enumera los archivos con ID de las carpetas principales, tamaños y hashes;logs\<account>\*.odlregistra cargas, descargas y eliminaciones.- Las cadenas ODL están ofuscadas o cifradas; su decodificación requiere ObfuscationStringMap.txt o general.keystore del mismo sistema, por lo que debe recopilar todo el árbol de registros.
- Los marcadores de posición de Archivos a petición son puntos de reanálisis con atributos de nube y sin contenido local; la unidad
G:transmitida de Google Drive no tiene ninguna entrada de MFT. - Las bases de datos
.dbxde Dropbox están protegidas con DPAPI y cifradas;info.jsonproporciona la ruta de sincronización y.dropbox.cachepuede contener archivos eliminados recientemente. - Demuestre una carga mediante el sistema de archivos, la base de datos del cliente, el registro del cliente y SRUM en conjunto, y solicite los registros de auditoría del proveedor para obtener confirmación del lado del servidor.