# Análisis de Técnicas de Extracción de Credenciales en Entornos Windows y Medidas de Defensa

- Link: https://binariocero.com/windows/analisis-de-tecnicas-de-extraccion-de-credenciales-en-entornos-windows-y-medidas-de-defensa
- Published: 2025-12-10T14:25:39+01:00
- Author: Binario 0

![Loading](https://binariocero.com/wp-content/plugins/page-views-count/ajax-loader-
2x.gif)

La seguridad de credenciales es uno de los pilares fundamentales en la protección
de sistemas Windows. Sin embargo, diversas herramientas y funciones nativas del 
sistema pueden ser utilizadas para obtener información sensible, ya sea por administradores
en auditorías autorizadas o por actores maliciosos en actividades de reconocimiento,
escalado de privilegios y movimiento lateral.

A continuación se describen varias técnicas relevantes para la extracción de credenciales
o información relacionada, junto con su funcionamiento, sus implicaciones y las 
medidas defensivas recomendadas.

## 1. Enumeración de servicios que usan cuentas específicas

**Ejemplo:**

    ```wp-block-code
    Get-WmiObject win32_service |
        Where-Object { $_.StartName -like '*@*' } |
        Select-Object Name, StartName, DisplayName
    ```

Este comando lista los servicios de Windows que se ejecutan bajo cuentas de dominio
o cuentas personalizadas (por ejemplo, `usuario@dominio`). En algunos casos, las
credenciales quedan almacenadas junto a la configuración del servicio.

**Riesgos**

 * Puede revelar servicios configurados con cuentas privilegiadas.
 * Si la contraseña del servicio está débil o es reutilizada, facilita el movimiento
   lateral.
 * Permite identificar objetivos con permisos elevados (p. ej. cuentas de servicio
   de SQL, IIS, backups).

**Mitigación**

 * Revisar periódicamente las cuentas asignadas a servicios.
 * Usar **Managed Service Accounts** (gMSA) para evitar credenciales almacenadas.
 * Aplicar políticas de rotación de contraseñas en cuentas de servicio.

## 2. Extracción de credenciales guardadas de RDP

**Ejemplo:**

    ```wp-block-code
    cmdkey /list | Select-String 'Target: TERMSRV' |
        ForEach-Object { cmdkey /delete:($_ -split ' ')[-1] }
    ```

`cmdkey` administra credenciales almacenadas en Windows. Este comando permite listar
credenciales guardadas para conexiones RDP y eliminarlas.

**Riesgos**

 * Las credenciales guardadas pueden permitir acceso directo a otros equipos.
 * Usuarios suelen almacenar credenciales por comodidad.
 * Un atacante podría usarlas para escalar acceso en la red.

**Mitigación**

 * Prohibir almacenamiento de credenciales mediante directivas de grupo.
 * Exigir autenticación multifactor (MFA) para conexiones remotas.
 * Realizar auditorías periódicas con `cmdkey /list`.

## 3. Acceso a cookies del navegador

**Ejemplo:**

    ```wp-block-code
    $env:USERPROFILE + '\AppData\Local\Google\Chrome\User Data\Default\Cookies' | Get-Item
    ```

Chrome almacena las cookies en una base de datos SQLite. Algunas pueden contener
tokens de sesión que, si se obtienen, pueden permitir secuestro de sesión.

**Riesgos**

 * Posible acceso a cuentas web sin conocer la contraseña.
 * Las cookies persistentes de aplicaciones corporativas representan un riesgo crítico.
 * Si el atacante tiene acceso al sistema, puede copiar el archivo para análisis
   offline.

**Mitigación**

 * Usar políticas de seguridad en Chrome para cifrar cookies obligatoriamente.
 * Activar autenticación fuerte en aplicaciones corporativas.
 * Evitar accesos locales no autorizados mediante hardening del endpoint.

## 4. Obtención de cuentas de Application Pools en IIS

**Ejemplo:**

    ```wp-block-code
    Import-Module WebAdministration
    Get-IISAppPool | Select-Object Name, ProcessModel
    ```

Los Application Pools pueden utilizar cuentas personalizadas. Si están mal configuradas,
pueden contener credenciales administradas manualmente.

**Riesgos**

 * Cuentas privilegiadas ejecutando aplicaciones web.
 * Contraseñas almacenadas en la configuración.
 * Elevación de privilegios a partir de servicios web vulnerables.

**Mitigación**

 * Sustituir cuentas manuales por **ApplicationPoolIdentity** siempre que sea posible.
 * Revisar configuraciones sensibles mediante auditorías de IIS.
 * Usar gMSA para aplicaciones que requieren cuentas específicas.

## 5. Búsqueda de contraseñas en archivos de configuración

**Ejemplo:**

    ```wp-block-code
    Get-ChildItem -Path C:\ -Include *.config -Recurse |
        Select-String -Pattern 'password='
    ```

Archivos `.config` se utilizan frecuentemente en aplicaciones .NET y, en ocasiones,
contienen credenciales en texto plano.

**Riesgos**

 * Credenciales incrustadas (hardcoded) pueden comprometer bases de datos, servicios
   o APIs.
 * Riesgo especialmente alto en aplicaciones legacy.
 * Facilita movimiento lateral si las credenciales son privilegiadas.

**Mitigación**

 * Seguridad de desarrollo: prohibir credenciales en texto plano.
 * Implementar **Azure Key Vault**, **AWS Secrets Manager**, o equivalentes on-premise.
 * Revisar y cifrar secciones sensibles mediante `aspnet_regiis`.

## 6. Extracción de credenciales desde tareas programadas

**Ejemplo:**

    ```wp-block-code
    Get-ScheduledTask |
        Where-Object { $_.Principal.UserId -notlike 'S-1-5-18' } |
        Select-Object TaskName, TaskPath, Principal
    ```

Las tareas programadas pueden ejecutarse bajo cuentas personalizadas, cuyas credenciales
quedan almacenadas en el sistema.

**Riesgos**

 * El atacante identifica tareas que usan cuentas privilegiadas.
 * Si las contraseñas se reutilizan, permite acceso a otros sistemas.
 * Cuentas de servicio débiles permiten persistencia y escalado.

**Mitigación**

 * Revisar tareas programadas no estándar.
 * Cambiar tareas a **Service Accounts** administradas.
 * Proteger el acceso al sistema donde la tarea está configurada.

# Conclusión

Estas técnicas muestran cómo distintas funcionalidades legítimas del sistema pueden
ser reutilizadas para obtener credenciales o información sensible. Para proteger
adecuadamente un entorno Windows, es indispensable establecer prácticas sólidas 
de hardening y monitorización.
