¿Qué es un ataque de kerberoasting?

Autores

Matthew Kosinski

Staff Editor

IBM Think

¿Qué es kerberoasting?

El kerberoasting es un ciberataque que explota el protocolo de autenticación Kerberos. Los actores de amenazas roban tickets de servicio Kerberos para descubrir las contraseñas en texto plano de las cuentas de servicio de red. Luego, los hackers toman el control de estas cuentas de servicio para robar datos, propagar malware y más.

El kerberoasting es cada vez más común. Los analistas de seguridad de X-Force de IBM observaron un aumento del 100 % en los incidentes de kerberoasting entre 2022 y 2023, según el X-Force Threat Intelligence Index. Este crecimiento forma parte de una tendencia generalizada de los hackers a abusar de cuentas válidas para penetrar en las redes. Las mejoras en la seguridad de las redes y los endpoints han dificultado mucho los ataques directos.

La popularidad del kerberoasting se ve impulsada por varios factores adicionales. Muchos servicios de directorio y sistemas de cloud computing utilizan Kerberos, por lo que los hackers pueden aprovechar el protocolo para acceder a infraestructuras de red críticas.

En particular, Kerberos es un estándar de Microsoft Windows Active Directory, y muchos ataques kerberoasting se dirigen a dominios de Active Directory. Además, las cuentas de servicio creadas manualmente suelen tener contraseñas débiles y privilegios elevados, lo que las convierte en un blanco atractivo.

Los ataques de kerberoasting son difíciles de detectar porque se benefician del diseño previsto de Kerberos. La parte más sospechosa de un ataque de este tipo (descifrar los tickets robados), ocurre fuera de línea. Los profesionales de la ciberseguridad no pueden erradicar por completo la posibilidad de un ataque de kerberoasting, pero pueden implementar defensas proactivas para mitigar la amenaza.

¿Su equipo detectaría a tiempo el próximo día cero?

Únase a los líderes de seguridad que confían en el boletín Think para obtener noticias seleccionadas sobre IA, ciberseguridad, datos y automatización. Aprenda rápidamente de tutoriales de expertos y artículos explicativos, directamente en su bandeja de entrada. Consulte la Declaración de privacidad de IBM.

Su suscripción se enviará en inglés. Encontrará un enlace para darse de baja en cada boletín. Puede gestionar sus suscripciones o darse de baja aquí. Consulte nuestra Declaración de privacidad de IBM para obtener más información.

https://www.ibm.com/es-es/privacy

¿Cómo funciona el kerberoasting?

El kerberoasting suele ser un medio de escalada de privilegios más que una táctica de intrusión inicial. Tras conseguir el control de una cuenta de usuario de dominio para entrar en la red, el hacker utiliza el kerberoasting para ampliar su alcance.

La mayoría de los ataques de kerberoasting siguen el mismo método básico:

  1. Un hacker utiliza una cuenta comprometida para obtener tickets de servicio Kerberos. 
  2. El hacker lleva estos tickets a un ordenador de su propiedad fuera de la red que está atacando.
  3. El hacker desencripta los tickets y descubre las contraseñas de las cuentas de servicio que ejecutan los servicios asociados a cada uno.
  4. El hacker se conecta a la red utilizando las credenciales de las cuentas de servicio, abusando de sus permisos para moverse por la red y causar daños.

¿Por qué funciona el kerberoasting?

Para entender por qué funciona el keberoasting, primero hay que entender los conceptos básicos de Kerberos.

Kerberos es un protocolo de autenticación que permite a los usuarios y servicios (como aplicaciones, bases de datos y servidores) autenticarse y comunicarse de forma segura dentro de Active Directory y otros dominios.

El proceso de autenticación Kerberos utiliza un sistema de tickets. En el centro de distribución de claves (KDC), que opera en el controlador de dominio de la red, se encuentra el núcleo de este sistema.

El KDC es, básicamente, el guardián del dominio. Autentica a los usuarios y servicios de la red y les emite tickets. Los tickets son credenciales que prueban la identidad de los usuarios y les permiten acceder a otros recursos de la red. Los usuarios y servicios intercambian estos tickets para verificarse mutuamente.

Cuando un usuario inicia sesión en un dominio, primero se autentica con el KDC y recibe un ticket de concesión de tickets (TGT). Este TGT le permite solicitar acceso a los servicios del dominio.

Cuando el usuario desea acceder a un servicio, envía una solicitud al servicio de concesión de tickets (TGS) del centro de distribución de claves. El TGT acompaña a esta solicitud para garantizar la identidad del usuario.

