ShellBags en Windows 11, 10, 7 y XP: qué ha cambiado
Diferencias de los ShellBags entre Windows XP, Vista, 7, 8.1, 10 y 11: ubicación de hives, versiones del bloque de extensión y carpetas raíz.
TL;DR. La gran ruptura está entre XP y Vista: los ShellBags pasaron de NTUSER.DAT (Shell y ShellNoRoam) a UsrClass.dat (Local Settings\Software\Microsoft\Windows\Shell), y desde Vista el bloque de extensión de los items file entry incluye referencias MFT de NTFS. De Windows 7 a 11 las claves son las mismas; lo que cambia es el contenido: versiones del bloque de extensión (7 → 8 → 9), items delegados para las carpetas del perfil, nuevas carpetas raíz (Bibliotecas, Acceso rápido, OneDrive, Inicio) y, en Windows 11, navegación nativa por archivos RAR/7z/tar desde KB5031455. Use una herramienta que los conozca todos y revise las entradas raras sobre los bytes en bruto.
Casi toda la confusión sobre ShellBags entre versiones de Windows viene de aplicar un modelo mental antiguo a un sistema nuevo, o una herramienta pensada para Windows 7 a un hive de Windows 11. Este artículo es el mapa de versiones. Para las rutas en sí y cómo adquirir los hives, véase dónde se guardan los ShellBags.
Mapa de versiones
| Windows | Hive y clave | Versión 0xBEEF0004 | Lo que se nota en la práctica |
|---|---|---|---|
| XP / 2003 | NTUSER.DAT: Software\Microsoft\Windows\ShellNoRoam\BagMRU y Shell\BagMRU | 3 | Sin referencia MFT en los items. Árboles móvil y no móvil separados. |
| Vista / 2008 | UsrClass.dat: Local Settings\Software\Microsoft\Windows\Shell\BagMRU (+ NTUSER Shell\BagMRU) | 7 | Aparecen el número de entrada MFT y la secuencia en los items file entry. |
| 7 / 2008 R2 | Igual que Vista | 8 | Items delegados (CFSF) para carpetas del perfil; raíz Bibliotecas. |
| 8 / 8.1 | Igual | 8 (8.0), 9 (8.1) | Bloque de extensión más largo antes del nombre largo. |
| 10 | Igual | 9 | Raíces Acceso rápido y OneDrive; carpetas de «Este equipo» (Objetos 3D en algunas builds). |
| 11 | Igual | Véase la nota | Raíz Inicio; navegación RAR/7z/tar en el Explorador desde KB5031455. |
Las versiones de extensión proceden de la especificación de libfwsi, cuyo conjunto de pruebas llega hasta Windows 10. Para Windows 11, lea la versión en el propio item: ShellBags Parser la muestra en el detalle de la entrada. La división de ubicaciones entre XP y Vista+ la resumen Magnet Forensics y Chad Tilbury en SANS.
Windows XP: dos árboles en NTUSER.DAT
XP guardaba los ShellBags en NTUSER.DAT bajo Software\Microsoft\Windows\ShellNoRoam (datos locales, no móviles) y Software\Microsoft\Windows\Shell. Analice ambos. Los items file entry de la época de XP llevan un bloque de extensión de versión 3: fechas de creación y acceso y nombre largo, pero ninguna referencia de archivo NTFS. No podrá hacer la comprobación de secuencia MFT descrita en el artículo de carpetas borradas.
Todavía aparecen hives de XP: sistemas industriales antiguos, imágenes viejas en casos no resueltos y perfiles migrados que arrastraron sus items.
Vista y 7: el paso a UsrClass.dat
Desde Vista, el árbol principal vive en el hive de clases por usuario, UsrClass.dat, bajo Local Settings\Software\Microsoft\Windows\Shell. NTUSER.DAT mantiene también un árbol Software\Microsoft\Windows\Shell\BagMRU, en general mucho más pequeño. Dos cambios importan para el análisis:
- Referencias MFT. Los bloques de extensión de versión 7 o superior añaden un número de entrada MFT de 48 bits y un número de secuencia de 16 bits, lo que vincula un ShellBag a un registro NTFS concreto (véase referencia de archivo MFT).
- Items delegados. Windows 7 suele guardar las carpetas del perfil de usuario como items delegados
0x74que envuelven un file entry normal (firmaCFSF). Los parsers antiguos que los omitían generaban rutas con huecos.
Windows 7 es también donde se hicieron la mayoría de las pruebas de comportamiento publicadas. Las pruebas de 4n6k en Windows 7 mostraron que seleccionar una carpeta en el Explorador puede crear una entrada sin entrar en ella, y que las fechas incrustadas no se actualizan tras la creación. No suponga que todas las builds posteriores se comportan igual; vuelva a probar el comportamiento del que depende su hallazgo.
Windows 8 y 8.1
Sin cambios de ruta. Los items de Windows 8.1 usan el bloque de extensión de versión 9, con más campos antes del nombre largo. Un parser que fije a mano los offsets de la versión 8 lee nombres basura en los items 8.1+; un nombre largo sin sentido junto a un nombre 8.3 correcto es la señal.
Windows 10
Mismas claves, items de versión 9 y más carpetas raíz. El Explorador abre en Acceso rápido, OneDrive tiene su propia raíz del espacio de nombres y algunas builds muestran carpetas como Objetos 3D en Este equipo. Aparecen como items raíz (0x1F) o carpetas conocidas identificadas por GUID. ShellBags Parser traduce las más comunes a nombres (Mi PC, Red, Papelera, Bibliotecas, Acceso rápido, OneDrive, Escritorio, Documentos, Descargas y otras) y muestra entre llaves los GUID desconocidos; la página de Microsoft KNOWNFOLDERID lista los identificadores de carpeta documentados.
Los perfiles de Windows 10 son también donde más a menudo se encuentran teléfonos y cámaras recorridos por MTP. Esos items solo están documentados en parte; espere, como mucho, un nombre legible de dispositivo o carpeta, y guarde el hexadecimal en bruto en sus notas.
Windows 11
Las claves no cambian. Diferencias que verá:
- Inicio. Las builds recientes abren el Explorador en Inicio, otro GUID raíz (
F874310E-B6B7-47DC-BC84-B9E6B38F5903en la tabla del parser). - Navegación nativa por archivos comprimidos. Las notas de la versión KB5031455 de Microsoft (octubre de 2023, builds 22621 y 22631) añaden la lectura de
.rar,.7z,.tar,.tgzy formatos relacionados mediante libarchive. La navegación por ZIP existe desde hace décadas; el rastro de ShellBags que dejan los formatos nuevos todavía no está bien documentado públicamente. Véase ShellBags y archivos ZIP. - Pestañas. Se pueden abrir varias carpetas en una misma ventana del Explorador. No cambia el almacenamiento, pero debilita aún más el razonamiento «una ventana = una navegación».
Lo que no cambia
- Navegación, no acceso a archivos. Cierto en todas las versiones. Véase ShellBags frente a LNK, Jump Lists y RecentDocs.
- Lógica de las marcas de tiempo. LastWrite de clave más MRUListEx funciona igual en todas partes. Véase las marcas de tiempo de los ShellBags explicadas.
- Límites de capacidad. Windows solo guarda ajustes de vista para un número limitado de carpetas; el valor
BagMRU Size, cuyo valor por defecto suele citarse como 5.000 desde Vista (por ejemplo en Winaero), permite ampliarlo. En un perfil muy usado, no dé por hecha una retención ilimitada. - Ceguera ante la consola.
cmd, PowerShell y la mayoría de scripts nunca crean ShellBags.
Consejos prácticos para parques heterogéneos
- Anote la versión y la build del sistema operativo de cada equipo junto con los hives (la clave
CurrentVersiondel hive SOFTWARE las contiene; el parser de registro la lee). - Cuente con que los perfiles migrados entre versiones contengan items de varias versiones de extensión. Es normal.
- Cuando una build nueva muestre items desconocidos, compare dos herramientas y los bytes en bruto antes de escribir una frase sobre ellos.