Cómo analizar archivos Prefetch de Windows
Tienes una carpeta Prefetch extraída de una imagen de triage. ¿Y ahora
qué? Este recorrido sigue el orden en que un analista DFIR con
experiencia procedería realmente, con las preguntas que conviene hacerse
en cada paso.
1. Triage de la carpeta
Suelta la carpeta Prefetch\ completa sobre el parser de este sitio. La
tabla de resultados lista cada archivo .pf con el nombre del
ejecutable, el hash, la versión, el número de ejecuciones, la marca de
tiempo de la última ejecución, el número de volúmenes y el número de
archivos referenciados.
Primer barrido — responde a estas preguntas sin hacer clic en ninguna fila:
- ¿Cuántos archivos hay en total? Las estaciones de trabajo Windows 10/11 sanas tienen cientos. Un puñado o cero sugiere que Prefetch estaba desactivado, fue borrado, o se trata de un servidor.
- ¿Cómo se distribuyen las versiones? Que todo sea v30/v31 es normal en un endpoint Win10/11. Entradas sueltas v17 en un host moderno merecen investigarse — pueden ser evidencia de un archivo Prefetch copiado desde otro sistema.
- ¿Hay ejecutables inusuales? Ordena la tabla por nombre de
ejecutable y revisa rápidamente binarios que no deberían estar en la
máquina: cargadores PowerShell codificados, nombres de
.execon apariencia de empacado, cualquier cosa en rutas escribibles por el usuario, cualquier cosa con un alto número de ejecuciones que no reconozcas.
2. Profundiza en las entradas sospechosas
Haz clic en cualquier fila para desplegar el panel de detalle. Para cada candidato que marcaste en el paso 1, pregúntate:
- ¿Cuándo se ejecutó? La lista de últimas ejecuciones (hasta 8 entradas en Win8.1+) te da una línea temporal. Correlaciónala con la ventana de compromiso de tu incidente.
- ¿Desde dónde se ejecutó? La información de volumen muestra la ruta del dispositivo y el número de serie NTFS. Un número de serie que no coincida con el volumen principal del sistema sugiere que el binario se lanzó desde un medio extraíble o una imagen montada.
- ¿Qué tocó? La lista de "archivos referenciados" recoge cada DLL,
archivo de configuración y recurso que el binario cargó en su
primera ejecución observada. Rutas inusuales aquí — referencias a
\Users\...\AppData\, a recursos compartidos de red, a DLLs del sistema renombradas — son pistas.
3. Cruza con otros artefactos
Prefetch por sí solo te dice cuándo se ejecutó algo. No te dice qué era el binario, quién lo lanzó, ni si es malicioso. Incorpora:
- Amcache (
Amcache.hve) — inventario completo con hashes SHA-1. Si existe una entrada de Prefetch pero falta el registro en Amcache, eso es inusual. Usa el parser de Amcache como herramienta cliente equivalente. - ShimCache / AppCompatCache — corrobora la ruta. Si Prefetch dice
que el binario se ejecutó desde
C:\Temp\y ShimCache dice que esa misma ruta se modificó por última vez cinco minutos antes, la historia gana solidez. - Registro de eventos de seguridad (4688 — creación de proceso) — si la auditoría de procesos estaba activa, obtienes el proceso padre y la línea de comandos, algo que Prefetch por sí solo no aporta.
4. Atento a la manipulación
Un archivo .pf no deja de ser un archivo. Los atacantes pueden
borrarlo, sustituirlo por uno falso o impedir que se cree. Tres
comprobaciones rápidas:
- Recalcula el hash sobre la ruta del ejecutable que ves dentro del Prefetch. Una discrepancia es una evidencia fuerte de un archivo plantado.
- Run counts de 1 con una marca de tiempo reciente en un sistema que lleva semanas funcionando es sospechoso — puede que el archivo haya sido borrado y recreado.
- Marcas de tiempo en el futuro o que coinciden exactamente al segundo entero en muchos archivos sugieren manipulación por lotes.
5. Exporta y documenta
Pulsa "Download JSON" en el parser para capturar la salida estructurada completa. Ese JSON es tu artefacto de auditoría: estable en el tiempo, fácil de filtrar con grep, fácil de comparar con otra recolección. Guárdalo junto a tus notas del caso.
Para un análisis más profundo de qué significa cada campo de Prefetch, consulta Entendiendo Windows Prefetch y Cambios en Prefetch v30 y v31.