Introducción
Windows 11 se lanzó hace cuatro años, pero se ha adoptado de forma limitada en entornos corporativos. Según estadísticas basadas en investigaciones del Equipo Global de Respuesta a Incidentes Cibernéticos (GERT, por sus siglas en inglés), a principios de 2025, el sistema operativo Windows 7 (sin soporte desde 2020) seguía presente en los entornos de clientes con una frecuencia apenas menor que la del sistema operativo más reciente. La mayoría de los sistemas, no obstante, aún funcionan con Windows 10:
Principales versiones de Windows presentes en la infraestructura de las organizaciones. La estadística se basa en los datos del Equipo Global de Respuesta a Incidentes Cibernéticos (GERT, Global Emergency Response Team) (descargar)
Además, el sistema operativo más extendido fue lanzado hace más de 10 años, y hoy, 14 de octubre de 2025, Microsoft finaliza el soporte de Windows 10. Por lo tanto, no queda duda de que veremos crecer la cantidad de sistemas con Windows 11 en las organizaciones a las que brindamos servicios de investigación de incidentes. Por esta razón, decidimos compartir un breve resumen de los cambios en los artefactos forenses introducidos en este sistema, información que puede ser útil para nuestros colegas del sector. Los artefactos descritos corresponden a Windows 11 versión 24H2, la versión más reciente del sistema operativo al momento de redactar este artículo.
Novedades en Windows 11
Recall
La función Recall se presentó por primera vez en mayo de 2024. Permite “recordar” todo lo que el usuario ha hecho en su equipo durante los últimos meses. Su funcionamiento es el siguiente: cada pocos segundos, el sistema toma capturas de toda la pantalla. Después, una inteligencia artificial local las analiza en segundo plano, extrayendo toda la información útil, que luego se almacena en una base de datos. Sobre esta base se realiza una búsqueda inteligente. A partir de mayo de 2025, la función Recall está disponible en equipos con NPU (un chip especializado para cómputo de IA, que en la actualidad es compatible solo con procesadores de arquitectura ARM).
Microsoft Recall es, sin duda, una de las funciones más destacadas y controvertidas que se han anunciado para Windows 11. Desde su primer anuncio, ha sido objeto de críticas en la comunidad de seguridad informática por los riesgos que representa para la confidencialidad de los datos. Microsoft realizó ajustes antes del lanzamiento, pero persisten ciertas inquietudes al respecto. Debido a su naturaleza ambigua, la opción viene desactivada de forma predeterminada en las compilaciones corporativas de Windows 11. No obstante, conviene examinar sus artefactos en caso de que hayan sido activados por atacantes o por software malicioso. En teoría, el departamento de TI de una organización también podría habilitar Recall mediante políticas de grupo, aunque lo consideramos poco probable.
Como mencionamos antes, Recall se basa en capturas de pantalla que, por supuesto, deben almacenarse de forma temporal mientras se procesan. Las imágenes sin procesar en formato JPEG se encuentran en la siguiente ruta: %AppData%\Local\CoreAIPlatform.00\UKP\{GUID}\ImageStore\*. Los nombres de archivo corresponden a los identificadores únicos de las capturas (más adelante se ampliará sobre este punto).
Junto con las capturas, se almacenan metadatos en la etiqueta estándar Exif.Photo.MakerNote (0x927c), que incluyen información relevante: coordenadas de la ventana en primer plano, marca de tiempo (cuándo se tomó la captura), título de la ventana, identificador de ventana, ruta completa del proceso que generó la ventana; y, si en el momento de la captura se utilizaba un navegador, también pueden guardarse el URI y el dominio, entre otros datos.
La función Recall se activa de forma independiente para cada usuario. En el registro, la clave del perfil de usuario que controla la activación/desactivación del almacenamiento de capturas es: Software\Policies\Microsoft\Windows\WindowsAI\. Además, en las compilaciones más recientes de Windows 11, Microsoft añadió varias claves de registro adicionales relacionadas con la gestión de Recall.
Cabe señalar que, en la versión modificada tras las críticas iniciales, la función incluye un filtro especial diseñado para impedir el almacenamiento de capturas y texto cuando en pantalla aparece información confidencial: ventanas de navegador en modo incógnito, formularios de pago, administradores de contraseñas, etc. Sin embargo, según algunos investigadores, este filtro no siempre funciona como debería.
Para realizar búsquedas rápidas en los datos extraídos de las capturas, se utilizan dos bases de datos vectoriales DiskANN (SemanticTextStore.sidb y SemanticImageStore.sidb). No obstante, la base de datos más interesante para el análisis forense es una base SQLite ubicada en: %AppData%\Local\CoreAIPlatform.00\UKP\{GUID}\ukg.db, que consta de 20 tablas. En la versión más reciente, está accesible sin privilegios de administrador, aunque cifrada. Al momento de redactar este artículo, no existen métodos públicos conocidos para descifrarla de forma directa; por ello, a continuación describimos las tablas más relevantes que se observan en la versión beta de Windows 11 con Recall, lanzada en 2024.
- Tabla
App: contiene datos sobre el proceso que inició la ventana de la interfaz gráfica de una aplicación. - Tabla
AppDwellTime: registra la ruta completa del proceso que inició la ventana (columna WindowsAppId), la fecha y hora de inicio (HourOfDay, DayOfWeek, HourStartTimestamp) y la duración de visualización de la ventana (DwellTime). - Tabla
WindowCapture: incluye el tipo de evento (columna Name):- WindowCreatedEvent: evento de creación de la primera instancia de una ventana de la aplicación. Puede vincularse con el proceso que creó la ventana.
- WindowChangedEvent: evento de modificación de una instancia de ventana. Permite rastrear movimientos o cambios de tamaño mediante el identificador de ventana (WindowId).
- WindowCaptureEvent: evento de creación de una captura de pantalla que contiene la ventana de la aplicación. Además del identificador de ventana, incluye un token de imagen (ImageToken) que permite recuperar más adelante el archivo JPEG correspondiente desde el directorio ImageStore (el nombre del archivo coincide con dicho identificador).
- WindowDestroyedEvent: evento de cierre de una ventana de aplicación.
- ForegroundChangedEvent: evento que no contiene datos útiles desde el punto de vista del análisis forénsico.
Además, la tabla
WindowsCaptureincluye un indicador de si la ventana estaba en primer plano (IsForeground), las coordenadas de sus límites en pantalla (WindowBounds), el título de la ventana (WindowTitle), un campo de propiedades (Properties) y la marca de tiempo del evento (TimeStamp).
- Tabla
WindowCaptureTextIndex_content: contiene el texto extraído mediante reconocimiento óptico de caracteres (OCR) de la captura de pantalla (columna c2), el título de la ventana (WindowTitle), la ruta de la aplicación (App.Path), la marca de tiempo de la captura (TimeStamp) y el nombre (Name). Esta tabla puede usarse junto con WindowCapture (las columnas c0 e Id contienen datos idénticos que se pueden usar para unir las tablas) y con App (los datos coinciden en las columnas AppId e Id).
Los artefactos de Recall (si la función estaba activada en el sistema antes del incidente) son una “mina de oro” para los analistas de respuesta a incidentes. Con su ayuda es posible reconstruir con gran detalle la actividad de un atacante en un sistema comprometido. Por otro lado, esta función también puede emplearse con fines maliciosos: como se mencionó, el filtro de información privada no es infalible, por lo que atacantes y malware podrían aprovechar Recall para localizar credenciales y otros datos confidenciales.
Aplicaciones predeterminadas actualizadas
En Windows 11 también se actualizaron las aplicaciones predeterminadas; en algunas se cambió tanto la interfaz como la funcionalidad. En particular, ahora aplicaciones como Bloc de notas, Explorador de archivos y Símbolo del sistema admiten el modo de “múltiples pestañas en una sola ventana”. Además, Bloc de notas conserva el estado de las pestañas incluso después de que el proceso haya finalizado. En consecuencia, Windows 11 introduce nuevos artefactos relacionados con el uso de esta aplicación. Estos artefactos fueron estudiados en detalle por nuestro colega AbdulRhman Alfaifi, cuyo trabajo puede consultarse aquí.
El directorio principal de artefactos de Bloc de notas en Windows 11 es: %LOCALAPPDATA%\Packages\Microsoft.WindowsNotepad_8wekyb3d8bbwe\LocalState\
Este directorio contiene dos subdirectorios:
- TabState: almacena un archivo de estado {GUID}.bin por cada pestaña de Bloc de notas. Aquí se guarda el contenido de la pestaña si no se la ha guardado en un archivo. Para las pestañas guardadas, incluye la ruta completa al archivo, el hash SHA-256 del contenido, el contenido en sí, la marca de tiempo de la última escritura y otros metadatos.
- WindowsState: almacena información sobre el estado de la ventana de la aplicación (número total de pestañas, su orden, la pestaña activa, dimensiones y posición en pantalla). Los archivos de estado se denominan *.0.bin o *.1.bin.
La estructura del archivo {GUID}.bin para pestañas guardadas es la siguiente:
| Campo | Tipo | Valor y comentario |
| Firma | [u8;2] | NP |
| ? | u8 | 00 |
| Archivo_guardado | bool | 00: el archivo no ha sido guardado en la ruta indicada 01: el archivo ha sido guardado |
| Longitud_de_la_ruta | uLEB128 | Longitud en caracteres de la ruta completa al archivo donde se escribió el contenido de la pestaña |
| Ruta_al_archivo | UTF-16LE | La ruta completa al archivo en el que se escribió el contenido de la pestaña |
| Tamaño_archivo | uLEB128 | El tamaño del archivo en el que se escribió el contenido de la pestaña en el disco |
| Codificación | u8 | Codificación del archivo: 0x01 – ANSI 0x02 – UTF-16LE 0x03 – UTF-16BE 0x04 – UTF-8BOM 0x05 – UTF-8 |
| Tipo_retorno | u8 | Tipo de salto de línea de retorno de carro: 0x01 — CRLF 0x02 — CR 0x03 — LF |
| Hora_última_escritura | uLEB128 | Hora de la última escritura (tab save) en el archivo (en formato FILETIME). |
| hash_sha256 | [u8;32] | Hash SHA-256 del contenido de la pestaña |
| ? | [u8;2] | 00 01 |
| Inicio_de_sección | uLEB128 | Offset del inicio de la sección desde el principio del archivo |
| Fin_de_sección | uLEB128 | Offset del final de la sección desde el principio del archivo |
| Configuración | ConfigBlock | Configuración en una estructura de tipo ConfigBlock |
| Longitud_del_contenido | uLEB128 | Longitud del texto del archivo |
| Contenido | UTF-16LE | Contenido de la pestaña antes de modificarla con nuevos datos. En caso de que la pestaña se guarde en el disco sin modificaciones posteriores: ninguno. |
| Contiene_datos_no_guardados | bool | 00: el contenido de la pestaña en el archivo {GUID}.bin coincide con el contenido de la pestaña en el archivo en disco 01: los cambios en la pestaña no se guardan en el disco |
| Suma_de_comprobación | [u8;4] | Suma de comprobación CRC32 del contenido del archivo {GUID}.bin con offset 0x03 desde el principio del archivo |
| Chunks_sin_guardar | [UnsavedChunk] | Lista de estructuras UnsavedChunk. Ausente en caso de guardar una pestaña en disco sin modificaciones posteriores |

