Volver a todos los artículos

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 .exe con 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.