Detectar inicios de sesión en Windows
¿Sospechas que alguien usa tu computadora? Aprende a usar un comando de PowerShell para listar cada inicio de sesión, exitoso o fallido, con fecha, hora y nombre de usuario.
La Necesidad Invisible
Imagina que dejas tu computadora encendida en la oficina, en casa o en un espacio compartido. Al volver, todo parece igual, pero algo te inquieta: ¿alguien la usó mientras no estabas? ¿Revisó tus archivos, tu correo o intentó adivinar tu contraseña?
Windows no muestra una alerta cuando un usuario inicia sesión, pero sí lo anota en un registro oculto. El problema es que este registro (el Visor de Eventos) es tan técnico y abrumador que la mayoría de la gente nunca lo abre.
La necesidad es clara: queremos una forma sencilla, rápida y confiable de saber QUIÉN, CUÁNDO y CÓMO (si falló o no) intentó acceder a nuestra computadora.
La solución: PowerShell + Filtros de Eventos
En lugar de navegar entre cientos de eventos manualmente, usaremos una herramienta que ya viene incluida en Windows: PowerShell.
PowerShell nos permite hacer una pregunta precisa al sistema: “Muéstrame solo los eventos de seguridad con ID 4624 (inicio exitoso) o 4625 (inicio fallido), y dame la información que me importa en formato de tabla”.
El resultado es una respuesta inmediata, clara y accionable.
Paso a paso: El comando mágico
Paso 1: Abrir PowerShell como administrador
Presiona Win + X (o haz clic derecho en el botón de Inicio).
Selecciona “Windows PowerShell (Administrador)” o “Terminal (Administrador)”.
Confirma cualquier advertencia de seguridad.
Paso 2: Copiar y pegar el comando
Una vez abierta la ventana azul (o negra) de PowerShell, copia exactamente este comando y luego presiona ENTER:
Get-WinEvent -FilterHashtable @{LogName=’Security’; ID=4624,4625} | Select-Object TimeCreated, Id, @{N=’Usuario’;E={$_.Properties[5].Value}}, @{N=’TipoLogon’;E={$_.Properties[8].Value}} | Format-Table -AutoSize
Paso 3: Interpretar los resultados
Verás una tabla como esta (ejemplo simplificado):
TimeCreated Id Usuario TipoLogon
———– — ——- ———
23/03/2025 14:32:15 4624 TuUsuario 2
23/03/2025 08:12:01 4624 TuUsuario 7
22/03/2025 22:03:44 4625 Administrador 2
¿Qué significa cada columna?
TimeCreated: Fecha y hora exacta del intento.
Id: Corresponde al ID del evento
- 4624 → Inicio de sesión exitoso.
- 4625 → Inicio de sesión fallido (contraseña incorrecta, usuario no existe, etc.).
Usuario: El nombre de la cuenta que intentó loguearse.
TipoLogon: Un código que indica cómo se hizo el intento. Los más importantes son:
- 2 → Inicio de sesión local (directamente en la PC, al encender o desbloquear).
- 3 → Acceso por red (ej: compartir archivos).
- 7 → Desbloqueo de pantalla (cuando estaba bloqueada).
- 10 → Escritorio remoto (RDP).
Mi sugerencia
Con un solo comando de PowerShell, hemos pasado de la incertidumbre a la certeza. Ahora puedes saber, en segundos, si alguien ha usado tu computadora sin permiso.
Mi recomendación personal es que ejecutes este comando una vez por semana como parte de tu rutina de higiene digital. Si algún día ves un inicio de sesión 4624 con un TipoLogon 2 ó 10 en un horario donde sabes que no estabas usando la PC… ahí tienes una señal clara para investigar más (cambiar contraseñas, revisar archivos recientes, etc.).
¿Te resultó útil? Comparte este artículo con quien tenga una computadora compartida o temas de privacidad.


