Credential dumping
En operaciones de intrusión, el credential dumping es la extracción de material de autenticación de un sistema que el atacante ya controla: hashes de contraseña, contraseñas en claro, tickets y tokens. Es el paso que convierte el control de una máquina en acceso a otras, y es la técnica que más veces informamos en nuestros proyectos internos.
Cómo funciona
Hay varios almacenes con material aprovechable. La memoria del subsistema de autenticación de Windows guarda credenciales de las sesiones que están iniciadas, y por eso un puesto de trabajo que ha usado un administrador vale más que la propia máquina del administrador. La base de cuentas locales guarda los hashes de las cuentas locales. La base del directorio en un controlador de dominio guarda todos los hashes del dominio. El subsistema de protección de datos guarda secretos de credenciales almacenadas y de los almacenes del navegador. En Linux y macOS los equivalentes son el fichero shadow, los llaveros y los ficheros de configuración que llevan tokens.
Lo que se recupera decide lo que pasa después. Una contraseña en claro se puede escribir en cualquier sitio. Un hash se puede reproducir directamente, que es pass-the-hash. Un ticket de Kerberos se puede reutilizar hasta que caduque. Un token de cloud o de aplicación se puede reutilizar sin tocar el directorio para nada.
Qué sale mal
El motivo de que esto siga funcionando no es un parche que falte, es dónde se han usado las cuentas privilegiadas. Cada inicio de sesión interactivo de una cuenta privilegiada deja material en la máquina donde entró, así que un administrador que resuelve una incidencia en el portátil de un usuario deposita credenciales de dominio en una máquina que, por definición, está dando problemas. Ese es el mecanismo que hay detrás de casi todos los attack paths que dibujamos desde un usuario corriente hasta administrador de dominio.
Los controles existen y se aplican a medias. Proteger el subsistema de autenticación para que unos derechos administrativos normales no puedan leer su memoria, el aislamiento de credenciales basado en virtualización, y una separación por niveles que impida que las cuentas privilegiadas inicien sesión en máquinas de menor confianza son los tres que cambian el resultado. Los dos primeros son ajustes; el tercero es un modelo de operación, y por eso es el que falta. Mientras tanto los atacantes evitan cada vez más las herramientas conocidas y usan utilidades del sistema firmadas para producir una imagen de memoria que analizan después fuera de línea, que es living off the land y derrota a la detección basada en nombres de herramienta.
Dónde aparece esto en una auditoría
Informamos de la cuenta recuperada, de la máquina de la que salió, del almacén del que salió y, sobre todo, de por qué esa cuenta estaba en esa máquina, porque lo último es el arreglo. Los secretos recuperados no aparecen nunca en el cuerpo del informe. La severidad va con lo que la credencial alcanzó, y la recomendación suele ser un cambio en la separación administrativa por niveles antes que un control técnico, que es una conversación más difícil y la correcta. Esto forma parte de cómo una sola máquina comprometida se convierte en una ruta por todo el parque.