Analizadores BAM: RegRipper, herramientas EZ, Velociraptor
Una mirada justa a las herramientas que analizan BAM y DAM: bam.pl, el plugin BamDam de EZ, Velociraptor, Plaso y BAM/DAM Parser. Cobertura y carencias.
TL;DR. Todas las herramientas habituales decodifican bien el FILETIME de BAM; se diferencian en qué claves leen. El bam.pl de RegRipper solo lee bam\State\UserSettings en el control set actual. El plugin BamDam de Eric Zimmerman cubre los dos formatos de BAM y la ruta antigua de DAM en todos los control sets. El artefacto de Velociraptor lee en vivo los dos formatos de BAM y resuelve los nombres de usuario. Plaso lleva los dos formatos de BAM a una supertimeline. BAM/DAM Parser lee BAM y DAM en ambos formatos y en todos los control sets, pone nombre a los SID con SOFTWARE y funciona en el navegador — pero no reproduce los registros de transacciones ni tiene modo sin interfaz. Elige según el contexto y sabiendo qué deja fuera cada una.
Desarrollamos una de las herramientas de esta comparativa, así que el método importa: cada afirmación sobre otra herramienta procede de su código fuente o documentación publicados, enlazados en cada sección, a fecha de septiembre de 2026. Las herramientas cambian; comprueba la versión que usas. Si el artefacto es nuevo para ti, empieza por la guía completa de BAM/DAM.
Matriz de cobertura
RegRipper bam.pl | Plugin EZ BamDam (Registry Explorer / RECmd) | Velociraptor Windows.Forensics.Bam | Plugin bam de Plaso | BAM/DAM Parser | |
|---|---|---|---|---|---|
| Entrada | Colmena sin conexión | Colmena sin conexión | Equipo en vivo | Imagen/colmena sin conexión | Colmena(s), carpeta, ZIP sin conexión |
bam\State\UserSettings (1809+) | ✓ | ✓ | ✓ | ✓ | ✓ |
bam\UserSettings (1709–1803) | — | ✓ | ✓ | ✓ | ✓ |
dam\UserSettings (formato antiguo) | — | ✓ | — | — | ✓ |
dam\State\UserSettings | — | no está en la lista de claves publicada | — | — | ✓ |
| Control sets | Solo el actual | Todos los ControlSet00* | CurrentControlSet (en vivo) | CurrentControlSet tal como lo resuelve Plaso | Todos, con el activo marcado |
| SID → nombre | — | — | ✓ (con users()) | — | ✓ (ProfileList + SID conocidos) |
| Colmenas dirty | Depende de la versión | Reproduce los registros (Registry Explorer / RECmd) | No aplica (en vivo) | Ver la documentación de Plaso | Detecta y avisa; sin reproducción |
| Salida | Informe de texto; bam_tln.pl para TLN | Cuadrícula, CSV con lotes de RECmd | Filas VQL | Almacenamiento Plaso → líneas de tiempo | Tabla, CSV, JSON |
| Dónde funciona | Windows/Perl | Windows (.NET) | Cualquier cliente de Velociraptor | Python/Docker | Cualquier navegador moderno |
RegRipper bam.pl
El plugin de Harlan Carvey (versión 20200904 en RegRipper 4.0) lee Select\Current, construye ControlSet00<n>\Services\bam\State\UserSettings y, para cada subclave SID, imprime cada valor REG_BINARY como hora ISO-8601 seguida del nombre del valor. Un plugin hermano, bam_tln.pl, genera el formato de línea de tiempo TLN.
Puntos fuertes: rápido, automatizable, parte de un conjunto de herramientas que casi todos los analistas ya usan; la salida TLN encaja directamente en un flujo de línea de tiempo.
Carencias, según el código: no lee el antiguo bam\UserSettings (una imagen 1709–1803 devuelve «not found»), ni dam, solo el control set actual, y no resuelve los SID en nombres. Para un equipo Windows 10 1809+ en el que solo necesitas el estado actual de BAM, es suficiente.
El plugin BamDam de Eric Zimmerman (Registry Explorer, RECmd)
El plugin RegistryPlugin.Bam (versión 0.5) se registra para ControlSet00*\Services\bam\UserSettings\*, ControlSet00*\Services\dam\UserSettings\* y ControlSet00*\Services\bam\State\UserSettings\*, omite Version y SequenceNumber y devuelve la ruta del programa y la hora de ejecución en UTC. Registry Explorer y RECmd gestionan la reproducción de los registros de transacciones en colmenas dirty, lo que es una ventaja real.
Puntos fuertes: el plugin aparece en cuanto navegas por una clave coincidente en Registry Explorer, junto a todos los demás artefactos del registro; los lotes de RECmd lo convierten en CSV sobre muchas colmenas; la reproducción de registros viene integrada.
Carencias, según el código: la lista de claves publicada no incluye dam\State\UserSettings, así que los datos de DAM en equipos Modern Standby 1809+ pueden requerir una revisión manual; los SID no se resuelven en nombres en la salida del plugin.
Velociraptor Windows.Forensics.Bam
El artefacto recorre por defecto HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\bam\UserSettings\*\* y ...\bam\State\UserSettings\*\* (el parámetro bamKeys permite cambiarlas), resuelve cada SID con el plugin users() y devuelve SID, UserName, Binary y Bam_time. Un parámetro userRegex filtra las cuentas.
Puntos fuertes: búsqueda en toda la flota en minutos; datos en vivo sin recopilar la colmena; nombres de usuario resueltos en el propio equipo.
Carencias: DAM no está en las rutas por defecto; solo lee el CurrentControlSet en vivo; se ejecuta en el equipo, así que sigue siendo prudente recopilar también los archivos de colmena para preservar la evidencia.
Plugin bam de Plaso
El analizador de registro de Windows de Plaso incluye un plugin de BAM cuyos filtros cubren CurrentControlSet\Services\bam\UserSettings y ...\bam\State\UserSettings. Los eventos acaban en la supertimeline junto con todos los demás artefactos que extrae Plaso.
Puntos fuertes: BAM junto a los eventos del sistema de archivos, los registros y el navegador en una sola línea de tiempo.
Carencias: sin filtro de DAM en el plugin publicado; como todo Plaso, más pesado de ejecutar que una herramienta de un solo artefacto.
BAM/DAM Parser (este sitio)
Lo que hace la herramienta: Rust compilado a WebAssembly, ejecutado en un Web Worker; lee bam y dam en ambos formatos en cada ControlSet00X, marca el indicado por Select\Current, resuelve los SID con la ProfileList de una colmena SOFTWARE y etiqueta los SID conocidos, lee el nombre del equipo y la zona horaria, detecta colmenas dirty, acepta archivos sueltos, carpetas y colecciones ZIP de triaje (y explica cada archivo que omite), señala cuatro patrones heurísticos y exporta a CSV (protegido contra inyección de fórmulas) y JSON.
Puntos fuertes: nada que instalar, nada que subir, funciona desde un portátil de análisis bloqueado; cobertura completa de claves; atribución y contexto del equipo en una sola pantalla; marcas de tiempo de 100 ns y datos en bruto conservados.
Carencias, dichas claramente:
- Sin reproducción de registros de transacciones. Te avisa; reprodúcelos antes con
rla.exeo Registry Explorer. - Sin análisis de SAM — los nombres proceden de las carpetas de perfil, que pueden no coincidir con cuentas renombradas (matices de la atribución).
- Sin modo de línea de comandos / sin interfaz para procesar cientos de equipos por lotes; para eso usa RECmd, Plaso o Velociraptor.
- Un solo artefacto. Solo hace BAM/DAM; el resto del registro corresponde a Registry Parser o a las herramientas anteriores.
Cómo elegir
| Situación | Elección razonable |
|---|---|
| Búsqueda en vivo de un nombre de herramienta en toda la flota | Velociraptor |
| Revisión completa del registro de una imagen en una estación forense Windows | Registry Explorer (plugin BamDam) |
| Procesamiento automatizado de muchas colmenas a CSV | RECmd o RegRipper |
| Supertimeline de una imagen | Plaso |
| Vistazo rápido y privado a una colmena SYSTEM, con usuarios y DAM, desde cualquier sitio | BAM/DAM Parser |
| Imagen antigua 1709–1803 | Cualquiera salvo bam.pl |
Contrastar herramientas
Para todo lo que vaya a un informe, analiza la misma colmena con dos herramientas y compara el número de entradas por SID. Las diferencias casi siempre se deben a la cobertura (formato antiguo, DAM, otros control sets) o a la reproducción de registros. Nuestra guía paso a paso muestra dónde aparece cada una de esas cosas en la interfaz, y el artículo sobre el formato explica cada columna a nivel de byte.