Ejemplo de contenido de un archivo {GUID}.bin correspondiente a una pestaña guardada y luego modificada sin guardar los cambios
Para las pestañas no guardadas, la estructura del archivo {GUID}.bin en TabState es más simple:
| Campo | Tipo | Valor y comentario |
| Firma | [u8;2] | NP |
| ? | u8 | 00 |
| Archivo_guardado | bool | 00: el archivo no se guarda en la ruta especificada (siempre) |
| Inicio_de_sección | uLEB128 | Offset del inicio de la sección desde el principio del archivo |
| Fin_de_sección | uLEB128 | Offset del final de la sección desde el principio del archivo |
| Configuración | ConfigBlock | Configuración en una estructura de tipo ConfigBlock |
| Longitud_del_contenido | uLEB128 | Longitud del texto del archivo |
| Contenido | UTF-16LE | Contenido del archivo |
| Contiene_datos_no_guardados | bool | 01: los cambios en la pestaña no se guardan en el disco (siempre) |
| Suma_de_comprobación | [u8;4] | Suma de comprobación CRC32 del contenido del archivo {GUID}.bin con offset 0x03 desde el principio del archivo |
| Chunks_sin_guardar | [UnsavedChunk] | Lista de estructuras UnsavedChunk |
Cabe señalar que el guardado de pestañas puede desactivarse en la configuración de Bloc de notas. En ese caso, los artefactos TabState y WindowsState no estarán disponibles para análisis.
Si están disponibles, se puede utilizar la herramienta notepad_parser escrita por nuestro colega AbdulRhman Alfaifi para automatizar el trabajo.
Este artefacto puede ser clave para recuperar el contenido de scripts o archivos por lotes maliciosos. Asimismo, podría contener resultados o registros generados por escáneres de red, utilidades de extracción de credenciales u otros ejecutables utilizados por atacantes, en especial si se realizaron modificaciones que, por accidente, no llegaron a guardarse.
Cambios en artefactos existentes en Windows 11
Además de los nuevos artefactos, Windows 11 introduce modificaciones relevantes en algunos artefactos ya existentes, que deben considerarse durante las investigaciones forenses.
Cambios en el comportamiento de las marcas de tiempo de NTFS
En comparación con Windows 10, Windows 11 modifica el comportamiento de las marcas de tiempo en dos estructuras del registro maestro de archivos (MFT): $STANDARD_INFORMATION y $FILE_NAME.
Cambios en $STANDARD_INFORMATION:
| Evento | Acceso al archivo | Renombrar un archivo | Copiar un archivo a una nueva carpeta | Mover un archivo dentro de un volumen | Mover un archivo entre volúmenes |
| Win 10 1903 |
Se actualizará la hora del último acceso al archivo. Si el volumen del sistema es superior a 128 GB, el tiempo de acceso a los archivos no cambiará. | El tiempo del último acceso al archivo no cambiará | Se actualizarán los metadatos de la copia | El tiempo del último acceso al archivo no cambiará | Los metadatos se heredarán del archivo original |
| Win 11 24H2 | Se actualizará la hora del último acceso al archivo | La hora de último acceso al archivo se actualizará en función de la hora de modificación | Los metadatos de la copia se heredarán del archivo original | La hora de último acceso al archivo se actualizará en función de la hora de reubicación | Se actualizarán los metadatos |
Cambios en $FILE_NAME:
| Evento | Renombrar un archivo | Mover un archivo dentro de un volumen usando el Explorador | Mover un archivo a la papelera de reciclaje |
| Win 10 1903 |
Las marcas de tiempo y los metadatos permanecen inalterados | Las marcas de tiempo y los metadatos permanecen inalterados | Las marcas de tiempo y los metadatos permanecen inalterados |
| Win 11 24H2 | Las marcas de tiempo, así como los metadatos de acceso y modificación, se heredan de la versión anterior de $STARNDARD_INFORMATION | Las marcas de tiempo, así como los metadatos de acceso y modificación, se heredan de la versión anterior de $STARNDARD_INFORMATION | Las marcas de tiempo, así como los metadatos de acceso y modificación, se heredan de la versión anterior de $STARNDARD_INFORMATION |
Estos cambios deben tenerse en cuenta al analizar archivos del sistema de archivos NTFS.
Program Compatibility Assistant
El Asistente para la compatibilidad de programas (PCA) se introdujo en Windows Vista (2006) para ejecutar aplicaciones diseñadas para versiones anteriores del sistema operativo, y es un artefacto relevante para la identificación de indicios de ejecución de programas.
Con Windows 11 aparecen nuevos archivos relacionados con esta función, de interés forense para rastrear programas ejecutados. Se ubican en: C:\Windows\appcompat\pca\:
PcaAppLaunchDic.txt. Cada línea registra el último lanzamiento de un archivo ejecutable: marca de tiempo en formato YYYY-MM-DD HH:MM:SS.f (UTC) y ruta completa al archivo. Los campos están separados por el caracter “|”. Cada vez que el archivo se vuelve a ejecutar, la línea correspondiente se actualiza. El archivo usa codificación ANSI (CP-1252); por lo tanto, los nombres de archivo con caracteres Unicode “rompen” el registro: las nuevas entradas dejan de generarse (solo se actualizan las existentes).
PcaGeneralDb0.txtyPcaGeneralDb1.txtse alternan entre sí al escribir datos: las nuevas entradas se guardan en el archivo primario hasta que su tamaño alcanza dos megabytes. Después de eso, el archivo secundario se limpia y pasa a ser el nuevo archivo primario, mientras que el primario sobresaturado se convierte en secundario. Este ciclo se repite de forma indefinida. Los campos están separados por “|”. Usan codificación UTF-16LE y contienen los siguientes campos:- Marca de tiempo de ejecución (UTC)
- Tipo de registro (0–4):
- 0: Error de instalación
- 1: Driver bloqueado
- 2: Cierre anómalo de proceso
- 3: Llamada a PCA Resolve (componente que resuelve errores de compatibilidad)
- 4: Valor no establecido
- Ruta del ejecutable (sin la letra de unidad, a menudo con variables de entorno: %USERPROFILE%, %systemroot%, %programfiles%, y otros)
- Nombre del producto (del encabezado PE, en minúsculas)
- Nombre de la compañía (del encabezado PE, en minúsculas)
- Versión del producto (del encabezado PE)
- ID de programa de Windows (como en AmCache)
- Mensaje
Es importante destacar que estos archivos de texto solo registran ejecuciones realizadas mediante el Explorador de Windows. Las ejecuciones desde la consola no se registran.
Windows Search
Windows Search es el mecanismo integrado de indexación y búsqueda de archivos. Al principio, escaneaba los archivos de forma directa, lo que resultaba lento. Más tarde apareció una aplicación independiente que creaba un índice rápido de archivos y, solo desde 2006 (Windows Vista), la búsqueda pasó a integrarse por completo en el sistema y la indexación de archivos empezó a realizarse en segundo plano.
Desde Windows Vista hasta Windows 10 inclusive, el índice de archivos se almacenaba en la base de datos Extensible Storage Engine (ESE): %PROGRAMDATA%\Microsoft\Search\Data\Applications\Windows\Windows.edb.
En Windows 11, el almacén se dividió en tres bases de datos SQLite:
%PROGRAMDATA%\Microsoft\Search\Data\Applications\Windows\Windows-gather.db: contiene metadatos generales de archivos y carpetas indexados. La mayor atención la merece la tabla SystemIndex_Gthr, donde se almacenan los datos del nombre del archivo o directorio indexado (columna FileName), la última modificación del archivo o directorio indexado (LastModified), así como el identificador para vincularlo con el objeto superior (ScopeID) y el identificador único del archivo o directorio (DocumentID). Mediante ScopeID y la tabla SystemIndex_GthrPth (que incluye Name, Scope e Parent), es posible reconstruir la ruta completa del archivo. La tabla SystemIndex_GthrPth contiene el nombre de la carpeta (Name), el identificador del ámbito (Scope) y el del directorio superior (Parent). Así, al vincular ScopeID del archivo con Scope de la carpeta, se identifica su ubicación.%PROGRAMDATA%\Microsoft\Search\Data\Applications\Windows\Windows.dbcontiene información sobre los metadatos de los archivos indexados. Resulta de interés para el análisis la tabla SystemIndex_1_PropertyStore, donde se encuentra el identificador único del objeto indexado (columna WorkId), el tipo de metadatos (ColumnId) y los propios metadatos. Los tipos de metadatos se describen en SystemIndex_1_PropertyStore_Metadata (el campo Id corresponde a ColumnId), y el significado de cada tipo se especifica en UniqueKey.%PROGRAMDATA%\Microsoft\Search\Data\Applications\Windows\Windows-usn.dbno contiene información útil para análisis forense.
Como se muestra en la imagen de abajo, el análisis del archivo Windows-gather.db con DB Browser for SQLite puede aportar evidencia sobre la presencia de ciertos archivos (por ejemplo, archivos de malware, archivos de configuración, archivos creados y dejados por atacantes, entre otros).

