Skip to content

Cómo analizar los registros de PowerShell en el navegador

Paso a paso: abra registros .evtx de PowerShell, el historial de PSReadLine y las transcripciones en un visor gratuito en el navegador, reconstruya los bloques de script, decodifique comandos codificados y exporte a CSV o JSON.

Publicado el 3 min de lectura

En resumen. Abra el PowerShell Parser, suelte sus registros .evtx, ConsoleHost_history.txt y PowerShell_transcript.*.txt (o un ZIP completo de KAPE/Velociraptor) y la herramienta reconstruye los bloques de script, decodifica los comandos codificados, señala la actividad sospechosa y exporta a CSV/JSON. Todo se ejecuta localmente en WebAssembly; no se sube nada y no se ejecuta nada.

Antes de empezar

Necesita la evidencia recopilada. Si todavía no la tiene, siga cómo recopilar los registros, las transcripciones y el historial de PowerShell. Conserve las carpetas Users\<name>\ para que el historial y las transcripciones se atribuyan a la cuenta correcta.

Cargar los archivos

Abra la página de inicio y suelte los archivos, una carpeta o un ZIP de triaje en la zona de carga, o use Elegir archivos / Elegir una carpeta. El parser reconoce por su nombre los dos registros de eventos de PowerShell, *_history.txt y PowerShell_transcript.*.txt, e ignora los archivos no relacionados de una colección. Cada archivo se analiza con Rust compilado a WebAssembly, dentro de un Web Worker.

Leer el espacio de trabajo

Los contadores muestran las cuentas, el total de entradas, los bloques de script, los hallazgos de gravedad alta, las entradas señaladas y los bloques parciales. Las advertencias indican partes de bloques de script ausentes, transcripciones truncadas y registros sin eventos de PowerShell. La tabla fusiona todas las fuentes en una única línea de tiempo; el filtro por tipo la limita a bloques de script, el registro clásico, Module Logging, historial o transcripciones.

Inspeccionar y decodificar

Abra cualquier fila para ver el bloque 4104 reconstruido, sus hallazgos (download cradle, evasión de AMSI, manipulación del registro o de Defender, omisión de la directiva de ejecución, ventana oculta, degradación) y las capas de desofuscación que convierten un bloque codificado en texto legible. Pegue cualquier contenido puntual en la vista de desofuscación. Nunca se ejecuta nada.

Intervalo de tiempo y exportación

Aplique un intervalo de tiempo personalizado (UTC para los registros de eventos; las horas de las transcripciones y del historial se muestran como locales) y, a continuación, exporte las filas filtradas a CSV o JSON: el intervalo se incluye en el nombre del archivo para sus notas del caso.

Preguntas frecuentes

¿Se sube algo?

No. El parser y su lector de .evtx están escritos en Rust compilado a WebAssembly y se ejecutan en un Web Worker dentro de su navegador. No existe ningún endpoint de carga.

¿Ejecuta los scripts que decodifica?

Nunca. La decodificación es una transformación de texto pura. La herramienta lee y revela; no ejecuta.

¿Qué archivos puedo soltar?

Microsoft-Windows-PowerShell%4Operational.evtx, Windows PowerShell.evtx (y el registro de PowerShell 7), ConsoleHost_history.txt y PowerShell_transcript.*.txt, ya sea de forma individual, en una carpeta o en un ZIP de KAPE/Velociraptor.

Artículos relacionados

Cómo se estructuran las transcripciones de PowerShell, qué registra el encabezado, cómo funcionan las marcas de tiempo de los comandos con -IncludeInvocationHeader y cómo investigarlas.
Qué registra el archivo de historial de PSReadLine, dónde se encuentra, por qué no tiene marcas de tiempo y cómo usarlo (y cuáles son sus límites) en una investigación.
Cómo funcionan -EncodedCommand y las técnicas habituales de ofuscación de PowerShell (base64/UTF-16LE, gzip/deflate, códigos de carácter, concatenación, el operador de formato y las comillas invertidas) y cómo decodificarlas de forma segura.