AmcacheParser: la guía completa de la herramienta de Eric Zimmerman
AmcacheParser es la herramienta de código abierto de referencia
para analizar el hive del registro de Windows Amcache.hve. Fue
escrita por Eric Zimmerman, un veterano profesional de la
investigación digital cuya suite de herramientas (MFTECmd,
RECmd, PECmd, EvtxECmd, …) es la columna vertebral de los
flujos de trabajo forenses modernos en Windows. Si alguna vez has
triagiado un endpoint Windows, casi seguro que has usado
AmcacheParser — directamente o a través de un wrapper como
KAPE.
Esta guía es la referencia canónica sobre la herramienta: qué analiza, cómo instalarla, cómo leer su salida, dónde encaja en un flujo DFIR y cuándo puede convenir ejecutar la misma lógica de parsing en un navegador sin instalar nada (que es lo que hace este sitio).
Crédito donde corresponde. AmcacheParser es obra de Eric Zimmerman. El analizador en el navegador alojado en amcacheparser.com es un proyecto independiente que reimplementa el camino de lectura en Rust + WebAssembly para triage y formación. No está afiliado a Eric ni a su empleador.
¿Qué es AmcacheParser?#
AmcacheParser es un programa de línea de comandos
(AmcacheParser.exe) que:
- Abre un hive
Amcache.hvedel registro de Windows (o una copia con sus journals de transacciones). - Recorre las subclaves relevantes:
Root\InventoryApplicationFile,Root\InventoryApplication,Root\InventoryDriverBinary,Root\InventoryDeviceContainer,Root\Programs,Root\Filey las demás clavesInventory*. - Decodifica los valores (FILETIMEs de Windows, FileIds SHA-1, cadenas de versión, GUIDs, ...) en campos legibles.
- Escribe un CSV por categoría, más una timeline combinada.
Es deliberadamente un analizador solo de lectura y de un único propósito: no interpreta, no puntúa, no alerta. Su salida está pensada para alimentar tu cuaderno de analista, tu SIEM, Timeline Explorer u otra herramienta de la suite Zimmerman.
Por qué a los analistas les interesa Amcache#
Amcache.hve es uno de los artefactos más ricos sobre un host
Windows para presencia y ejecución de programas. A diferencia
de Prefetch (que prueba que un binario realmente se ejecutó),
Amcache registra a menudo binarios simplemente presentes en
disco — incluyendo binarios eliminados antes de tu llegada. Para
cada archivo registrado típicamente obtienes:
- La ruta completa en el momento del inventario.
- Un hash SHA-1 de los primeros ~31 MiB del archivo (el
FileId). - La fecha de link PE y el tamaño del archivo.
- El publisher, la versión y el nombre de producto de la sección de recursos PE.
- Una marca de tiempo de cuándo se registró el inventario.
Esta combinación — ruta + hash + fecha de link + hora de inventario — es oro para la respuesta a incidentes. Permite pivotar en segundos de "un binario sospechoso corrió en un host vecino" a "¿existió este binario exacto alguna vez en este host, aunque fuera brevemente?".
¿Quién es Eric Zimmerman?#
Eric Zimmerman es exagente especial del FBI y actualmente Senior
Director en Kroll, donde lidera el tooling de la práctica de
respuesta a incidentes de la firma. Publica herramientas DFIR
open source en
ericzimmerman.github.io desde
hace más de una década. AmcacheParser pertenece a la familia
Get-ZimmermanTools junto a:
MFTECmd— analizador de$MFT,$LogFile,$J,$Boot,$SDSRECmd— línea de comandos y procesador batch para hives del registroRBCmd— analizador de Papelera de reciclajePECmd— analizador de PrefetchEvtxECmd— analizador de registros de eventos de WindowsJLECmd— analizador de Jump ListLECmd— analizador de LNKSBECmd— CLI de Shellbag Explorer
Si solo aprendes un toolset DFIR, la suite de Zimmerman es la que la mayoría de empleadores esperará que conozcas.
Cómo funciona AmcacheParser internamente#
Amcache.hve es un archivo de hive del registro de Windows
estándar — el mismo formato binario que SYSTEM, SOFTWARE,
SAM o NTUSER.DAT. AmcacheParser abre el archivo, recorre los
bins y celdas del hive, sigue el árbol de claves/valores y
decodifica valores tipados. Los campos que más interesan a los
analistas están codificados de tres maneras ligeramente molestas:
- FILETIMEs de Windows — valores de 64 bits que cuentan ticks de 100 ns desde 1601-01-01 UTC. AmcacheParser los convierte a ISO-8601 UTC.
- Fechas de link PE — valores
time_tde 32 bits del header PEIMAGE_FILE_HEADER.TimeDateStamp. No son tiempos del sistema de archivos; se fijan en compilación/enlazado y son un pivote útil. FileIdSHA-1 — cadena de 41 caracteres"0000" + sha1_hex. El0000inicial es una etiqueta de tipo histórica; los 40 caracteres hexadecimales restantes son el SHA-1 de los primeros 31 MiB del archivo tal como Amcache lo vio.
El hive en sí lo escribe la tarea programada Microsoft
Compatibility Appraiser
(\Microsoft\Windows\Application Experience\Microsoft Compatibility Appraiser).
En builds modernos de Windows 10/11 se ejecuta aproximadamente
una vez al día, por lo que Amcache.hve es uno de los mejores
artefactos de "presencia a largo plazo" que tienes.
Los journals de transacciones importan#
Como cualquier hive del registro, Amcache.hve tiene journals
compañeros .LOG1 / .LOG2. Si copias solo el hive sin sus
journals, puedes perder las escrituras más recientes.
AmcacheParser gestiona correctamente los journals si apuntas a un
directorio o pasas los journals junto al hive — recógelos siempre
juntos.
Instalar AmcacheParser#
Hay tres formas comunes de obtener la herramienta. Todas producen el mismo binario; elige la que se ajuste a tu entorno.
Opción 1 — Get-ZimmermanTools (recomendado)#
El instalador oficial es un pequeño script de PowerShell que descarga la suite completa en una carpeta destino y la mantiene actualizada.
# Crear una carpeta de herramientas y traer las últimas builds .NET 6
mkdir C:\Tools\ZTools
cd C:\Tools\ZTools
Invoke-WebRequest `
-Uri 'https://raw.githubusercontent.com/EricZimmerman/Get-ZimmermanTools/master/Get-ZimmermanTools.ps1' `
-OutFile Get-ZimmermanTools.ps1
.\Get-ZimmermanTools.ps1 -Dest C:\Tools\ZTools -NetVersion 6Una vez terminado, AmcacheParser.exe está en
C:\Tools\ZTools\net6\AmcacheParser\. Volver a ejecutar el script
más tarde actualiza cada herramienta en el sitio.
Opción 2 — Descarga directa desde ericzimmerman.github.io#
La página principal ericzimmerman.github.io ofrece un zip por cada herramienta. Es la vía correcta si el egress PowerShell está bloqueado en la estación del analista.
Opción 3 — Integrado en KAPE o Velociraptor#
Si usas KAPE o Velociraptor, AmcacheParser ya viene incorporado en sus catálogos de módulos / artefactos. Normalmente no lo instalas por separado — lo invocas a través de una definición de target / módulo que también recoge el hive por ti.
Para un desglose completo de mirrors, sumas de verificación y patrones de instalación en redes aisladas, ver la guía de descarga de AmcacheParser.
Inicio rápido: analizar un hive#
La invocación mínima son dos opciones:
AmcacheParser.exe `
-f "C:\Triage\Windows\AppCompat\Programs\Amcache.hve" `
--csv "C:\Triage\Output\Amcache"Eso escribe un CSV por categoría Inventory* en la carpeta de
salida. Para un incidente real casi siempre querrás algunas
opciones más:
AmcacheParser.exe `
-f "C:\Triage\Windows\AppCompat\Programs\Amcache.hve" `
--csv "C:\Triage\Output\Amcache" `
--csvf "HOSTNAME_amcache.csv" `
-i `
--mp--csvfcontrola el nombre base para que el triage multi-host se mantenga navegable.-iincluye entradas marcadas comoIsOSComponent = true(desactivado por defecto porque inflan el ruido).--mp("multi-pasada") analiza entradas huérfanas / sin asociar que de otra forma se descartarían.
La matriz completa de opciones está en el cheatsheet CLI de AmcacheParser.
Cargar la salida en Timeline Explorer#
Los CSVs están pensados para
Timeline Explorer de Eric.
Arrastra cualquier *_UnassociatedFileEntries.csv o
*_AssociatedFileEntries.csv a Timeline Explorer y obtienes
columnas ordenables, filtrables y una vista instantánea de "toda
la actividad en esta ventana".
Leer la salida CSV#
AmcacheParser escribe un esquema distinto por categoría. Los cuatro que tocarás en casi todos los casos:
| Archivo | Contenido |
|---|---|
*_UnassociatedFileEntries.csv |
Archivos que Amcache vio en disco y que no están vinculados a una Inventory Application registrada. La tabla pivote más rica para binarios desconocidos. |
*_AssociatedFileEntries.csv |
Archivos vinculados a una InventoryApplication (producto instalado). |
*_DriverBinaries.csv |
Binarios de drivers cargados — crítico para investigaciones de rootkits de kernel. |
*_DeviceContainers.csv |
Historia de dispositivos conectados (impresoras, monitores, controladores de medios extraíbles). |
Las columnas sobre las que pivotarás más a menudo:
ApplicationName/Name— nombre de visualización resuelto por Windows.FullPath— ruta completa en el momento del inventario.FileExtension— práctico para filtrar.exe/.dll.Hash(SHA-1) — elFileIdsin el prefijo"0000".LinkDate— hora de compilación PE.FileVersionString,ProductName,Publisher,PublisherName.Size— tamaño del archivo en bytes en el inventario.IsPeFile,IsOsComponent— filtros rápidos.KeyLastWriteTimestamp— last-write a nivel de registro de la clave contenedora. Trátalo como el pivote "hora de inventario".
Cada columna, incluidas las categorías Inventory menos comunes,
está documentada en
Las columnas de salida de AmcacheParser explicadas.
Ejemplos prácticos#
Algunas consultas que se ganan el sueldo en casos reales:
Encontrar archivos PE sin firmar en rutas escribibles por el usuario (post-procesamiento en PowerShell):
Import-Csv .\HOST_amcache_UnassociatedFileEntries.csv |
Where-Object {
$_.IsPeFile -eq 'True' -and
-not $_.Publisher -and
$_.FullPath -match '\\Users\\|\\ProgramData\\|\\AppData\\'
} |
Select-Object KeyLastWriteTimestamp, FullPath, Hash, Size |
Sort-Object KeyLastWriteTimestampPivotar sobre un SHA-1 conocido como malicioso entre varios hosts:
Get-ChildItem -Recurse -Filter *_UnassociatedFileEntries.csv |
ForEach-Object {
Import-Csv $_.FullName |
Where-Object { $_.Hash -eq 'da39a3ee5e6b4b0d3255bfef95601890afd80709' } |
Select-Object @{n='Host';e={$_.PSChildName.Split('_')[0]}}, FullPath, KeyLastWriteTimestamp
}Dónde encaja AmcacheParser en un flujo DFIR#
La mayoría de investigadores recurre a Amcache después de Prefetch y los registros de eventos, porque responde a una pregunta distinta:
| Artefacto | Responde |
|---|---|
| Prefetch | "¿Se ejecutó este binario en este host?" |
| Registro de eventos (4688 / Sysmon 1) | "¿Corrió este proceso, con qué línea de comandos, desde qué padre?" |
ShimCache (AppCompatCache) |
"¿Fue tocado este binario por el loader recientemente?" |
| Amcache | "¿Ha estado presente alguna vez este binario en este host, con qué hash y en qué ruta?" |
La característica estrella de Amcache es la recuperación de binarios eliminados: un wiper puede borrar el archivo del disco, pero el snapshot del inventario persiste en el hive hasta la siguiente pasada del appraiser — e incluso entonces, la corrida previa suele seguir en los journals de transacciones. Cubrimos en profundidad la distinción Amcache / Prefetch / ShimCache en Entender Amcache para análisis forense de Windows.
Patrones de pipeline#
Los dos patrones de producción más comunes:
-
KAPE collect + KAPE parse. El target
Amcachede KAPE recoge el hive + los journals; su móduloAmcacheParserejecuta el analizador en una carpeta de salida por host. Un comando, listo para Timeline Explorer. -
Velociraptor
Windows.Forensics.Amcache. El artefacto de Velociraptor extrae el hive, ejecuta AmcacheParser en el lado servidor y sube el CSV. Combínalo con un hunt para extenderlo a miles de endpoints.
Ambos patrones se cubren con comandos listos para copiar en el cheatsheet CLI.
La alternativa en el navegador#
La herramienta alojada en este sitio es una reimplementación del camino de lectura en Rust + WebAssembly. Existe porque hay situaciones en las que la CLI de Windows no es la herramienta correcta en ese momento:
- Un analista no-Windows abre un
.hveen su navegador sin instalar el runtime de .NET ni una build de Zimmerman. - Un estudiante quiere ver cómo es Amcache antes de pagar un laboratorio DFIR completo.
- Triage en un host bloqueado donde desplegar nuevos binarios requiere un ticket de cambio.
- Mostrar un hive a un stakeholder en una compartición de pantalla sin exponerlo a un servidor de terceros.
El archivo nunca sale de tu navegador. El parsing ocurre en el lado cliente en WebAssembly; sin subida, sin procesamiento en servidor, sin telemetría. Suelta un hive en la página de inicio para probarlo.
Para investigaciones completas en una estación de analista
Windows, el AmcacheParser.exe oficial de Eric sigue siendo la
herramienta correcta — maneja todos los casos límite, se integra
con el resto de la suite y produce el formato CSV que esperan
todas las herramientas downstream. La versión navegador es para
triage, formación y los casos en los que instalar algo es la
respuesta incorrecta.
Preguntas frecuentes#
¿AmcacheParser es gratuito?#
Sí. Está publicado bajo una licencia permisiva por Eric Zimmerman y es libre para cualquier uso, incluidos los engagements DFIR comerciales.
¿En qué sistemas operativos corre AmcacheParser?#
AmcacheParser.exe es una aplicación .NET 6 / .NET 9. Corre
nativamente en Windows y en Linux / macOS a través del runtime
.NET (dotnet AmcacheParser.dll en hosts no-Windows con la build
framework-dependent).
¿AmcacheParser modifica el hive?#
No. Abre el hive en solo lectura y solo escribe la salida CSV en
la ruta que especifiques con --csv.
¿Cuál es la diferencia entre AmcacheParser y el plugin amcache de RegRipper?#
Ambos analizan el mismo hive. El plugin de RegRipper emite un informe de texto legible; AmcacheParser emite CSV estructurado con una fila por entrada de inventario, mucho más fácil de cargar en una hoja de cálculo, un SIEM o Timeline Explorer. La mayoría de los playbooks modernos usan AmcacheParser; RegRipper sigue siendo popular para análisis interactivo puntual.
¿Amcache registra todos los binarios ejecutados?#
No. Amcache registra presencia y metadatos de inventario, no ejecución. Un binario puede aparecer en Amcache sin haberse ejecutado nunca, y un binario puede ejecutarse sin aparecer en Amcache si el appraiser no ha vuelto a pasar desde entonces. Combínalo con Prefetch y eventos de creación de proceso para probar ejecución.
¿Dónde se encuentra Amcache.hve en un sistema en vivo?#
C:\Windows\AppCompat\Programs\Amcache.hve, con los journals de
transacciones Amcache.hve.LOG1 y Amcache.hve.LOG2 al lado. El
target Amcache de KAPE recoge los tres.
¿Puedo usar AmcacheParser sobre una imagen de memoria?#
No directamente. AmcacheParser analiza el formato de hive en disco. Para analizar Amcache desde memoria, usa los plugins de registro de Volatility para extraer el hive y luego pásalo a AmcacheParser.
Lectura adicional#
- Guía de descarga de AmcacheParser — fuentes, mirrors, verificación de integridad e instalaciones en redes aisladas.
- Las columnas de salida de AmcacheParser explicadas — cada columna CSV, qué significa y cómo pivotar sobre ella.
- Cheatsheet CLI de AmcacheParser — cada opción de línea de comandos con ejemplos prácticos y patrones de pipeline.
- Entender Amcache para análisis forense de Windows — qué registra el hive realmente y por qué importa.
- Comparativa de analizadores Amcache — AmcacheParser vs herramienta navegador vs Volatility vs RegRipper, y cuándo usar cada uno.
¿Listo para mirar un hive ahora mismo? Suelta uno en la página de inicio del analizador — nunca sale de tu navegador.
Artículos relacionados
- Las columnas de salida de AmcacheParser explicadas: cada campo CSV decodificado
Referencia campo por campo para la salida CSV de AmcacheParser — FileId, PathHash, ProgramId, LinkDate, BinFileVersion, IsPeFile y cualquier otra columna, con los pivotes que importan en DFIR.
- Guía de descarga de AmcacheParser: fuentes oficiales, mirrors y verificación
Todas las formas de descargar AmcacheParser de Eric Zimmerman — Get-ZimmermanTools, descarga directa, KAPE, Velociraptor — con verificación por suma de control y patrones de instalación en redes aisladas.
- Cheatsheet CLI de AmcacheParser: cada opción, con ejemplos prácticos
Referencia práctica de línea de comandos para AmcacheParser de Eric Zimmerman — cada opción explicada, con patrones KAPE, Velociraptor y batch de PowerShell listos para copiar y pegar.
- Comparativa de analizadores Amcache: AmcacheParser CLI, herramienta navegador, Volatility, RegRipper
Comparativa lado a lado de las cuatro maneras de analizar un hive Windows Amcache.hve en 2026 — AmcacheParser CLI de Eric Zimmerman, herramienta navegador, Volatility 3 y RegRipper.