RC4 en AD: orden de remediación y rotación de contraseñas
El uso de RC4 en el dominio obliga a una serie de pasos de mitigación: actualizar krbtgt, rotar contraseñas y asegurar que las cuentas de servicio soporten AES.
RC4 sigue siendo un vector de ataque cuando la autenticación de Kerberos se fuerza a usarlo. En el caso analizado, la organización mantiene cuentas de servicio con el atributo msDS-SupportedEncryptionTypes vacío, lo que permite que el protocolo de autenticación utilice RC4. Además, la contraseña del objeto krbtgt es antigua y solo admite RC4.
1. Actualizar el krbtgt
El objeto krbtgt es el núcleo de la emisión de tickets. Si su contraseña es vieja, cualquier ticket emitido puede ser comprometido. La práctica recomendada es cambiar la contraseña del krbtgt antes de forzar la política de cifrado a AES. El proceso implica:
- Generar una nueva contraseña de 20 caracteres que cumpla con la política de complejidad.
- Ejecutar
net user krbtgt /newpassword:… /domain. - Esperar a que los controladores de dominio propaguen el nuevo hash. Durante este período, los tickets existentes siguen siendo válidos.
2. Rotar contraseñas de cuentas de servicio
Las cuentas de servicio que no especifican msDS‑SupportedEncryptionTypes pueden seguir usando RC4. Si la contraseña de una cuenta es antigua, el atacante puede aprovecharla. Se recomienda:
- Forzar el cambio de contraseña para todas las cuentas de servicio.
- Configurar la política de contraseña para que obligue a usar AES.
- Verificar que el atributo msDS‑SupportedEncryptionTypes contenga
0x00000080(AES128) o0x00000100(AES256).
El caso de AZUREREADSSOACC$ es interesante: su contraseña tiene solo dos años y el atributo está vacío. Se debe rotar su contraseña y, de ser posible, establecer el atributo para que el cliente Azure AD utilice AES.
3. Deshabilitar RC4 en los controladores
Una vez que los tickets y las contraseñas se hayan actualizado, la política de Kerberos debe ajustarse para deshabilitar RC4. En Group Policy, en Computer Configuration → Policies → Windows Settings → Security Settings → Local Policies → Security Options, se establece Network security: Force logoff when logon packet includes untrusted data a Enabled y se añade RC4-HMAC al Kerberos Encryption Types.
4. Validación y monitoreo
Después de los cambios:
- Verificar que
klist -li 0x3e7no muestre tickets RC4. - Ejecutar
net accounts /domainpara comprobar que la política de cifrado exige AES. - Revisar los logs de eventos de seguridad (ID 4624, 4648) para detectar intentos de autenticación RC4.
Conclusión
El orden recomendado es primero actualizar el krbtgt, luego rotar las contraseñas de las cuentas de servicio, y finalmente cambiar la política de Kerberos para prohibir RC4. La rotación de contraseñas es obligatoria para cualquier cuenta que haya sido usada con RC4. La configuración explícita de AES en cuentas como AZUREREADSSOACC$ no es estrictamente necesaria si la contraseña se rota, pero garantizar el soporte de AES evita problemas futuros.

