¿Qué es un ataque Kerberoasting?

Autores

Matthew Kosinski

Staff Editor

IBM Think

¿Qué es el kerberoasting?

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 de texto sin formato 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 índice X-Force Threat Intelligence. Este crecimiento es parte de una amplia tendencia de hackers que abusan de cuentas válidas para vulnerar las redes. Las mejoras en la seguridad de la red y endpoint hicieron que los ataques directos sean mucho más difíciles de lograr.

Algunos factores adicionales incentivan la popularidad de Kerberoasting. Muchos servicios de directorio y sistemas de computación en la nube utilizan Kerberos, lo que significa que los hackers pueden aprovechar el protocolo para obtener acceso a la infraestructura de red crítica.

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

Los ataques de Kerberoasting son difíciles de detectar porque usan el diseño previsto de Kerberos. La parte más sospechosa de un ataque de Kerberoasting (descifrar los tickets robados) ocurre fuera de línea. Los profesionales de ciberseguridad no pueden eliminar por completo la posibilidad de Kerberoasting, pero pueden desplegar defensas proactivas para mitigar la amenaza.

¿Su equipo captarí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. Aprende rápido con tutoriales de expertos y documentos explicativos, que se envían directamente a su bandeja de entrada. Consulte la Declaración de privacidad de IBM.

Su subscripción se entregará en inglés. En cada boletín, encontrará un enlace para darse de baja. 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/mx-es/privacy

¿Cómo funciona el kerberoasting?

El Kerberoasting suele ser un medio de escalada de privilegios en lugar de una táctica inicial de intrusión. Después de que un hacker obtiene el control de una cuenta de usuario de dominio para ingresar a la red, utilizan el Keberoasting 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 de Kerberos. 
  2. El hacker lleva estos tickets a una computadora que posee fuera de la red que está atacando.
  3. El hacker descifra los tickets y descubre las contraseñas de las cuentas de servicio que ejecutan los servicios asociados con cada ticket.
  4. El hacker inicia sesión en la red mediante las credenciales de las cuentas de servicio, lo cual es un abuso de sus licencias para navegar por la red y causar daño.

¿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) autenticar y comunicarse de manera segura dentro de Active Directory y otros dominios.

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

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

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 permite al usuario solicitar acceso a los servicios del dominio.

Cuando el usuario desea acceder a un servicio, envía una solicitud al TGS del KDC. El TGT acompaña esta solicitud para dar fe de la identidad del usuario.

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

Algunos detalles del diseño de Kerberos lo dejan abierto al Kerberoasting.

En primer lugar, el KDC no verifica si los usuarios están autorizados a acceder a un servicio. Cualquier usuario puede aplicar un ticket para cualquier servicio. Depende de cada servicio 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 responsable de ejecutar el servicio en el dominio. Las cuentas de servicio permiten que Kerberos autentique servicios, emita tickets de servicio y aplique controles de seguridad. Estas cuentas también son un objetivo para los hackers, ya que tienden a tener altos privilegios.

En tercer lugar, los tickets de Kerberos se cifran mediante los hashes de contraseña de las cuentas asociadas como claves. Es importante señalar que, en el proceso de Kerberoasting, los tickets de servicio utilizan los hashes de contraseña de las cuentas de servicio relevantes.

Las contraseñas de las cuentas son claves de cifrado simétricas convenientes porque solo el KDC y el servicio relacionado deben conocer esa contraseña. Pero como los tickets se cifran con hashes de contraseñas, los hackers pueden revertir ingeniería a las contraseñas de cuentas de servicio mediante el descifrado de un cifrado de ticket.

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

Ilustración del protocolo de autenticación Kerberos Un ejemplo simplificado de autenticación de Kerberos en acción

El proceso del Kerberoasting

1. Secuestro de una cuenta de usuario

El primer paso en un ataque de Kerberoasting típico es robar la cuenta de un usuario de dominio. Un hacker puede emplear muchos métodos de ciberataque en esta etapa, como phishing, keyloggers u otras técnicas. Luego, el hackers puede usar esta cuenta para acceder al dominio de destino.

Descubra cómo los servicios de gestión de identidad y acceso de IBM ayudan a proteger cuentas clave contra amenazas
2. Identificación de objetivos

Cuando el hacker está en la red, busca cuentas de servicio. A menudo, lo hacen buscando cuentas con nombres principales de servicio (SPN). Los SPN son identificadores únicos que vinculan los servicios a sus cuentas de servicio en un dominio Kerberos. Debido a que solo las cuentas de servicio tienen este atributo, la enumeración de las cuentas con SPN es una forma práctica para que los hackers encuentren objetivos. Cada cuenta de dominio puede enumerar SPNs por defecto.

Los hackers pueden usar comandos de PowerShell y consultas del Protocolo ligero de acceso a directorios (LDAP) para mostrar cuentas con SPN. También pueden emplear herramientas especializadas de hacking y pruebas de penetración. Por ejemplo, el kit de herramientas de Impacket incluye un script llamado "GetUserSPNs.py" que genera una lista de cuentas de servicio en un dominio.

3. Robar entradas

El hacker emplea la cuenta de dominio secuestrada para aplicar tickets de servicio para los servicios específicos.

El hacker no emplea 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 cambio, el hacker saca estos tickets de la red a una computadora que controla.

4. Descifrado de contraseñas

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

Debido a que los tickets emplean las contraseñas de las cuentas de servicio como claves criptográficas, los hackers suelen emplear ataques de fuerza bruta para este esfuerzo. Emplean sistemáticamente diferentes contraseñas para generar claves de cifrado ("hashes") que usan en el ticket robado. Si una clave de cifrado funciona, la contraseña que generó la clave es la contraseña de la cuenta de servicio.

