Formatos de salida¶
Resúmenes en la terminal¶
Sin -o ni un -t estructurado, los comandos suelen mostrar recuentos, intervalos de tiempo,
daños y hallazgos de alto valor. Los resúmenes ayudan a comprender el alcance antes de generar una
salida voluminosa.
CSV¶
CSV es el formato de guardado predeterminado. Resulta cómodo para hojas de cálculo, importaciones SQL y visores de líneas de tiempo. Algunos analizadores crean varias tablas porque sus artefactos contienen distintos tipos de registro (Amcache, Jump Lists y SRUM).
Trate las columnas de evidencia como texto
Una ruta o una línea de comandos puede empezar por =, +, - o @. Las hojas de cálculo
pueden interpretarla como una fórmula. Importe todos los campos como texto o utilice un visor
CSV seguro desde el punto de vista forense. Juntei conserva las cadenas de evidencia en lugar de
modificarlas.
Nombres de campo¶
Los encabezados de columna CSV y los nombres de campo JSON/JSONL usan PascalCase, incluidos Amcache
y los manifiestos de auto-parse. Las siglas permanecen en mayúsculas: ProcessID,
TimestampUTC, UserSID, SHA256. Una palabra que sigue a unas siglas se separa con un guion:
IP-Address, MFT-Entry, USN-Journal. Con jq, entrecomille los campos con guion:
.["IP-Address"].
El CSV predeterminado de la MFT utiliza encabezados más cortos y legibles, como EntryNum, Ext,
Dir, HasADS, Size, Created (SI) y Created (FN). Consulte la
referencia de campos de la MFT para ver su esquema CSV completo. Los pares de
marcas de tiempo siguen el orden MACB: DataModified, Accessed, MetadataChanged, Created, con SI
antes que FN. En las herramientas CSV, entrecomille los encabezados que contengan espacios o signos
de puntuación.
Los valores de evidencia conservan su grafía original. Las claves de diccionario proporcionadas por
la fuente, como los nombres de valores del Registro bajo Details/DataRaw y los nombres de
Zone.Identifier bajo ZoneIdentifier, tampoco se modifican. Los diccionarios ValueState y
Raw de SRUM usan las mismas etiquetas que sus columnas de datos. Si se produce una colisión de
normalización, se notifica en lugar de descartar un campo de forma silenciosa.
Esto modifica los esquemas de exportación anteriores. Vuelva a generar los resultados existentes y
actualice las consultas guardadas (por ejemplo, .record_type pasa a ser .RecordType y el
full_path de Amcache pasa a ser FullPath). Los informes de texto legibles por personas y los
formatos de entrada y configuración mantienen sus convenciones actuales.
Nombres de campo abreviados¶
Las siguientes etiquetas se aplican a las exportaciones CSV, JSON y JSONL, incluidos el análisis
automático y los manifiestos. Actualice los filtros guardados de jq, xsv y hojas de cálculo al
volver a generar resultados antiguos. Solo cambian las etiquetas de salida; los valores de
evidencia y los nombres de valores del Registro sin procesar conservan su grafía original.
| Etiqueta anterior | Etiqueta actual |
|---|---|
ADS |
HasADS |
Application |
App |
ApplicationCompany |
AppCompany |
ApplicationCompanyRaw |
AppCompanyRaw |
ApplicationPath |
AppPath |
Arguments |
Args |
Attributes |
Attr |
AttributeType |
AttrType |
BytesRecvd |
BytesReceived |
Computer |
Comp |
ComputerName |
CompName |
ComputerNameLastWrittenUTC |
CompNameLastWrittenUTC |
Directories |
Dir |
FileName |
Filename |
MicrosecondZeros |
ZeroU-Secs |
SI-BeforeFN |
SI<FN |
UserName |
User |
Username |
User |
UserNameSource |
UserSource |
Users |
User |
La salida CSV de MFT utiliza columnas específicas: File (Filename), SN (Sequence Number), ParentEntryNum (ParentEntryNumber), ParentSN (Parent Sequence Number), USN (Update Sequence Number), LogfileSN (Logfile Sequence Number), SID (Security ID), Type (Name Type) y RefCnt (Reference Count). También se aplican a los CSV de MFT de auto-parse; consulta los campos de salida de MFT.
La hora del JSON nativo de información del sistema es CompNameLastWritten (CSV:
CompNameLastWrittenUTC). HasADS es un indicador booleano; Dir en Prefetch contiene la lista
de directorios registrada. User conserva el tipo propio de cada artefacto: una cadena para un
nombre de cuenta o la lista de usuarios asociados en la salida de USB. No implica una identidad que
haya ejecutado algo. Entrecomille los signos de puntuación en las consultas: ."SI<FN" y
.["ZeroU-Secs"].
JSON¶
JSON almacena el resultado completo como un único documento. Conserva matrices, estructuras anidadas, valores nulos, enteros grandes y distinciones que un CSV plano no siempre puede representar.
JSON Lines¶
JSONL escribe un objeto JSON independiente por línea. Funciona bien en flujo y se integra de forma
natural con jq:
juntei parse-registry services -d evidence/ -t jsonl \
| jq -c 'select(.StartType == "automatic") | {Host, ServiceName, ImagePath}'
Cuando la salida estructurada se dirige a la salida estándar, Juntei envía el progreso y los mensajes a la salida de error estándar para que una tubería reciba únicamente datos.
auto-parse -j timeline.jsonl crea un conjunto de datos JSONL adicional para una recopilación
completa de varios hosts, sin dejar de generar los resultados CSV clasificados. Añada -t json o
-t jsonl para cambiar el formato de cada resultado individual. Cada registro tiene los campos
Comp y Artifact para que su origen siga siendo claro tras la ingesta en un SIEM.
UTC y precisión¶
Juntei da formato a las horas analizadas en UTC con RFC 3339 cuando el formato lo permite. Algunos artefactos tienen una precisión de 100 nanosegundos; otros almacenan segundos, hora FAT, intervalos de agregación o ninguna hora. Más dígitos no significan más exactitud: entienda siempre el campo de origen que se describe en la página de su artefacto.
UTC utiliza la forma de los registros de eventos de Windows 2026-10-20T08:46:38.2001668Z,
conservando la precisión fraccionaria disponible. auto-parse -Z "+09:00" muestra los instantes
analizados con un desplazamiento fijo explícito en todos sus formatos de resultado y en su
exportación -j opcional. El valor predeterminado es UTC, independientemente del equipo en el que
se ejecute Juntei. Los valores sin procesar y las horas locales sin zona se mantienen tal como se
registraron; consulte zonas horarias de salida.
Daños y valores ausentes¶
Los valores vacíos, null, NA, Problems y los campos de estado específicos de cada analizador
tienen significado. Pueden indicar que el artefacto no almacenaba un valor, que el registro estaba
dañado, que el formato no lo admite o que el analizador no pudo resolverlo. No sustituya todos los
valores vacíos por cero.
Línea de tiempo normalizada¶
super-timeline crea un esquema de eventos CSV/JSONL común, con
el significado de cada marca de tiempo etiquetado y referencias de origen. La salida no se ordena
de forma predeterminada; --sort habilita la ordenación cronológica y la consolidación de
duplicados. También admite un perfil de importación para Timesketch. Las exportaciones nativas de
los analizadores y auto-parse -j mantienen sus esquemas actuales.