Cabe señalar que la columna LastModified se almacena en formato Windows FILETIME, que contiene un valor de fecha y hora de 64 bits (sin signo) y representa el número de intervalos de 100 nanosegundos desde el 1 de enero de 1601. Con una utilidad como DCode, podemos ver este valor en UTC, como se muestra en la imagen.

Otros cambios menores pero relevantes en Windows 11
También vale la pena señalar algunos cambios pequeños pero importantes en Windows 11 que no requieren un análisis detallado:
- Eliminación total de NTLMv1, lo que hace que ataques como Pass-the-hash vayan quedando obsoletos;
- Eliminación del artefacto Windows 10 Timeline, conocido por muchos; A pesar de que ya no funciona, su base de datos sobre las actividades del usuario aún persiste en:
%userprofile%\AppData\Local\ConnectedDevicesPlatform\ActivitiesCache.db - De forma similar, Windows 11 eliminó Cortana y Internet Explorer, pero los artefactos de estos componentes aún se encuentran en el sistema operativo. Esta característica puede resultar útil en investigaciones realizadas en equipos actualizados desde Windows 10 a la versión más reciente.
- Investigaciones previas mostraron también que el Event ID 4624, que registra los intentos exitosos de inicio de sesión en Windows, permaneció en gran medida sin cambios entre versiones hasta que apareció una actualización notable en Windows 11 Pro (22H2). Esta versión introduce un campo nuevo, llamado Remote Credential Guard, que representa un cambio sutil pero potencialmente relevante en el análisis forense. Aunque aún no hay evidencia de su uso en entornos reales ni de su utilidad forense, su presencia sugiere los esfuerzos continuos de Microsoft por mejorar la telemetría relacionada con la autenticación.
- Amplia compatibilidad con el sistema de archivos ReFS. En la última vista previa de Windows 11, ya es posible instalar el sistema operativo directo en volúmenes ReFS, y se ha agregado compatibilidad con BitLocker. Asimismo, este sistema de archivos tiene muchas diferencias con respecto al habitual NTFS, que vale la pena conocer de antemano:
- En ReFS no existe la tabla $MFT habitual para los analistas forenses, que contiene todos los registros actuales de los archivos en el disco;
- No se generan nombres cortos (como en NTFS, para compatibilidad con DOS);
- No admite enlaces duros (hard links) ni atributos extendidos;
- Aumentan los límites máximos: tanto el volumen como el archivo único alcanzan hasta 35 PB (frente a 256 TB en NTFS).
Conclusión
En este artículo, le hemos ofrecido un breve panorama de los cambios clave en los artefactos de Windows 11 relevantes para el análisis forense, ante todo de los cambios introducidos en PCA y las modificaciones del mecanismo de búsqueda de Windows. Solo el tiempo dirá cuán útiles resultarán en investigaciones reales. No obstante, recomendamos incorporar de inmediato la recolección de los archivos descritos a sus herramientas de triage forense.






El rey ha muerto, ¡larga vida al nuevo rey! Fin de la vida útil de Windows 10 y artefactos forenses de Windows 11