Como respuesta, el KDC emite un ticket de servicio, también llamado "ticket TGS", que se cifra con la contraseña de la cuenta de servicio. Esto se hace para garantizar que solo el servicio de destino pueda validar la solicitud de acceso del usuario. El usuario presenta este ticket al servicio de destino, que autentica al usuario e inicia una sesión segura.

Hay algunos detalles del diseño de Kerberos que lo hacen vulnerable a kerberoasting.

En primer lugar, el KDC no comprueba si los usuarios están autorizados a acceder a un servicio. Cualquier usuario puede solicitar un ticket para cualquier servicio. Depende de los servicios individuales hacer cumplir los permisos y bloquear a los usuarios no autorizados. Por lo tanto, los hackers no necesitan apoderarse de las cuentas de los administradores de dominio u otros usuarios privilegiados. Cualquier cuenta comprometida funciona.

En segundo lugar, cada servicio de un dominio Kerberos debe estar asociado a una cuenta de servicio que sea la encargada de ejecutarlo. Las cuentas de servicio permiten a Kerberos autenticar servicios, emitir tickets de servicio y aplicar controles de seguridad. Estas cuentas también son un objetivo para los hackers, ya que suelen tener privilegios elevados.

En tercer lugar, los tickets Kerberos están encriptados con los hashes de las contraseñas de las cuentas asociadas como claves. Para el kerberoasting, es importante que los tickets de servicio utilicen los hashes de las contraseñas de las cuentas de servicio correspondientes.

Las contraseñas de las cuentas son claves de cifrado simétricas convenientes, ya que solo el KDC y el servicio relacionado deben conocerlas. Sin embargo, dado que los tickets se cifran mediante hashes de contraseñas, los hackers pueden aplicar ingeniería inversa a las contraseñas de las cuentas de servicio y descifrar el cifrado de un ticket.

Además, las cuentas de servicio configuradas manualmente suelen tener habilitada la opción "la contraseña nunca caduca". En redes antiguas, esto puede significar que las cuentas de servicio utilicen contraseñas obsoletas que siguen directrices de seguridad poco fiables, lo que las hace fáciles de descifrar.

Ilustración del protocolo de autenticación Kerberos Ejemplo simplificado de autenticación Kerberos en acción

El proceso de kerberoasting

1. Secuestro de una cuenta de usuario

El primer paso en un típico ataque de kerberoasting es robar la cuenta de un usuario del dominio. Un hacker puede utilizar muchos métodos de ciberataque en esta fase, como phishing, keyloggers u otras técnicas. A continuación, el hacker puede utilizar esta cuenta para acceder al dominio de destino.

Descubra cómo los servicios de gestión de identidades y accesos de IBM ayudan a proteger las cuentas clave frente a las amenazas
2. Identificación de objetivos

Cuando el hacker está en la red, busca cuentas de servicio. A menudo, lo hacen buscando cuentas con Service Principal Names (SPN). Los SPN son identificadores únicos que vinculan los servicios a sus cuentas correspondientes en un dominio Kerberos. Dado que solo las cuentas de servicio tienen este atributo, la enumeración de las cuentas con SPN es una forma práctica de que los hackers encuentren objetivos. Por defecto, todas las cuentas de dominio pueden enumerar SPN.

Los hackers pueden utilizar comandos PowerShell y consultas LDAP (Lightweight Directory Access Protocol) para revelar cuentas con SPN. También pueden utilizar herramientas especializadas de hacking y pruebas de penetración . Por ejemplo, el kit de herramientas Impacket incluye un script llamado "GetUserSPNs.py" que genera una lista de cuentas de servicio en un dominio.

3. Robo de tickets

El hacker utiliza la cuenta de dominio secuestrada para solicitar tickets de servicio para sus servicios objetivo.

El hacker no utiliza estos tickets para acceder a esos servicios. Podrían, pero solo tendrían los permisos limitados de la probable cuenta de usuario robada de bajo nivel. En su lugar, el hackers saca estos tickets de la red y los lleva a un ordenador que controla.

4. Descifrado de contraseñas

El hacker descifra los tickets robados para recuperar las contraseñas de las cuentas de servicio.

Dado que los tickets utilizan las contraseñas de las cuentas de servicio como claves criptográficas, los hackers suelen emplear ataques de fuerza bruta para este fin. Utilizan diferentes contraseñas de manera sistemática para generar claves de cifrado ("hashes") que utilizan en el ticket robado. Si una clave de cifrado es válida, entonces la contraseña que generó la clave es la contraseña de la cuenta de servicio.

