Loading
_ DESCIFRANDO CONEXIÓN SEGURA...

PowerShell: objetos y canalización para leer registros

5 tareas · 38 min · Principiante

Martes 11 de mayo. En Textiles del Carare alguien exportó a un CSV los eventos de inicio de sesión de un servidor Windows y de dos puestos. Aquí aprendes a leer esa exportación con PowerShell: Import-Csv, Where-Object, Group-Object, Sort-Object y Select-Object, y la diferencia que hace distinta su canalización de la de Bash. Todo es lectura de un archivo ya exportado: ningún guion consulta equipos ni escribe nada, y en la consola ves los datos, el código y lo que imprimieron.

0 de 5 · 0%

Objetivo de la sala

Martes 11 de mayo. En Textiles del Carare alguien exportó a un CSV los eventos de inicio de sesión de un servidor Windows y de dos puestos. Aquí aprendes a leer esa exportación con PowerShell: Import-Csv, Where-Object, Group-Object, Sort-Object y Select-Object, y la diferencia que hace distinta su canalización de la de Bash. Todo es lectura de un archivo ya exportado: ningún guion consulta equipos ni escribe nada, y en la consola ves los datos, el código y lo que imprimieron.

En Bash cada herramienta recibe texto y hay que cortarlo por columnas. En PowerShell lo que viaja por la tubería son objetos, cada uno con sus propiedades con nombre. Import-Csv convierte cada fila del CSV en un objeto con una propiedad por columna; Where-Object { $_.Id -eq '4625' } deja los objetos cuya propiedad Id vale eso ($_ es el objeto actual); Group-Object Cuenta los agrupa por esa propiedad y produce objetos nuevos con Count y Name.

Por eso se filtra y agrupa por nombre de propiedad, no por posición de columna. Un detalle: Import-Csv entrega todo como texto, así que el Id se compara con '4625'.

Lee resumen.ps1 de arriba abajo.

Responde para continuar

¿Qué es lo que pasa de un paso al siguiente en la canalización de resumen.ps1?

Ver pista de ayuda

Fíjate en cómo `Where-Object` y `Group-Object` nombran lo que usan.

El evento 4625 es un inicio de sesión fallido y el 4624 uno correcto, según la documentación de Microsoft sobre la auditoría de inicios de sesión. El guion filtra los 4625, los agrupa por cuenta y los ordena de mayor a menor con Sort-Object Count -Descending.

Un nombre genérico de cuenta de administración que acumula fallos desde fuera es un patrón conocido de intentos de adivinar claves: no prueba nada por sí solo, pero es lo primero que se mira.

Responde para continuar

Escribe la cuenta con más fallos de inicio de sesión (4625).

Ver pista de ayuda

La primera tabla de la salida guardada está ordenada de mayor a menor.

La columna TipoInicio dice cómo se entró: 2 es interactivo (frente al equipo), 3 es por la red y 10 es escritorio remoto (RemoteInteractive), también según Microsoft. Un inicio correcto de tipo 10 es normal en un servidor que se administra de forma remota, y deja de serlo cuando viene de una dirección que no es de la empresa.

El guion lista los 4624 de tipo 10 con hora, cuenta, dirección y equipo. Lee la tabla y separa las direcciones de la planta (10.72.4.0/24) de la que no lo es.

Responde para continuar

Escribe la dirección externa desde la que se abrió una sesión de escritorio remoto.

Ver pista de ayuda

La segunda tabla de la salida tiene dos filas; una viene de la planta.

El orden de la canalización importa. Select-Object Cuenta, IpOrigen recorta cada objeto a esas dos propiedades y descarta el resto. Si después se filtra por una propiedad recortada, el filtro no encuentra nada que comparar y la salida queda vacía sin ningún error. Una salida vacía no siempre significa que no hay datos: a veces significa que el guion preguntó por algo que ya no tenía.

Lee resumen_orden_invertido.ps1 y su salida guardada.

Responde para continuar

La variante imprime solo el encabezado y el aviso final, y no muestra ningún fallo. ¿Por qué?

Ver pista de ayuda

Compara con la primera salida: allí sí había fallos con el mismo archivo.

La tabla de fallos por cuenta muestra Count por cuenta, pero no un total. Cuando el resumen no trae la cifra, se obtiene sumando lo que sí trae, y se comprueba contra los datos de origen.

Responde para continuar

¿Cuántos eventos 4625 tiene el archivo exportado?

Ver pista de ayuda

Suma la columna Count de la primera tabla.

Inicia sesión para registrar tus puntos y progreso en el ranking.

Whoami-Labs Pro

Whoami-Labs Pro utiliza cookies

Utilizamos cookies y almacenamiento local para el funcionamiento del sitio, seguridad de sesión y, si lo autorizas, analítica y marketing. Puedes aceptar, rechazar o personalizar. Política de Privacidad