El Registro es un conjunto de archivos hive. Cada artefacto de esta página vive en un hive concreto, así que la primera pregunta de una investigación siempre es «¿qué archivo necesito?». Abra los hives extraídos de una imagen forense con el análisis forense del Registro, que decodifica la mayoría de estas claves en el navegador.
Archivos hive
| Hive | Archivo en disco | Se monta como | Contiene |
|---|---|---|---|
| SYSTEM | C:\Windows\System32\config\SYSTEM |
HKLM\SYSTEM |
Servicios, dispositivos, USB, zona horaria, nombre del equipo |
| SOFTWARE | C:\Windows\System32\config\SOFTWARE |
HKLM\SOFTWARE |
Programas instalados, autoruns de la máquina, perfiles de red |
| SAM | C:\Windows\System32\config\SAM |
HKLM\SAM |
Cuentas locales, número de inicios de sesión, último inicio |
| SECURITY | C:\Windows\System32\config\SECURITY |
HKLM\SECURITY |
Directiva de seguridad local, secretos en caché |
| NTUSER.DAT | C:\Users\<usuario>\NTUSER.DAT |
HKCU |
Actividad del usuario: listas MRU, UserAssist, autoruns del usuario |
| UsrClass.dat | C:\Users\<usuario>\AppData\Local\Microsoft\Windows\UsrClass.dat |
HKCU\Software\Classes |
ShellBags (Windows 7 y posteriores) |
| Amcache.hve | C:\Windows\AppCompat\Programs\Amcache.hve |
no se monta | Inventario de ejecución e instalación de programas |
Copie también los registros de transacciones .LOG1 y .LOG2 de cada hive: los cambios recientes pueden estar todavía solo en ellos.
En las rutas siguientes, CCS es el conjunto de control activo: lea SYSTEM\Select\Current (por ejemplo 1) y use SYSTEM\ControlSet001.
Autoruns y persistencia
| Artefacto | Hive | Ruta de la clave |
|---|---|---|
| Run (en cada inicio de sesión) | SOFTWARE | Microsoft\Windows\CurrentVersion\Run |
| RunOnce | SOFTWARE | Microsoft\Windows\CurrentVersion\RunOnce |
| Run de 32 bits en Windows de 64 bits | SOFTWARE | WOW6432Node\Microsoft\Windows\CurrentVersion\Run |
| Run del usuario | NTUSER.DAT | Software\Microsoft\Windows\CurrentVersion\Run |
| RunOnce del usuario | NTUSER.DAT | Software\Microsoft\Windows\CurrentVersion\RunOnce |
| Shell y userinit de Winlogon | SOFTWARE | Microsoft\Windows NT\CurrentVersion\Winlogon (Shell, Userinit) |
| Image File Execution Options | SOFTWARE | Microsoft\Windows NT\CurrentVersion\Image File Execution Options\<exe> (Debugger) |
| Servicios y controladores | SYSTEM | CCS\Services\<nombre> (ImagePath, Start, Parameters\ServiceDll) |
Un valor Start de servicio igual a 2 significa automático, 3 manual y 4 deshabilitado. Los servicios nuevos también generan el evento 7045; vea Chuleta de ID de eventos de Windows.
Ejecución de programas
| Artefacto | Hive | Ruta de la clave | Qué aporta |
|---|---|---|---|
| UserAssist | NTUSER.DAT | Software\Microsoft\Windows\CurrentVersion\Explorer\UserAssist\{GUID}\Count |
Programas gráficos lanzados, número de ejecuciones, última ejecución |
| BAM | SYSTEM | CCS\Services\bam\State\UserSettings\<SID> |
Última ejecución por programa y usuario (Windows 10 1809 y posteriores) |
| ShimCache (AppCompatCache) | SYSTEM | CCS\Control\Session Manager\AppCompatCache (valor AppCompatCache) |
Programas vistos por la capa de compatibilidad, con fecha de modificación del archivo |
| Amcache | Amcache.hve | Root\InventoryApplicationFile |
Ruta, SHA-1 del archivo (FileId, con el prefijo 0000) y datos de primera aparición |
| RunMRU | NTUSER.DAT | Software\Microsoft\Windows\CurrentVersion\Explorer\RunMRU |
Comandos escritos en el cuadro Ejecutar (Win+R) |
Los nombres de valor de UserAssist están codificados en ROT13: {1NP14R77-02R7-4R5Q-O744-2RO1NR5198O7}\pzq.rkr se decodifica como {1AC14E77-02E7-4E5D-B744-2EB1AE5198B7}\cmd.exe, donde ese GUID es el identificador de carpeta conocida de C:\Windows\System32. Decodifique uno a mano con el codificador ROT13. Los dos GUID que conviene conocer son {CEBFF5CD-ACE2-4F4F-9178-9926F41749EA} (ejecutables) y {F4E57C4B-2036-45F0-A9AB-443BCFE33D9F} (accesos directos). Que un programa esté en ShimCache no prueba que se ejecutara, solo que Windows lo vio.
Archivos y carpetas abiertos
| Artefacto | Hive | Ruta de la clave |
|---|---|---|
| RecentDocs | NTUSER.DAT | Software\Microsoft\Windows\CurrentVersion\Explorer\RecentDocs (subclave por extensión) |
| MRU de los diálogos Abrir/Guardar | NTUSER.DAT | Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\OpenSavePidlMRU |
| Última carpeta por programa | NTUSER.DAT | Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\LastVisitedPidlMRU |
| Rutas escritas en el Explorador | NTUSER.DAT | Software\Microsoft\Windows\CurrentVersion\Explorer\TypedPaths |
| Búsquedas en el Explorador | NTUSER.DAT | Software\Microsoft\Windows\CurrentVersion\Explorer\WordWheelQuery |
| ShellBags | UsrClass.dat | Local Settings\Software\Microsoft\Windows\Shell\BagMRU y \Bags |
| URL escritas (Internet Explorer) | NTUSER.DAT | Software\Microsoft\Internet Explorer\TypedURLs |
Las claves MRU guardan su orden en un valor MRUListEx: una lista de índices de 4 bytes little-endian, del más reciente al más antiguo, terminada en FF FF FF FF. Las ShellBags recuerdan las carpetas que el usuario recorrió, incluidas carpetas de unidades extraíbles y recursos de red que ya no existen.
USB y dispositivos externos
| Artefacto | Hive | Ruta de la clave |
|---|---|---|
| Dispositivos de almacenamiento USB | SYSTEM | CCS\Enum\USBSTOR\<fabricante&producto>\<serie> |
| Todos los dispositivos USB (VID/PID) | SYSTEM | CCS\Enum\USB |
| Primera instalación, última conexión y retirada | SYSTEM | ...\USBSTOR\...\<serie>\Properties\{83da6326-97a6-4088-9453-a1923f573b29}\0065, 0066, 0067 |
| Letras de unidad y GUID de volumen | SYSTEM | MountedDevices |
| Nombres de volumen | SOFTWARE | Microsoft\Windows Portable Devices\Devices |
| Qué usuario usó el dispositivo | NTUSER.DAT | Software\Microsoft\Windows\CurrentVersion\Explorer\MountPoints2 |
Los ID de propiedad son 0064 fecha de instalación, 0065 fecha de primera instalación, 0066 última llegada (conexión) y 0067 última retirada, todos en FILETIME.
Sistema y red
| Artefacto | Hive | Ruta de la clave / valor |
|---|---|---|
| Nombre del equipo | SYSTEM | CCS\Control\ComputerName\ComputerName |
| Zona horaria | SYSTEM | CCS\Control\TimeZoneInformation (TimeZoneKeyName, Bias en minutos) |
| Último apagado limpio | SYSTEM | CCS\Control\Windows (ShutdownTime, FILETIME) |
| Interfaces y configuración IP | SYSTEM | CCS\Services\Tcpip\Parameters\Interfaces\{GUID} |
| Versión de Windows, fecha de instalación | SOFTWARE | Microsoft\Windows NT\CurrentVersion (ProductName, InstallDate en segundos Unix) |
| Redes a las que se conectó | SOFTWARE | Microsoft\Windows NT\CurrentVersion\NetworkList\Profiles\{GUID} (ProfileName, DateCreated, DateLastConnected) |
| MAC de la puerta de enlace por red | SOFTWARE | Microsoft\Windows NT\CurrentVersion\NetworkList\Signatures\Unmanaged\<id> (DefaultGatewayMac) |
| Programas instalados | SOFTWARE | Microsoft\Windows\CurrentVersion\Uninstall\<id> |
| Cuentas locales | SAM | SAM\Domains\Account\Users |
DateCreated y DateLastConnected son estructuras SYSTEMTIME de 16 bytes, no FILETIME. La MAC de la puerta de enlace identifica el router (y por tanto el lugar) que hay detrás de un perfil Wi-Fi; averigüe su fabricante con la búsqueda de fabricante por MAC.
Marcas de tiempo que encontrará
| Formato | Dónde | Época y unidad |
|---|---|---|
| Última escritura de la clave | Todas las claves | FILETIME: intervalos de 100 ns desde el 1601-01-01 UTC |
| Valores FILETIME | UserAssist, BAM, propiedades USB, ShutdownTime | Igual que arriba, 8 bytes little-endian |
| Segundos Unix | InstallDate |
Segundos desde el 1970-01-01 UTC |
| SYSTEMTIME | Perfiles de NetworkList | Año, mes, día de la semana, día, hora, minuto, segundo, milisegundos (16 bytes) |
Las horas del Registro están en UTC. Aplique el desfase de TimeZoneInformation solo al presentarlas, y confirme la actividad con los registros de eventos en el análisis forense de registros.