Los hackers pueden acelerar el descifrado mediante listas de palabras de contraseñas comunes. También emplean varias herramientas para automatizar el proceso de descifrado. Algunas de las herramientas de Kerberoasting más comunes son:

  • Impacket: un kit de herramientas de Python diseñado para evaluadores de penetración. Incluye algunos scripts que pueden causar daños reales en manos de un hacker.

  • Rubeus: un conjunto de herramientas diseñado para explotar Kerberos para pruebas de penetración. Al igual que muchas herramientas de hacking ético, pueden usarlas 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 alerta en el proceso de Kerberoasting, pero normalmente ocurre fuera de la red de destino en un dispositivo controlado por hackers. Las herramientas de seguridad de la organización no pueden detectarlo.

5. Usa la contraseña

Dotado 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, entre otras cosas.

Por ejemplo, si un hacker descifra la contraseña de la cuenta de servicio de un servidor SQL, podría obtener el control de las bases de datos alojadas en ese servidor.

El kerberoasting sin credenciales de cuenta robadas

Si bien el 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 en las condiciones adecuadas.1

Recuerde que antes de que un usuario pueda recibir tickets de servicio, debe autenticar con el KDC y obtener un TGT que le permita aplicar acceso al servicio. Mediante la herramienta de explotación Rubeus de Kerberos, Clark pudo modificar esta solicitud de autenticación inicial para que se pida 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 la técnica funcione, el hacker debe fingir que envía la solicitud de autenticación desde una cuenta que no requiere autenticación previa en Kerberos. Las cuentas que requieren autenticación previa, que es la mayoría, necesitan credenciales de usuario incluso para enviar la solicitud de autenticación inicial que Clark modificó. Aún así, esta técnica abre un potencial camino 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 haciéndolo pasar por una actualización legítima de la plataforma de gestión de infraestructuras Orion de SolarWinds. Los hackers accedieron a varias empresas y organismos públicos, entre ellos los Departamentos de Estado y de Justicia de Estados Unidos. Según Mitre, los hackers emplearon el Kerberoasting para escalar sus privilegios en los sistemas comprometidos.2

Del mismo modo, los hackers asociados con el ransomware Akira suelen emplear el Kerberoasting para ampliar su alcance y mantener el acceso a las redes que infringen. Hasta abril de 2024, Akira afectó a 250 organizaciones en todo el mundo y obtuvo mediante extorsión un total de 42 millones de dólares en pagos de rescate.3

El kerberoasting frente a los ataques con tickets dorados

Mientras que los ataques de boleto de oro también apuntan a los procesos de autenticación de Kerberos, difieren del Keberoasting.

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

En un ataque Golden Ticket, un hacker primero obtiene privilegios de nivel de administrador en un dominio. Esto le permite acceder a la contraseña de la cuenta krbtgt, que es la cuenta que usa el KDC para cifrar los TGT. El hacker emplea estos privilegios para crear tickets de Kerberos no autorizados que le 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 real de contraseñas ocurre 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 identidad y acceso

Dado que los ataques Kerberoasting se apoderan del control de las cuentas de dominio, proteger estas cuentas con controles IAM mejorados puede ayudar a frustrar algunas violaciones.

Las sólidas políticas y prácticas de contraseñas, incluidas las soluciones centralizadas de gestión de contraseñas, pueden dificultar que los hackers descifren las contraseñas. Por ejemplo, según el marco MITRE ATT&CK, se recomienda que las contraseñas de las cuentas de servicio tengan al menos 25 caracteres, sean suficientemente complejas y se cambien regularmente.4

En Active Directory, las organizaciones pueden usar cuentas de servicio gestionadas en grupo. Se trata de cuentas de servicio que generan, gestionan y cambian contraseñas de manera automática, por lo que los administradores no necesitan gestionar las contraseñas 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 y poco eficiente usar MFA para cuentas de servicio.

Gestión de acceso privilegiado

Las herramientas de gestión de accesos privilegiados pueden ayudar a proporcionar seguridad adicional para las credenciales de las cuentas privilegiadas, como las cuentas de servicio de Kerberos y otros objetivos muy valiosos.

El principio de privilegio mínimo

Al limitar los privilegios de la cuenta 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.

Monitoreo de la actividad de Kerberos

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

Los registros de eventos, como Windows Event Viewer 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 monitorean a los usuarios, como una solución de análisis del comportamiento del usuario (UBA), pueden ayudar a detectar a los hackers que secuestraron cuentas legítimas.

Los equipos de seguridad pueden detectar más amenazas adaptando las herramientas de supervisión a sus sistemas de información. Por ejemplo, las herramientas pueden configurarse para que cualquier intento de una cuenta de servicio de iniciar sesión fuera de su ámbito predefinido active una alerta e investigación.

Refuerzo del cifrado

Muchas instancias de Kerberos aún admiten el algoritmo de cifrado RC4. Sin embargo, este estándar de cifrado más antiguo es relativamente fácil de ser vulnerado por los hackers.

Habilitar un tipo de cifrado más fuerte, como AES, puede dificultar que los hackers descifren los tickets.

Honeytokens

Algunas organizaciones crean honeytokens, cuentas de dominio falsas que están destinadas a ser comprometidas. Al atacar un honeytoken, los hackers desencadenan automáticamente una alerta para que el equipo de seguridad pueda intervenir.

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

Soluciones relacionadas
Servicios de respuesta a incidentes

Mejore el programa de respuesta ante incidentes de su organización, minimice el impacto de una violació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 fortalecer su seguridad y acelerar la detección de amenazas.

Explorar 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 violació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 de pie de página

Todos los enlaces se encuentran fuera de 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. Cybersecurity and Infrastructure Security Agency (CISA). 18 de abril de 2024. 

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