⏸️WINDOWS
enumeración de distintas vulnerabilidades o malas configuraciones que pueden llevar a escaladas de privilegios en sistemas Windows, junto con breves explicaciones sobre cada una, por qué ocurren y cómo se pueden detectar y mitigar manualmente:
Uso de Credenciales Débiles:
Descripción: Las credenciales débiles o contraseñas fáciles de adivinar pueden permitir a un atacante obtener acceso no autorizado y, potencialmente, escalar privilegios.
Detección Manual: Revisar y mejorar las políticas de contraseñas, asegurarse de que las cuentas de usuario utilicen contraseñas fuertes y realizar auditorías de seguridad periódicas.
Mitigación: Implementar políticas de contraseñas sólidas, realizar capacitación en seguridad para concientizar a los usuarios y utilizar soluciones de autenticación multifactor (MFA).
Vulnerabilidades de Día Cero:
Descripción: Las vulnerabilidades de día cero son defectos de seguridad desconocidos que pueden ser explotados antes de que se publiquen parches.
Detección Manual: Estar al tanto de las actualizaciones de seguridad y aplicar parches tan pronto como estén disponibles.
Mitigación: Mantener el sistema operativo y las aplicaciones actualizadas, utilizar soluciones de seguridad y firewall, y seguir las mejores prácticas de seguridad.
Configuraciones Incorrectas de Permisos:
Descripción: Permisos inadecuados en archivos, carpetas o registros pueden permitir que usuarios no autorizados realicen acciones que conducen a escaladas de privilegios.
Detección Manual: Revisar y ajustar los permisos de archivos y carpetas, utilizando herramientas como
icacls
o el administrador de archivos.Mitigación: Aplicar el principio de privilegios mínimos, revisar y corregir configuraciones de permisos incorrectas y utilizar listas de control de acceso (ACL) adecuadas.
Elevación de Privilegios por DLL Hijacking:
Descripción: Un atacante puede reemplazar una DLL legítima con una maliciosa, lo que permite ejecutar código con privilegios elevados.
Detección Manual: Revisar configuraciones de aplicaciones en busca de rutas DLL inseguras y asegurarse de que solo se carguen DLLs de ubicaciones confiables.
Mitigación: Utilizar rutas absolutas al cargar DLLs, asegurar que los permisos de archivos sean correctos y aplicar parches para corregir vulnerabilidades conocidas.
Configuraciones de Servicios Inseguras:
Descripción: Servicios mal configurados pueden permitir a atacantes realizar escaladas de privilegios.
Detección Manual: Revisar la configuración de servicios utilizando herramientas como
services.msc
y asegurarse de que solo se ejecuten servicios necesarios.Mitigación: Deshabilitar servicios innecesarios, configurar servicios con el principio de menor privilegio y aplicar parches de seguridad.
Ataques Pass-the-Hash:
Descripción: Los ataques Pass-the-Hash implican robar y utilizar hashes de contraseñas en lugar de las contraseñas reales.
Detección Manual: Monitorear y analizar registros de eventos de seguridad para detectar actividad inusual relacionada con credenciales.
Mitigación: Utilizar medidas de seguridad como Kerberos, implementar políticas de seguridad de red y utilizar soluciones que protejan contra ataques Pass-the-Hash.
Ejecución de Aplicaciones con Privilegios Elevados:
Descripción: Aplicaciones que se ejecutan con privilegios elevados pueden ser objetivos para escaladas de privilegios.
Detección Manual: Revisar la configuración de aplicaciones y asegurarse de que se ejecuten con privilegios mínimos necesarios.
Mitigación: Utilizar cuentas de usuario estándar para tareas cotidianas, limitar los privilegios de las cuentas de administrador y revisar la configuración de la política de ejecución de aplicaciones.
Configuraciones de Autorun:
Descripción: Configuraciones de autorun incorrectas pueden permitir la ejecución automática de malware o scripts maliciosos.
Detección Manual: Revisar y deshabilitar configuraciones de autorun innecesarias, como unidades USB automáticas.
Mitigación: Deshabilitar autorun en dispositivos extraíbles, utilizar soluciones antivirus y aplicar políticas de grupo para controlar la ejecución automática.
Ejecución de Scripts No Firmados:
Descripción: La ejecución de scripts no firmados puede ser explotada para ejecutar código malicioso con privilegios elevados.
Detección Manual: Revisar y restringir la ejecución de scripts no firmados utilizando políticas de ejecución de PowerShell.
Mitigación: Configurar políticas de ejecución restrictivas, firmar scripts y aplicar restricciones de ejecución.
Configuraciones de UAC (Control de Cuentas de Usuario):
Descripción: Configuraciones incorrectas de UAC pueden permitir la ejecución de aplicaciones con privilegios elevados sin notificaciones.
Detección Manual: Revisar y ajustar configuraciones de UAC para garantizar notificaciones adecuadas.
Mitigación: Mantener activo UAC, configurar para notificaciones adecuadas y educar a los usuarios sobre las alertas de seguridad.
Elevación de Privilegios por Escritura de Registro:
Descripción: Un atacant
se puede modificar configuraciones del Registro para ejecutar código con privilegios elevados.
Detección Manual: Monitorear cambios inesperados en las claves del Registro y revisar permisos de claves críticas.
Mitigación: Limitar los permisos de escritura en el Registro, asegurar claves sensibles y auditar cambios en el Registro.
Ejecución de Servicios como SYSTEM:
Descripción: La ejecución de servicios como SYSTEM puede permitir a un atacante realizar acciones con privilegios elevados.
Detección Manual: Revisar la configuración de servicios y asegurarse de que se ejecuten con cuentas de servicio adecuadas.
Mitigación: Configurar servicios para ejecutarse con cuentas de servicio mínimas necesarias y revisar regularmente la configuración de servicios.
Uso de Cuentas de Usuario Duplicadas o No Deshabilitadas:
Descripción: Cuentas de usuario duplicadas o no deshabilitadas pueden ser explotadas para obtener acceso no autorizado.
Detección Manual: Realizar auditorías de cuentas de usuario y deshabilitar cuentas no utilizadas.
Mitigación: Deshabilitar cuentas de usuario no utilizadas, implementar políticas de eliminación de cuentas y realizar auditorías de seguridad.
Vulnerabilidades en Servidores Web y Aplicaciones Web:
Descripción: Las vulnerabilidades en servidores web y aplicaciones pueden permitir a un atacante ejecutar código con privilegios elevados.
Detección Manual: Monitorear y aplicar parches de seguridad en servidores web y aplicaciones.
Mitigación: Mantener actualizados servidores web y aplicaciones, realizar análisis de seguridad regular y aplicar medidas de seguridad como firewalls de aplicaciones web (WAF).
Configuraciones Incorrectas de Directivas de Grupo (GPO):
Descripción: Directivas de Grupo mal configuradas pueden permitir acciones no autorizadas.
Detección Manual: Revisar configuraciones de GPO y asegurarse de que reflejen las políticas de seguridad.
Mitigación: Revisar y corregir configuraciones de GPO, aplicar el principio de privilegios mínimos y realizar auditorías de configuraciones de seguridad.
Uso de Herramientas de Administración No Seguras:
Descripción: Herramientas de administración no seguras pueden ser explotadas para escaladas de privilegios.
Detección Manual: Revisar las herramientas utilizadas para administración y asegurarse de que sean seguras.
Mitigación: Utilizar herramientas de administración seguras, limitar el acceso a estas herramientas y aplicar autenticación fuerte.
Malas Prácticas en Configuraciones de Firewall:
Descripción: Configuraciones incorrectas en firewalls pueden permitir el tráfico malicioso.
Detección Manual: Revisar configuraciones de firewall y realizar análisis de tráfico.
Mitigación: Configurar firewalls según las mejores prácticas, restringir tráfico innecesario y utilizar soluciones de seguridad de red.
Ejecución de Scripts de PowerShell No Restringida:
Descripción: La ejecución no restringida de scripts de PowerShell puede ser aprovechada para realizar acciones maliciosas.
Detección Manual: Revisar configuraciones de ejecución de scripts de PowerShell y restringir según sea necesario.
Mitigación: Configurar políticas de ejecución de PowerShell, restringir scripts no firmados y aplicar directivas de seguridad.
Elevación de Privilegios por Manipulación de Servicios:
Descripción: Un atacante puede manipular servicios para ejecutar código con privilegios elevados.
Detección Manual: Revisar y auditar configuraciones de servicios, asegurarse de que solo se ejecuten servicios necesarios.
Mitigación: Configurar servicios para ejecutarse con cuentas de servicio mínimas necesarias, revisar y limitar permisos de servicios.
Uso de Cuentas de Usuario Predeterminadas:
Descripción: Cuentas de usuario predeterminadas, como "Administrator", pueden ser objetivos para escaladas de privilegios.
Detección Manual: Identificar y cambiar contraseñas de cuentas de usuario predeterminadas, revisar y limitar el uso de estas cuentas.
Mitigación: Cambiar contraseñas de cuentas predeterminadas, deshabilitar cuentas no utilizadas y utilizar cuentas con privilegios mínimos necesarios.
Elevación de Privilegios por Configuración de Tareas Programadas:
Descripción: Configuraciones incorrectas en tareas programadas pueden permitir ejecución de comandos con privilegios elevados.
Detección Manual: Revisar tareas programadas, asegurarse de que solo se permitan ejecuciones necesarias.
Mitigación: Limitar permisos en tareas programadas, revisar configuraciones de ejecución y deshabilitar tareas no necesarias.
Ataques de Kerberoasting:
Descripción: Ataques de Kerberoasting implican el robo y posterior descifrado de tickets de servicio Kerberos.
Detección Manual: Monitorear eventos relacionados con Kerberos y detectar comportamientos inusuales.
Mitigación: Configurar políticas de contraseñas fuertes, limitar el acceso a hashes Kerberos y monitorear eventos de seguridad.
Configuración Incorrecta de Políticas de Grupo (GPO):
Descripción: Configuraciones de GPO incorrectas pueden permitir acciones no autorizadas.
Detección Manual: Revisar configuraciones de GPO y asegurarse de que reflejen las políticas de seguridad.
Mitigación: Realizar auditorías regulares de configuraciones de GPO, aplicar políticas de seguridad y limitar el acceso a objetos de políticas.
Uso de Cuentas de Servicio con Contraseñas Débiles:
Descripción: Contraseñas débiles en cuentas de servicio pueden ser explotadas para escaladas de privilegios.
Detección Manual: Revisar contraseñas de cuentas de servicio, aplicar políticas de contraseñas fuertes.
Mitigación: Utilizar contraseñas fuertes en cuentas de servicio, cambiar contraseñas regularmente y utilizar soluciones de administración de contraseñas.
Ejecución de Aplicaciones No Seguras desde Recursos Compartidos:
Descripción: Ejecutar aplicaciones desde recursos compartidos puede permitir ejecución de código malicioso.
Detección Manual: Revisar configuraciones de seguridad de recursos compartidos y aplicar restricciones.
Mitigación: Limitar la ejecución de aplicaciones desde recursos compartidos, aplicar políticas de seguridad de red y utilizar soluciones de firewall.
Uso de Versiones Desactualizadas de Software:
Descripción: Versiones desactualizadas de software pueden contener vulnerabilidades conocidas que permiten escaladas de privilegios.
Detección Manual: Realizar análisis de vulnerabilidades y mantener actualizado el software con parches de seguridad.
Mitigación: Implementar un programa de gestión de parches, mantener actualizado el software y aplicar las últimas actualizaciones de seguridad.
Uso de Cuentas de Usuario con Demasiados Privilegios:
Descripción: Otorgar cuentas de usuario más privilegios de los necesarios aumenta el riesgo de escaladas de privilegios.
Detección Manual: Revisar y limitar los privilegios de las cuentas de usuario según el principio de privilegios mínimos.
Mitigación: Aplicar el principio de privilegios mínimos, limitar el acceso a funciones y recursos necesarios y realizar auditorías periódicas.
Ataques de Pass-the-Ticket (PtT):
Descripción: Los ataques PtT implican el uso indebido de tickets Kerberos para obtener acceso no autorizado.
Detección Manual: Monitorear eventos relacionados con Kerberos y detectar actividades anómalas.
Mitigación: Implementar políticas de seguridad de Kerberos, monitorear eventos de seguridad y limitar el acceso a tickets Kerberos.
Ejecución de Aplicaciones con Configuraciones de Seguridad Bajas:
Descripción: Configuraciones de seguridad bajas en aplicaciones pueden permitir ejecución de código malicioso.
Detección Manual: Revisar y ajustar configuraciones de seguridad de aplicaciones según las mejores prácticas.
Mitigación: Configurar aplicaciones con configuraciones de seguridad más estrictas, utilizar firewalls de aplicaciones web y realizar pruebas de seguridad.
Uso de Credenciales Almacenadas de Forma Insegura:
Descripción: Almacenar credenciales de forma insegura en scripts, archivos o configuraciones puede facilitar su acceso no autorizado.
Detección Manual: Revisar y asegurar cómo se almacenan las credenciales en scripts y configuraciones.
Mitigación: Utilizar soluciones seguras de gestión de credenciales, evitar el almacenamiento en texto plano y cifrar las credenciales cuando sea necesario.
Estas vulnerabilidades y malas configuraciones subrayan la importancia de una sólida postura de seguridad que incluya prácticas de administración adecuadas, monitoreo constante y la aplicación de políticas y configuraciones de seguridad robustas.
Herramientas que automatizan el análisis de escaladas de privilegios en sistemas Windows, junto con sus enlaces de GitHub, instrucciones básicas de instalación y comandos para ejecutarlas.
Windows-Exploit-Suggester:
GitHub: Windows-Exploit-Suggester
Instalación: Descarga el script desde GitHub. Puedes clonar el repositorio o descargar el archivo ZIP.
Ejecución:
python windows-exploit-suggester.py --update python windows-exploit-suggester.py --database <ruta a la base de datos> --systeminfo <archivo systeminfo>
PowerUp:
GitHub: PowerUp
Instalación: Puedes clonar el repositorio o descargar el archivo ZIP. PowerUp es parte de PowerSploit.
Ejecución: Importa el módulo en PowerShell y ejecuta los comandos específicos para revisar configuraciones de seguridad.
Import-Module PowerUp.ps1 Invoke-AllChecks
Sherlock:
GitHub: Sherlock
Instalación: Descarga el script desde GitHub.
Ejecución:
.\Sherlock.ps1
Windows-Privesc-Check:
GitHub: Windows-Privesc-Check
Instalación: Clona el repositorio o descarga el archivo ZIP.
Ejecución:
./windows-privesc-check2.exe
Recuerda revisar la documentación de cada herramienta para obtener información detallada sobre su uso y capacidades.
BeRoot:
GitHub: BeRoot
Instalación: Clona el repositorio o descarga el archivo ZIP.
Ejecución:
powershell -exec bypass -c "Import-Module .\BeRoot.ps1; Invoke-BeRoot"
Windows Exploit Suggester Next Generation (WES-NG):
GitHub: WES-NG
Instalación: Descarga el archivo ejecutable desde la sección de lanzamientos en GitHub.
Ejecución:
./wes.py
JAWS: Just Another Windows (Enum) Script:
GitHub: JAWS
Instalación: Clona el repositorio o descarga el archivo ZIP.
Ejecución:
powershell -exec bypass -c "Import-Module .\jaws-enum.ps1; Invoke-JAWS"
WinPEAS:
GitHub: WinPEAS
Instalación: Clona el repositorio o descarga el archivo ZIP.
Ejecución:
.\winPEAS.exe
Estas herramientas proporcionan diferentes enfoques para analizar configuraciones de seguridad y buscar posibles rutas de escalada de privilegios. Asegúrate de revisar la documentación de cada herramienta para comprender completamente sus características y cómo interpretar los resultados.
Last updated