Objetivo
Analizar rutas de escalada local en Windows
Enfoque
Privilegios, servicios, credenciales y permisos
Resultado
Validar impacto local con evidencia controlada
19.1 Introducción
Después de obtener acceso autorizado a un sistema Windows, el siguiente paso es entender el contexto local: usuario actual, privilegios, grupos, servicios, permisos, credenciales y relación con el dominio si existe.
Windows tiene un modelo de seguridad distinto a Linux. Usa tokens de acceso, privilegios específicos, ACL, servicios, UAC, registro, políticas locales y, en entornos corporativos, integración con Active Directory.
Este tema presenta una metodología de análisis local en Windows para pentesting: cómo enumerar, qué riesgos buscar, cómo validar sin dañar y cómo documentar hallazgos.
19.2 Principios de trabajo en Windows
El acceso a un sistema Windows puede disparar registros, alertas de EDR o políticas defensivas. Por eso, cada acción debe tener propósito.
- Confirmar que el sistema está dentro del alcance.
- Identificar si es estación, servidor o controlador de dominio.
- Determinar usuario, grupos y privilegios actuales.
- Evitar cambios persistentes sin autorización.
- No desactivar defensas ni borrar logs salvo objetivo explícito.
- Recolectar evidencia mínima y protegida.
- Detenerse ante credenciales o datos sensibles fuera de lo esperado.
En Windows, una ruta de escalada puede aparecer por un permiso débil en un servicio, una credencial almacenada o un privilegio de token mal gestionado.
19.3 Enumeración local inicial
La enumeración local busca entender el sistema antes de probar cualquier ruta de escalada.
| Pregunta |
Qué buscar |
Riesgo asociado |
| ¿Quién soy? |
Usuario, grupos, privilegios |
Permisos administrativos o privilegios peligrosos |
| ¿Qué sistema es? |
Versión, parches, rol, dominio |
Vulnerabilidades locales o mala configuración |
| ¿Qué servicios corren? |
Servicios, rutas, cuentas, permisos |
Servicios modificables o rutas inseguras |
| ¿Qué puedo leer? |
Archivos, perfiles, configs, backups |
Secretos o datos sensibles expuestos |
| ¿Qué puedo modificar? |
ACL en archivos, registro, servicios |
Escalada por modificación de ejecución privilegiada |
19.4 Usuarios, grupos y roles
Los grupos locales y de dominio determinan gran parte del impacto. Un usuario puede parecer limitado, pero pertenecer a grupos con permisos relevantes.
- Administrators: control local amplio.
- Remote Desktop Users: acceso interactivo remoto.
- Backup Operators: acceso a archivos protegidos para respaldo.
- Event Log Readers: lectura de eventos que pueden contener información sensible.
- Power Users: legado, aún relevante en algunos entornos.
- Domain Users: grupo base en Active Directory.
La evidencia debe relacionar pertenencia con impacto real, no solo listar grupos.
19.5 Tokens y privilegios
Windows asigna tokens de acceso que contienen identidad, grupos y privilegios. Algunos privilegios pueden ser muy sensibles si están habilitados o pueden habilitarse.
| Privilegio |
Riesgo |
Comentario |
| SeImpersonatePrivilege |
Abuso de impersonación |
Puede permitir escalada en ciertos contextos de servicio |
| SeDebugPrivilege |
Acceso a procesos de alto privilegio |
Muy sensible en cuentas administrativas |
| SeBackupPrivilege |
Lectura de archivos protegidos |
Puede exponer bases de credenciales o datos |
| SeRestorePrivilege |
Escritura sobre archivos protegidos |
Puede modificar rutas críticas |
| SeAssignPrimaryTokenPrivilege |
Manipulación de tokens |
Riesgo alto combinado con otros permisos |
19.6 UAC y elevación
User Account Control separa sesiones administrativas de operaciones elevadas. No es una frontera de seguridad absoluta, pero sí afecta cómo se ejecutan acciones privilegiadas.
- Determinar si el usuario pertenece a Administrators.
- Verificar si la sesión está elevada o limitada.
- Revisar políticas de UAC.
- No intentar bypasses de UAC fuera del alcance.
- Documentar si una acción requiere consentimiento o credenciales.
UAC no debe tratarse como sustituto de mínimo privilegio. Un usuario administrador sigue representando alto riesgo.
19.7 Servicios Windows
Los servicios son una fuente frecuente de escalada local. Pueden ejecutarse como LocalSystem, NetworkService, LocalService o cuentas de dominio. Si un usuario puede modificar el binario, la ruta o la configuración de un servicio privilegiado, el impacto puede ser alto.
- Servicios con rutas no entrecomilladas.
- Binarios de servicio escribibles.
- Directorios de servicio con permisos débiles.
- Permisos para modificar configuración del servicio.
- Credenciales de cuentas de servicio.
- Servicios personalizados o de terceros.
19.8 Rutas de servicio no entrecomilladas
Cuando un servicio con espacios en la ruta no usa comillas, Windows puede interpretar partes de la ruta como ejecutables alternativos. El riesgo depende de si el usuario puede escribir en directorios intermedios.
Validación segura:
- Identificar servicio, ruta y cuenta de ejecución.
- Verificar si la ruta contiene espacios y no está entrecomillada.
- Revisar permisos de escritura en directorios intermedios.
- No colocar binarios de prueba sin autorización.
- Documentar condición e impacto potencial.
19.9 Permisos NTFS
NTFS usa ACL para controlar lectura, escritura, ejecución, modificación y propiedad. Un permiso débil puede permitir alterar archivos ejecutados por usuarios privilegiados.
| Permiso |
Riesgo |
Ejemplo |
| Write |
Modificar archivo o crear contenido |
Editar script ejecutado por servicio |
| Modify |
Editar y eliminar |
Reemplazar binario de aplicación |
| Full Control |
Control total sobre objeto |
Cambiar permisos o propietario |
| WriteOwner |
Cambiar propietario |
Tomar control indirecto de archivo |
| WriteDACL |
Modificar permisos |
Concederse acceso adicional |
19.10 Registro de Windows
El registro almacena configuración del sistema y aplicaciones. Permisos débiles en claves sensibles pueden permitir modificar comportamiento privilegiado.
- Claves de servicios.
- Configuraciones de autoarranque.
- Parámetros de aplicaciones con privilegios.
- Credenciales o secretos guardados por aplicaciones.
- Configuraciones de instalación o despliegue.
No deben modificarse claves de registro para demostrar impacto salvo autorización clara y plan de reversión.
19.11 Tareas programadas
Las tareas programadas pueden ejecutar scripts o binarios con privilegios elevados. Si un usuario puede modificar el archivo llamado por la tarea, existe una posible ruta de escalada.
- Identificar tarea, usuario de ejecución y trigger.
- Revisar acción ejecutada.
- Verificar permisos sobre binario o script.
- Revisar directorio de trabajo.
- No modificar la tarea sin autorización.
- Documentar condición y ruta de impacto.
19.12 Credenciales almacenadas
Windows puede almacenar credenciales en múltiples lugares: Credential Manager, archivos de configuración, scripts, historial de PowerShell, conexiones RDP, navegadores, tareas programadas o aplicaciones.
- Credenciales guardadas por aplicaciones.
- Scripts con usuarios y contraseñas.
- Archivos de despliegue o backups.
- Historiales de comandos.
- Conexiones remotas guardadas.
- Tokens o claves API en perfiles de usuario.
Encontrar una credencial no autoriza automáticamente su uso. Debe validarse alcance y reportarse con evidencia mínima.
19.13 LSASS y credenciales en memoria
LSASS gestiona autenticación y puede contener material sensible en memoria. Acceder a LSASS es una acción altamente sensible, suele ser detectada por defensas y requiere autorización explícita.
En un pentest estándar, normalmente conviene:
- Revisar políticas de protección como Credential Guard.
- Verificar si el usuario tiene privilegios peligrosos.
- No volcar memoria sin autorización específica.
- Documentar exposición por configuración o privilegios.
- Coordinar con defensa si el objetivo incluye detección.
19.14 PowerShell
PowerShell es una herramienta legítima de administración. En pentesting sirve para enumeración y validación, pero también es monitoreada por defensas modernas.
- Usar comandos necesarios y documentados.
- Evitar scripts ofuscados fuera de ejercicios autorizados.
- Revisar políticas de ejecución y logging.
- Proteger salidas con datos sensibles.
- No deshabilitar defensas o logs salvo alcance específico.
19.15 Windows Defender y EDR
Las soluciones defensivas pueden detectar herramientas, scripts y comportamientos. Esto puede ser parte de la prueba, pero debe estar acordado.
- Confirmar si el equipo defensivo está informado.
- Registrar alertas generadas si son parte del ejercicio.
- No intentar evadir EDR sin autorización.
- Pausar si una herramienta genera respuesta inesperada.
- Coordinar limpieza de artefactos detectados.
Evasión de defensas y escalada local son actividades diferentes. No asumas que una autoriza la otra.
19.16 Vulnerabilidades locales de Windows
Las vulnerabilidades locales de Windows pueden permitir escalada, pero ejecutar exploits de kernel o componentes del sistema puede afectar estabilidad. La validación en producción debe ser conservadora.
- Identificar versión y parches instalados.
- Consultar advisories oficiales.
- Verificar requisitos de explotación.
- Considerar mitigaciones activas.
- Probar exploits solo en laboratorio o con autorización explícita.
- Reportar evidencia indirecta cuando sea suficiente.
19.17 Aplicaciones instaladas
Las aplicaciones de terceros pueden introducir servicios, permisos débiles, actualizadores inseguros, archivos escribibles o credenciales.
- Programas instalados y versiones.
- Directorios de instalación escribibles.
- Servicios asociados a aplicaciones.
- Actualizadores automáticos.
- Archivos de configuración con secretos.
- Componentes sin soporte o desactualizados.
19.18 Recursos compartidos y red
Desde una máquina Windows, la enumeración local puede revelar recursos compartidos, unidades mapeadas, impresoras, conexiones previas y rutas de red.
| Elemento |
Riesgo |
Cuidado |
| Unidades mapeadas |
Acceso a recursos internos |
No explorar fuera de alcance |
| Shares locales |
Archivos expuestos |
Revisar permisos y sensibilidad |
| Sesiones SMB |
Usuarios conectados |
Evitar afectar sesiones reales |
| RDP habilitado |
Acceso interactivo remoto |
Validar autorización antes de usar |
19.19 Evidencia en escalada Windows
La evidencia debe demostrar la ruta de impacto sin modificar innecesariamente el sistema.
- Usuario, grupos y privilegios relevantes.
- Servicio vulnerable, ruta y cuenta de ejecución.
- Permisos NTFS o ACL que permiten modificación.
- Clave de registro afectada y permisos.
- Tarea programada, acción y permisos del archivo.
- Ruta de secreto expuesto con valor enmascarado.
- Versión y parche faltante, si aplica.
19.20 Remediación típica
Las correcciones deben reducir privilegios y eliminar rutas de abuso.
- Aplicar mínimo privilegio a usuarios y grupos.
- Corregir permisos NTFS en rutas de servicios y aplicaciones.
- Entrecomillar rutas de servicios con espacios.
- Restringir modificación de servicios y tareas programadas.
- Eliminar credenciales en archivos y scripts.
- Habilitar protecciones como Credential Guard cuando aplique.
- Actualizar sistema y aplicaciones de terceros.
- Monitorear cambios de servicios, registro y privilegios.
19.21 Errores frecuentes
- Ejecutar herramientas ruidosas sin entender su impacto defensivo.
- Volcar memoria de LSASS sin autorización explícita.
- Modificar servicios para demostrar escalada cuando bastaba con permisos.
- Reportar rutas no entrecomilladas sin verificar permisos de escritura.
- Ignorar tareas programadas y aplicaciones de terceros.
- Copiar credenciales completas como evidencia.
- Intentar bypass de UAC fuera de alcance.
- No diferenciar equipo local, servidor y controlador de dominio.
19.22 Flujo práctico de escalada local
Un flujo responsable puede ser:
- Confirmar alcance y rol del sistema.
- Identificar usuario, grupos, privilegios y dominio.
- Revisar versión, parches y defensas activas.
- Enumerar servicios, rutas y cuentas de ejecución.
- Analizar permisos NTFS y ACL de registro.
- Revisar tareas programadas y aplicaciones instaladas.
- Buscar credenciales con evidencia mínima.
- Evaluar vulnerabilidades locales con cautela.
- Validar rutas sin cambios destructivos.
- Documentar remediación y limpiar artefactos.
19.23 Qué debes recordar de este tema
- Windows usa tokens, privilegios, grupos, ACL, servicios y registro como piezas clave de seguridad.
- Los servicios mal configurados son una ruta común de escalada local.
- Una ruta no entrecomillada solo es relevante si existe permiso de escritura aprovechable.
- Las credenciales locales deben tratarse como evidencia sensible.
- Volcar memoria o evadir defensas requiere autorización explícita.
- La validación debe demostrar impacto con el menor cambio posible.
19.24 Conclusión
La escalada local en Windows exige comprender privilegios, servicios, permisos y credenciales. Muchas rutas críticas no dependen de exploits complejos, sino de configuraciones débiles o secretos mal protegidos.
En el próximo tema veremos post-explotación: recolección de información, persistencia controlada y limpieza, siempre dentro del alcance autorizado y con criterios de mínima intrusión.