Los hackers pueden acelerar el descifrado utilizando listas de palabras de contraseñas comunes. También utilizan varias herramientas para automatizar el proceso de craqueo. Algunas de las herramientas de kerberoasting más comunes incluyen:

  • Impacket: un kit de herramientas de Python diseñado para pen testers. Incluye algunos scripts que pueden causar graves daños en manos de un hacker.

  • Rubeus: un kit de herramientas diseñadas para explotar Kerberos en pruebas de penetración. Al igual que muchas otras herramientas de hacking ético, también puede ser utilizada por hackers poco éticos con fines maliciosos.

  • John the Ripper y Hashcat: descifradores de contraseñas que pueden ejecutar ataques de fuerza bruta.

  • Mimikatz: ayuda a los hackers a extraer y descifrar tickets de Kerberos.

El descifrado de tickets es la mayor señal de alarma en el proceso de kerberoasting, pero suele ocurrir fuera de la red de destino, en un dispositivo que controlan los hackers. Las herramientas de seguridad de la organización no pueden detectarlo.

5. Uso de la contraseña

Con la contraseña de una cuenta de servicio, el hacker puede iniciar sesión en esa cuenta y usar sus permisos para acceder a recursos confidenciales, realizar movimientos laterales y mucho más.

Por ejemplo, si un hacker descifra la contraseña de la cuenta del servidor SQL, podría hacerse con el control de las bases de datos alojadas en él.

Kerberoasting sin credenciales de cuenta robadas

Aunque Kerberoasting normalmente requiere una cuenta de usuario de dominio comprometida, el investigador de seguridad Charlie Clark descubrió una técnica de ataque que permite a los hackers robar tickets de servicio sin secuestrar una cuenta bajo las condiciones adecuadas.1

Recuerde que antes de que un usuario pueda recibir tickets de servicio, debe autenticarse en el KDC y obtener un TGT que le permita solicitar acceso al servicio. Al utilizar la herramienta de explotación de Kerberos Rubeus, Clark pudo modificar esta solicitud de autenticación inicial para que solicitara un ticket de servicio en lugar de un TGT. Funcionó y el KDC respondió con un ticket de servicio.

Este método tiene aplicaciones limitadas. Para que funcione, el hacker debe fingir que envía la solicitud de autenticación desde una cuenta que no requiere preautenticación en Kerberos. Las cuentas que requieren preautenticación, que son la mayoría, necesitan credenciales de usuario incluso para enviar la solicitud de autenticación inicial que Clark modificó. Aun así, esta técnica abre una vía potencial para los atacantes.

Ejemplos de Kerberoasting

Los hackers han utilizado técnicas de kerberoasting en algunos de los ciberataques más importantes de los últimos años.

En el ataque a SolarWinds de 2020, hackers estatales rusos propagaron malware disfrazándolo de actualización legítima de la plataforma de gestión de infraestructuras Orion de SolarWinds. Los hackers vulneraron varias empresas y agencias gubernamentales, incluidos los Departamentos de Estado y de Justicia de Estados Unidos. Según Mitre, los hackers utilizaron el kerberoasting para escalar sus privilegios en los sistemas comprometidos.2

Del mismo modo, los hackers asociados con el ransomware Akira suelen utilizar kerberoasting para ampliar su alcance y mantener el acceso a las redes que han vulnerado. Hasta abril de 2024, Akira había afectado a 250 organizaciones de todo el mundo, a las que había extorsionado un total de 42 millones de dólares en pagos de rescates.3

El kerberoasting frente a los ataques con tickets dorados

Aunque los ataques de ticket dorado también afectan a los procesos de autenticación Kerberos, difieren del keberoasting.

En el kerberoasting, los hackers roban y piratean tickets para descubrir contraseñas y apoderarse de cuentas de servicio.

En un ataque con un ticket dorado, un hacker primero obtiene privilegios de administrador en un dominio. Esto les permite acceder a la contraseña de la cuenta krbtgt, que es la cuenta utilizada por el KDC para cifrar los TGT. El hacker utiliza estos privilegios para crear tickets Kerberos no autorizados que les permiten hacerse pasar por cualquier usuario y obtener acceso prácticamente sin restricciones a los recursos de la red.

Detección, mitigación y prevención de ataques de kerberoasting

Los ataques de kerberoasting son difíciles de detectar porque los atacantes pasan gran parte de su tiempo haciéndose pasar por cuentas legítimas. Sus solicitudes de tickets se mezclan con las reales y el descifrado de las contraseñas reales se produce fuera de la red.

Dicho esto, existen herramientas y prácticas que las organizaciones pueden utilizar para reducir las posibilidades de éxito de un ataque e interceptar mejor el kerberoasting en curso.

Herramientas de gestión de identidades y accesos

Debido a que los ataques de kerberoasting aprovechan el control de las cuentas de dominio, proteger estas cuentas con controles IAM mejorados puede ayudar a combatir algunas vulneraciones.

