Elevación de Privilegios
Configuración de servicios
Configuración de ficheros
Usamos el comando icalcs "C:\ruta\al\fichero\o\directorio"
para conocer la configuración de un fichero, con 3 posibles modos:
(F) Full Control
(M) Modify
(W) Write
Configuración de registros
Una vez nos aparece como resultado "0x1" (que el bit está a 1, es decir, habilitado) podemos generar un exploit a la máquina víctima:
Gestión de contraseñas
Para listar las credenciales almacenadas
Para enviar una copia de la SAM
Tareas programadas
Manipulación de privilegios
Hay 3 posibles formas de evadirlos y aprovecharlos:
Suplantación/Robo de Token - Un atacnte duplica un token existente usando
DuplicateToken(Ex)
. El token puede entonces ser utilizado conImpersonateLoggedOnUser
para permitir que el hilo de llamada suplante el contexto de seguridad de un usuario conectado, o conSetThreatTokento
asignar el token suplantado a un hilo. Esto es útil para cuando el usuario objetivo tiene una sesión de inicio de sesión no de red en el sistema.Crear Proceso con un Token - Un atacante crea un nuevo token de acceso con
DuplicateToken(Ex)
y lo usa conCreateProcessWithTokenW
para crear un nuevo proceso que se ejecuta bajo el contexto de seguridad del usuario suplantado.Creación y suplantación de Token - Un atacante con credenciales pero sin haber iniciado sesión en el sistema puede crear una sesión utilizando
LogonUserfunction
. La función devolverá una copia del token de acceso de la sesión y el atacante puede utilizarSetThreadtTokento
asignar el token a un hilo.
Para saber la configuración que tiene una máquina:
Una vez sabemos los privilegios habilitados, vamos a ver los más interesantes:
SeImpersonatePrivilege
Suplanta a un usuario tras haberse autenticado
SeBackupPrivilege
Da acceso a cualquier fichero sin tener en cuenta su ACL
SeCreateTokenPrivilege
Este token puede ser utilizado solamente si el usuario puede suplantar tokens (incluso sin SeImpersonatePrivilege)
SeLoadDriverPrivilege
Carga y descarga drivers
SeRestorePrivilege
Da permisos de escritura a cualquier fichero.
SeTakeOwnershipPrivilege
Toma el control de un objeto sin que se haya concedido acceso.
SeTcbPrivilege
A través de KERB_S4U_LOGON se puede obtener un token de suplantación a cualquier otro usuario sin conocer las credenciales, añadir un grupo arbitrario (admins) al token, establecer el nivel de integridad del token en "medium", y asignar este token al hilo actual (SetThreadToken).
Herramientas
winPEASany.exe
Seatbelt.exe
PowerUp.ps1
SharpUp.exe
Recursos
Herramientas
Last updated
Was this helpful?