Carving de fragmentos de colmenas de registro desde pagefile.sys
20/5/2026 · 5 min de lectura
Las colmenas del registro viven en RAM de forma continua — todos los
procesos abren handles a colmenas al arrancar, y Windows mantiene en
caché las colmenas activas en el non-paged pool. Pero las porciones más
antiguas / frías de las colmenas grandes (piensa en SOFTWARE en un
servidor ocupado, o el NTUSER.DAT rancio de un usuario inactivo) sí se
paginan, y ahí es donde el carving de pagefile gana su sueldo: puedes
reconstruir datos de registro borrados o modificados que ya no son
visibles en disco.
Las dos firmas que importan
Las colmenas del registro de Windows están hechas de dos tipos de bloque, ambos alineados a 4 KB y ambos trivialmente carveables:
| Firma | Hex | Qué es |
|---|---|---|
regf | 72 65 67 66 | Bloque base de la colmena — la cabecera del archivo |
hbin | 68 62 69 6E | Bin de la colmena — un contenedor de celdas de 4 KB |
Una colmena completa en disco empieza con un único bloque regf (4 KB)
seguido de una secuencia de bloques hbin. En un pagefile, casi nunca
obtienes la secuencia intacta — lo que sí obtienes son muchos bloques
hbin aislados, cada uno representando un trozo de 4 KB de datos de
registro que fue paginado desde la RAM.
El parser clasifica cada página de 4 KB y etiqueta los aciertos
regf / hbin en la pestaña Page map. Haz clic en cada uno para ver
su offset absoluto en el archivo.
Qué sobrevive en un hbin aislado
Un hbin es un contenedor de celdas. Cada celda es alguna de estas:
- Un nodo de clave (
nk) — tiene el nombre de la clave, la fecha de última escritura, la referencia al padre, el conteo de subclaves. - Una entrada de valor (
vk) — nombre, tipo (REG_SZ,REG_DWORD,REG_BINARY, etc.), offset de datos. - Una lista de subclaves (
lf,lh,li,ri). - Un descriptor de seguridad (
sk). - Big data para valores mayores que el tamaño de celda (
db). - Los bytes reales del valor.
Un único hbin de 4 KB suele contener unas docenas de celdas. Incluso un
bin huérfano puede darte:
- Los nombres y fechas de última escritura de las claves que vivían en ese bin.
- Los nombres y tipos de los valores, más sus datos si los datos eran
inline (la mayoría de los
REG_SZyREG_DWORDlo son). - Celdas borradas: cuando se elimina una clave o un valor, la celda se marca libre (el bit alto del tamaño se invierte) pero su contenido no se pone a cero. Las herramientas sobre colmena viva saltan las celdas borradas; los carvers pueden leerlas.
Este es el premio forense principal — artefactos de registro que ya no existen en la colmena viva.
Extraer celdas de un hbin carveado
No puedes cargar un único hbin en Regedit ni en Registry Explorer
directamente — quieren un archivo prefijado con regf completo. El
flujo:
- Encuentra páginas
hbinen el pagefile vía el Page map de esta herramienta. - Anota los offsets absolutos, p. ej.
0x12340000,0x12341000. - Saca los bytes con
dd:dd if=pagefile.sys of=hbin1.bin bs=1 skip=$((0x12340000)) count=4096 - Después:
- Parsea manualmente: la referencia del formato de archivo del registro de Microsoft Windows (docs de libregf) es la fuente canónica.
- Antepón una cabecera
regfsintética para que un visor de colmenas acepte el archivo —yarp(el parser de registro en Python de Maxim Suhanov) tiene helpers para esto y es mucho más tolerante a la corrupción quehivexsho Registry Explorer.
Qué buscar en colmenas carveadas
Las claves que más merece la pena recuperar de un pagefile:
SAM\Domains\Account\Users\…— RID, hash NT, flags de cuenta.SECURITY\Policy\Secrets\…— secretos de LSA (contraseña de la cuenta de máquina, credenciales de cuentas de servicio, claves maestras de DPAPI).SOFTWARE\Microsoft\Windows\CurrentVersion\Run/RunOnce— entradas de persistencia.SOFTWARE\Microsoft\Windows NT\CurrentVersion\Schedule\TaskCache\Tasks— GUIDs de tareas programadas.SYSTEM\CurrentControlSet\Services\…— servicios instalados, incluyendo malware que se ha registrado a sí mismo.NTUSER.DATSoftware\Microsoft\Windows\CurrentVersion\Explorer\RunMRU— comandos recientemente tecleados en el diálogo Ejecutar.NTUSER.DATSoftware\Microsoft\Windows\CurrentVersion\Explorer\TypedPaths— historial de la barra de direcciones del Explorador.UsrClass.datShellBags — carpetas que el usuario abrió, incluso las que ya no existen.
Un fragmento carveado por página de cualquiera de estas es forensemente significativo incluso sin el contexto de la colmena que lo rodea.
Comparar con el sistema vivo
Si tienes el pagefile y las colmenas vivas SOFTWARE / SYSTEM /
SAM / NTUSER.DAT de C:\Windows\System32\config\:
- Diferencia los fragmentos carveados contra la colmena viva — cualquier cosa en los datos carveados que no esté en la colmena viva está borrada. Esa es la evidencia.
- Usa
yarp(oregipy) para recorrer ambas y emitir una lista unificada de valores.
Limitaciones específicas del carving de registro
- Sin replay del log de transacciones: el sistema de colmenas vivas
usa archivos
*.LOG1/*.LOG2para hacer durables las escrituras; en un fragmento paginado puedes estar viendo un estado pre-commit que la colmena viva ya ha sobrescrito. - Los offsets de celda son relativos a la base de la colmena: los punteros de una celda a otra (punteros de listas de subclaves, listas de valores) son inútiles sin el bloque base completo de la colmena — lees las celdas inline pero no puedes navegar.
- Páginas comprimidas: en Windows 10+, un
hbinpuede estar comprimido con Xpress-Huffman antes de ser paginado. Esta herramienta marca tales páginas en el page map; la descompresión manual queda como funcionalidad futura.
Lectura relacionada
- Cómo funciona realmente el forense de pagefile.sys — el carving + catálogo de firmas subyacente.
- Limitaciones del análisis de pagefile.sys — por qué algunas páginas no se carvean limpiamente.
- Encontrar credenciales en pagefile.sys — muchas de las cuales viven en las colmenas SAM / SECURITY.