¿Riesgo de seguridad de los Servicios de Certificate Server de Microsoft AD?

1

Tenemos un servidor de CA interno para nuestro dominio ubicado en enlace . Este servidor se ejecuta Servicios de certificados de Microsoft Active Directory.

Cuando fui al sitio, pude usar un CSR que hice en una computadora con Linux para solicitar un certificado avanzado emitido para el nombre DNS de nuestro servidor proxy web. Utilicé el siguiente comando para crear la CSR:

openssl req -new -newkey rsa:2048 -keyout key.key -out csr.csr

Creo que esto es un riesgo de seguridad porque las credenciales de mi cuenta de administrador no se transfirieron a través de NTLMv2 al sitio de Servicios de certificados de la CA interna cuando ingresé ... y pude crear un certificado como si fuera el servidor proxy (IssuedTo: proxy-server.local.domain) aunque no lo esté.

Dado que todas las estaciones de trabajo en nuestro dominio tienen el certificado del servidor MS AD CS en su confiable almacén de certificados, el certificado que hice se podría usar en un ataque MITM simulando que mi PC era en realidad el servidor proxy. Esto tendría que usarse junto con una falsificación de DNS u otro tipo de ataque para que los clientes crean que mi computadora era el servidor proxy, pero aún es posible que el certificado pueda ser utilizado incorrectamente para descifrar el tráfico SSL redirigido por un MITM máquina.

¿Esto suena bien o no hay un riesgo real de seguridad aquí?

    
pregunta JJBladester 13.06.2014 - 18:28
fuente

2 respuestas

3

Certificate Services es una CA configurable que funciona con el concepto de certificado plantillas . Una plantilla describe un tipo de certificado que la CA puede emitir, en qué condiciones y con qué contenidos. Si pudiera obtener un certificado de CS, esto significa que solicitó el certificado para una plantilla para la cual se le permitió solicitar un certificado.

Lo que importa, sin embargo, es lo que está en el certificado resultante. Los invito a echar un vistazo a los contenidos del certificado (con openssl x509 -text ). Puede agregar muchas cosas en la solicitud del certificado, pero, en última instancia, la plantilla determina lo que aparece en el propio certificado. Posiblemente, el nombre de la máquina que solicitó ( proxy-server.local.domain ) no aparece realmente en el certificado, o no donde un cliente SSL lo buscaría. Un cliente SSL requiere que el nombre del servidor (de la URL) aparezca en la extensión Subject Alt Name como dNSName ; sin una extensión SAN, el cliente usará la parte CN del DN del sujeto (esto se describe en RFC 2818 ).

Si de hecho pudiera obtener un certificado que, desde el punto de vista de un cliente SSL, sería un certificado de servidor SSL válido para un servidor cuyo nombre elija, entonces sí, se puede decir que hay un certificado de seguridad. Problema que se debe solucionar. El administrador del sistema debe revisar las plantillas activadas en la CA y sus derechos de acceso.

El principal riesgo de seguridad para una CA (cualquier CA) es la falta de una administración del sistema adecuada.

    
respondido por el Tom Leek 13.06.2014 - 18:40
fuente
0

Como mencionó Tom, Windows Certificate Services se basa en plantillas de certificados para determinar los tipos de certificados que puede emitir. Esas plantillas de certificado son en realidad objetos de AD y tienen permisos que puede cambiar para permitir o negar a los grupos de AD que las soliciten. Entonces, parece que los administradores de su empresa pueden necesitar restringir los permisos si no se desean casos de inscripción como el suyo.

Además, los administradores pueden restringir el acceso a la interfaz web de CA, limitando la inscripción normal de usuarios solo a la función del asistente de Solicitud de certificado (también conocida como Inscripción de certificado). No soy positivo, pero creo que las CSR solo pueden enviarse a través de la interfaz web. Por lo tanto, la eliminación de esta funcionalidad puede limitar aún más la capacidad de solicitar certificados falsificados.

También debería poder solicitar la aprobación del administrador de certificados para los CSR enviados, lo que le da tiempo a los administradores para verificar que contienen datos legítimos antes de aprobarlos. Las funciones del administrador de certificados deben limitarse al personal autorizado que esté familiarizado con los riesgos.

Cuando se solicitan certificados SSL a través de la función Solicitud de certificado (y no a través de la interfaz web), AD puede autenticar firmemente que son el servidor que dicen ser, al menos en lo que respecta a DNS de Windows. Es posible activar Nombres alternativos del sujeto dentro de las solicitudes de certificado y eso es riesgoso, ya que permitiría a los usuarios autorizados falsificar nombres de servidores. Usted o sus administradores pueden leer más sobre esto en este Artículo de Microsoft .

He visto que muchas organizaciones no toman los Servicios de Certificate Server lo suficientemente en serio. Esto es desafortunado porque, como usted menciona, cualquier cliente de AD confiará en cualquier certificado que emita. Es importante que los administradores conozcan la funcionalidad y los riesgos para que puedan bloquear la funcionalidad del certificado de manera adecuada.

    
respondido por el PwdRsch 13.06.2014 - 19:52
fuente

Lea otras preguntas en las etiquetas