Windows Vulnerability Assessment - Identificación de Configuraciones Inseguras

🎯 Objetivo

Identificar configuraciones inseguras en el sistema Windows que puedan permitir escalada de privilegios, específicamente enfocándonos en:

  • 📂 Directorio con permisos de escritura: C:\ProgramData

  • Tarea programada: ejecuta backupprep.ps1 como Administrator


⚙️ Introducción

🧠 Concepto

Windows Scheduled Tasks permite automatizar tareas ejecutando programas o scripts según un trigger (evento) y una acción (tarea).
Administradores lo usan para mantenimiento o respaldos, pero si se configuran incorrectamente, pueden ser armas para atacantes ⚔️.

Cada tarea tiene dos partes:

Parte Descripción
Trigger Cuándo se ejecuta (ej. diario, al iniciar sesión, al arrancar el sistema)
Action Qué ejecuta (ej. un script PowerShell o un binario)

Los administradores pueden definir:

💣

Si una tarea ejecuta un script como Administrator, y ese script se encuentra en un directorio escribible por usuarios estándar, tenemos un vector de escalada de privilegios directo.


🔍 Enumeración del Directorio Vulnerable

Verificamos los contenidos del directorio C:\ProgramData, al cual el usuario john tiene permisos de escritura:

ls

📋 Resultado:

Pasted image 20251006184716.png

💡 Observación:

El directorio CorpBackup destaca porque coincide con el nombre del script de respaldo (backupprep.ps1) mencionado en la tarea programada.


📁 Explorando CorpBackup

ls .\CorpBackup\`

📦 Contenido:

{60B44F94-AFB9-4A97-A858-FA0ED74CFB9A}.png

Dentro del subdirectorio Scripts:

ls .\CorpBackup\Scripts\

📜 Resultado:

{B3FD125B-B7D7-473B-81EE-CEC0E79E51EE} 1.png

Y en Logs:

ls .\CorpBackup\Logs\

📘 Resultado:

{8534D4F8-49E0-45E0-B33F-F67539CB8289}.png


🧾 Verificación de Permisos con icacls

Para confirmar los permisos del archivo backupprep.ps1, usamos icacls:

icacls "C:\ProgramData\CorpBackup\Scripts\backupprep.ps1

📄 Resultado:

Pasted image 20251006185124.png

🚨 Análisis del Resultado

🚨 Vulnerabilidad Crítica Detectada

El permiso Everyone:(I)(F) significa Full Control para todos los usuarios.
🔓 Cualquier usuario autenticado puede leer, modificar o eliminar este script.

📚 Resumen de Permisos:

Permiso Significado
R Read – Leer contenido y atributos
W Write – Modificar o crear archivos
D Delete – Eliminar archivos o carpetas
F Full Control – Todos los permisos (R, W, D, y más)
M Modify – Leer, escribir y borrar (sin cambiar permisos)

⚔️ Implicación de Seguridad

💥 Escenario de Explotación

  1. El script backupprep.ps1 se ejecuta como Administrator a través de una tarea programada.

  2. El usuario john puede editar el contenido del script.

  3. Al insertar un payload PowerShell malicioso (por ejemplo, Add-LocalGroupMember -Group "Administrators" -Member "john"), el script otorgaría privilegios administrativos al usuario estándar.

Resultado: Ejecución de código con privilegios de SYSTEM o Administrator 🧨


🧩 Conclusión

Evaluación Completa

  • Se confirma que C:\ProgramData tiene permisos de escritura para usuarios comunes.

  • El script backupprep.ps1 es ejecutado por el administrador en una tarea programada.

  • El archivo es modificable por cualquiera, permitiendo la inyección de comandos maliciosos.

🔥 Este hallazgo representa un riesgo de escalada de privilegios crítica (CVE-0 local).