Para llevar tu aprendizaje al siguiente nivel y practicar estas técnicas de manera segura y efectiva, te invitamos a adquirir acceso premium a nuestro material de curso. No pierdas esta oportunidad de profundizar tus conocimientos. Para más información y adquirir tu acceso, visita nuestro canal de ventas: . ¡Te esperamos para empezar este viaje juntos!
OBJETIVO DEL EJERCICIO #16:
Teniendo una autenticacion sobre cualquier usuario comprometer al usuario: roast.user
Este ejercicio deberia ser realizado desde el servidor de USER-SERVER.
Para realizarlo es suficiente tener encendido UNICAMENTE WEBSERVER y First-DC.
El "Kerberoasting" es una técnica que los atacantes pueden usar para extraer tickets de servicio de Kerberos del Directorio Activo y luego intentar descifrar esos tickets fuera de línea para obtener las contraseñas en texto claro de las cuentas de servicio. A continuación, se describe cómo funciona y por qué es una vulnerabilidad en los entornos de AD:
¿Cómo funciona Kerberoasting?
Ticket de Servicio: En Kerberos, cuando un usuario quiere acceder a un servicio, solicita un ticket de servicio (TGS, Ticket Granting Service). Este ticket está cifrado con la contraseña de la cuenta de servicio del recurso al que el usuario quiere acceder.
Extracción: Un atacante no necesita privilegios especiales en el dominio para solicitar un ticket de servicio para cualquier cuenta de servicio. Una vez que el atacante tiene el ticket, puede exportarlo y llevarlo a otro lugar para intentar descifrarlo.
Descifrado: El atacante intentará descifrar el ticket fuera de línea utilizando herramientas de fuerza bruta o diccionarios. Si la contraseña de la cuenta de servicio es débil, el atacante podría descifrarla en un tiempo razonable.
Compromiso: Una vez que el atacante tiene la contraseña en texto claro de la cuenta de servicio, puede usarla para acceder a recursos o moverse lateralmente en la red.
¿Por qué es una vulnerabilidad?
Contraseñas débiles: Las cuentas de servicio a menudo tienen contraseñas que raramente se cambian debido a preocupaciones operativas. Estas contraseñas estáticas, si son débiles, son vulnerables al descifrado.
Permisos Elevados: Algunas cuentas de servicio pueden tener permisos elevados en el dominio o en sistemas individuales. Un atacante que comprometa una cuenta de servicio podría ganar un acceso significativo.
Falta de Monitorización: Las solicitudes de tickets de servicio son operaciones normales en una red que utiliza Kerberos. Esto hace que sea difícil para los defensores detectar la actividad maliciosa.
[?] +++++ Searching for Kerberoastable User +++++
[!] Found Kerberoastable User 'roast.user':
sAMAccountName: roast.user
distinguishedName: CN=roast.user,CN=Users,DC=spartancybersec,DC=corp
objectSid: S-1-5-21-1861162130-2580302541-221646211-1127
pwdLastSet: 09/29/2023 02:03:36
lastLogonTimestamp: 09/29/2023 02:03:36
userAccountControl: NORMAL_ACCOUNT
Hashcat usage: hashcat -m 13100
$krb5tgs$23$*roast.user$spartancybersec.corp$MSSQL/sql.spartancybersec.corp*$A8DDCBEA1C6AEFE971C4BA672CBC9F32$8D3C7A07D449581969F4AB91BCDBA8FB06FFC89DB32DBF7E1A749CC4ED6B75F94081A66AC6800DF451243CCFFC99ECF84B329247D3C8ABF0E8B81684171DC99E1D1261BED8BEBB55FB094E1349FF0FC976C5F6DDA37F3BFF6263CCAA7A4A1466893493B92D5B45FD49D6793070134551E1CA418528F76521F4E76CA67FC27A36207507A5E6CC4F26211816F7455CFD3C9A32B1DE98C3F8C73CB70D25D8DDFC67084316856736B1D363177BA112F57096D188DB465A2A43B3FC3902D8BED0CC200A3273F8798FBA72A9585E6E2F728DEDE48CB678411064FDC0A58011A42B93301D4F98F47DD26E02DBECBF8FF7053472879C4105F66CACA699B62D6DFC70E91351AC5F8A778A622DACB54BF9B0E7D91D264A23D62014B2E5CB4088B5ED8F1F13C46F7CBA74D5BFB4207F3FE5FAB512CD3FE9E1A41AE02C710895F656CF8562B58F516E5B656162F22CBC9FA2E1FF5E58A8D19491D751D187AAC82810EEF259A8FB78373B37A192A8E8BB553D437E765B459A4AFB2F7BD6E0B4CC775244503407861063F697AA79212EB01CF96B81A8A18666F3E2EC108DC45C24EF8392F1144D7DBB797DFB0B5E078EB707573B1FCE19B7CF0196684899100E8716D6AAF790804D6F755832CB61666A982937193FF2681632448BD1BC670552458B6FF1ECD6FA7384CB1426BE5332CF363624D7E58E57EB6EAD8D5E637B5F4EB5FCF9660157C5A4D02BE879D341189067A771AED1ABB44C2FF194B21D64F50D6760B229FB8B654347AE9E22E3D41A93EAFD655B71C63BD25ECA4082F82719CAC5B3A22A085C994925C876054DADB4440A047E7A0E2290EB39D9FDE403285E25815EEB16AB9382C2039A97FE9A945B7C55B2191EE9BAF73A004916D2C36423A33CA219362B864793D5D6E4ED3B62FE9EB584DE00AEBE7FD83DEB19C8D78CD24F2F9915824E79A56EA87C0598DCD00AC8A38FFB28C8B3128845EFF57A52904D4E3E70E1F1D575E67B4CB93C4D467CBF4AB94280316C605795347C90B174C9B2B05F2B65E886538400A240C5ABC729CA0BC63A35675C1790A28C43EAC15EA322E29AF15CDE522BADA7A44F6D0CD7D73EA110E860C92CB839B27E6DF530F7D30C1C886150A4D51DAC872DF5210C81A9BD22092202E70C03EE542F3690B82781C18741FB747298A33C1226D671C5F1B00A7B5D1DD46C8C7184466EB83F5D38A1E1297436D9DD845704A489A38ABF11FFD996DF0A97D703A4D611DFEF66FFAAC80F5DA75FBA4A6D71416D193A15F1C195E8DAB0FD2EC8AB9EC0952657607965C8FE0B1C1AC66D8CB36804A497AFD146687BD3A337630ACF8707406E5B27C56665C5C6BB6CEECC6FBB95D3E472FA818BEE0F1A2466B8807E2D524746EF79B77A6E104FDA867BF23F80293BD7C64329663ED5F6FA02CF9658B4E2EFAC662502B3C21592BE2C4B1155AF70C07A87CB1143C2EDFE86FE75E70E21014E4E072EE49C1A1ACA6102F4FEE01FACBB2F4629988FA2B7CA4A91583604B81AE6FD06393C4A915362796ED4D780B1FEC6C7C510B43B4D68971FAEB491F84F48A48DCB680639BBA7551188102BF48DFE974D8A94B3F12A619526C2925A28B5E22653A03A6C97BA72478531FC76CD24E9AEAD779F07C6778D2212D77DF238DCBBB9E4234201D40824654CE64258DD8A6A82D5862DA71BE067FFADBE78282552EE5DDD0D33AADB0C6F06
Para crackear este hash podemos utilizar el siguiente comando:
El resultado de un ataque de fuerza bruta siempre estara condicionado a tener un buen diccionario. Es recomendable generar diccionarios personalizados con patrones comunes como por ejemplo: Sp@rt@n2023
Primero almacenamos todo el hash en un archivo "hash-kerberoasting" y luego ejecutamos hashcat:
La contraseña para este caso era debil y es: Password@1
Mitigación:
Utilizar Contraseñas Fuertes: Asegúrate de que todas las cuentas de servicio tengan contraseñas largas y complejas, lo que hará que el proceso de descifrado sea mucho más difícil y tome más tiempo.
Rotar Contraseñas: Cambia las contraseñas de las cuentas de servicio regularmente.
Monitorización: Monitorea las solicitudes anómalas de tickets de servicio y los intentos de uso de cuentas de servicio.
Uso de AES: Usa AES en lugar de RC4 para cifrar los tickets de Kerberos, ya que AES es más resistente a este tipo de ataque.
Esta vulnerabilidad fue previamente detectada con :