Las políticas y prácticas sólidas en materia de contraseñas, incluidas las soluciones de gestión centralizada de contraseñas, pueden dificultar su desciframiento por parte de hackers. El marco MITRE ATT&CK, por ejemplo, recomienda que las contraseñas de las cuentas de servicio tengan al menos 25 caracteres, sean suficientemente complejas y se cambien periódicamente.4

En Active Directory, las organizaciones pueden usar cuentas de servicio administradas de grupo. Se trata de cuentas de servicio que generan, gestionan y cambian las contraseñas de forma automática y periódica, para que los administradores no tengan que gestionarlas manualmente.

La autenticación sólida, como la autenticación adaptativa o multifactor (MFA), también puede ayudar a proteger las cuentas de usuario contra robos. Dicho esto, a menudo resulta difícil e ineficaz utilizar la MFA para las cuentas de servicio.

Gestión de accesos privilegiados

Las herramientas de administración de acceso con privilegios pueden ayudar a proporcionar seguridad adicional para las credenciales de las cuentas con privilegios, como las cuentas de servicio de Kerberos y otros destinos muy valiosos.

El principio del privilegio mínimo

Al limitar los privilegios de las cuentas de servicio a los permisos que necesitan, las organizaciones pueden minimizar el daño que los hackers pueden causar al comprometer esas cuentas.

Además, las cuentas de servicio pueden limitarse a inicios de sesión no interactivos y solo en servicios y sistemas específicos.

Monitorización de la actividad de Kerberos

A menudo, las solicitudes de tickets maliciosas se mezclan con las legítimas, pero los hackers pueden dejar señales reveladoras. Por ejemplo, una cuenta que solicita muchos tickets para varios servicios a la vez podría estar llevando a cabo un ataque de kerberoasting.

Los registros de eventos, como el Visor de eventos de Windows o un sistema de gestión de eventos e información de seguridad (SIEM), pueden ayudar a los equipos de seguridad a detectar actividades sospechosas. Las herramientas que monitorizan a los usuarios, como una solución de análisis del comportamiento del usuario (UBA), pueden ayudar a detectar hackers que han secuestrado cuentas legítimas.

Los equipos de seguridad pueden detectar más amenazas si adaptan las herramientas de monitorización a sus sistemas de información. Por ejemplo, pueden configurarse para que cualquier intento de inicio de sesión de una cuenta de servicio fuera de su ámbito predefinido active una alerta y requiera una investigación.

Fortalecimiento del cifrado

Muchas instancias de Kerberos siguen siendo compatibles con el algoritmo de cifrado RC4. Sin embargo, los hackers pueden descifrar con relativa facilidad este antiguo estándar de cifrado.

Habilitar un tipo de cifrado más fuerte, como AES, puede hacer que a los hackers les resulte más difícil descifrar tickets.

Honeytokens

Algunas organizaciones crean honeytokens, cuentas de dominio falsas destinadas a ser comprometidas. Cuando los hackers atacan un honeytoken, se activa automáticamente una alerta para que el equipo de seguridad pueda actuar.

Los honeytokens están diseñados para desviar la atención de las cuentas reales, y a menudo aparentan tener credenciales débiles y privilegios elevados. 

Soluciones relacionadas
Servicios de respuesta a incidentes

Mejore el programa de respuesta ante incidentes de su organización, minimice el impacto de una vulneración y experimente una respuesta rápida a los incidentes de ciberseguridad

Explore los servicios de respuesta a incidentes
Soluciones de detección y respuesta a amenazas

Utilice las soluciones de detección y respuesta a amenazas de IBM para reforzar su seguridad y acelerar la detección de amenazas.

Explore las soluciones de detección de amenazas
IBM QRadar SOAR Solutions

Optimice los procesos de toma de decisiones, mejore la eficiencia de los SOC y acelere la respuesta ante incidentes con una solución de orquestación y automatización inteligente.

Explore QRadar SOAR
Dé el siguiente paso

Mejore el programa de respuesta ante incidentes de su organización, minimice el impacto de una vulneración y experimente una respuesta rápida a los incidentes de ciberseguridad

Explore los servicios de respuesta a incidentes Más información sobre IBM X-Force
Notas a pie de página

Vínculos externos a ibm.com

1 Clark, Charlie. New Attack Paths? As Requested Service Tickets. Semperis. 27 de septiembre de 2022.

2 SolarWinds Compromise. MITRE ATT&CK. 14 de abril de 2023.

StopRansomware: Akira Ransomware. Agencia de Ciberseguridad y Seguridad de Infraestructuras (CISA). 18 de abril de 2024. 

4 Steal or Forge Kerberos Tickets: Kerberoasting. MITRE ATT&CK. 30 de marzo de 2023.