Vigilancia de seguridadMejoras de PKI en Windows

John Morello

Este artículo se basa en una versión preliminar de Windows Server 2008. Por tanto, toda la información de este documento está sujeta a cambios.

Windows ha ido incluyendo una sólida compatibilidad con una amplia variedad de plataformas para la infraestructura de claves públicas (PKI) desde el lanzamiento de Windows 2000. Ese lanzamiento incluía la primera capacidad nativa de entidad de certificación, incorporó la inscripción automática y ofreció compatibilidad con la autenticación basada en tarjetas inteligentes. En Windows XP y Windows Server 2003, esas

capacidades se ampliaron con el objetivo de ofrecer opciones de inscripción más flexibles con las plantillas de certificados de la versión 2, además de más compatibilidad con la inscripción automática de certificados de usuario. En Windows Vista® y Windows Server® 2008 (originariamente, bajo el nombre en código "Longhorn"), la plataforma PKI de Windows® da otro paso en su avance hacia una mayor compatibilidad con los algoritmos avanzados, comprobaciones de validez en tiempo real y mejoras de la capacidad de administración. Esta columna analiza las nuevas características de PKI que hay en Windows Vista y Windows Server 2008, y cómo pueden las empresas hacer uso de ellas de forma que se reduzcan los costos y aumente la seguridad.

Las mejoras de PKI en Windows Vista y Windows Server 2008 se centran en cuatro pilares principales: la criptografía, la inscripción, la capacidad de administración y la revocación. Además de estas mejoras específicas de sus características, la plataforma PKI de Windows también se beneficia de otros avances del sistema operativo, tal como el administrador de funciones, que facilita la creación e implementación de las nuevas autoridades de certificación (CA). Asimismo, muchas otras partes de Windows pueden sacar provecho de las mejoras conseguidas en la plataforma PKI, tal como la compatibilidad en Windows Vista para usar tarjetas inteligentes para el almacenamiento de las claves de sistema del cifrado de archivos (EFS).

Criptografía

Las mejoras en el pilar de la criptografía son doble. En primer lugar, con la introducción de la criptografía de próxima generación (CNG), Windows ofrece ahora una capacidad acoplable de cifrado que no distingue protocolos y que hace que cada algoritmo individualmente sea más fácil de desarrollar y de tener acceso mediante programación. En segundo lugar, CNG aporta una nueva compatibilidad con los algoritmos de la Suite B que introdujo la Agencia de Seguridad Nacional (NSA) de Estados Unidos en 2005.

CNG es una interfaz de criptografía nueva y fundamental para Microsoft, además de ser la API recomendada para aplicaciones futuras de Windows, compatibles con el sistema criptográfico. CNG proporciona un host con una funcionalidad nueva centrada en el desarrollador, que incluye un sistema de detección y de sustitución de los algoritmos más fácil, generadores reemplazables de números aleatorios y una API cifrada en modo kernel. Gracias a estas capacidades nuevas, CNG se vuelve compatible con versiones anteriores mediante el conjunto de algoritmos que se incluían en la versión anterior, CryptoAPI 1.0. Actualmente, CNG está siendo evaluado para la certificación FIPS 140-2 nivel 2 así como para criterios comunes en plataformas seleccionadas.

La compatibilidad de la Suite B de CNG incluye todos los algoritmos necesarios: AES (todos los tamaños de clave), la familia SHA-2 (SHA-256, SHA-384 y SHA-512) de algoritmos hash, la curva elíptica Diffie-Hellman (ECDH) y la curva elíptica del algoritmo de firma digital (ECDSA) por encima de las curvas estándar principales P-256, P-384 y P-521 del Instituto Nacional de Estándares y Tecnología (NIST) de Estados Unidos. La NSA ha determinado que las implementaciones certificadas de la Suite B se usarán para proteger información clasificada como altamente secreta, secreta e información privada que, en un pasado, se describió como confidencial pero no clasificada. Todos los algoritmos de la Suite B se desarrollaron abiertamente y ahora algunos otros gobiernos están estudiando también adoptarlos como estándares nacionales.

Estas mejoras de nivel inferior en la plataforma PKI de Windows ofrecen a los desarrolladores métodos más seguros para la protección de datos, y al mismo tiempo se crea un subsistema que es más fácil de mantener y de mejorar con el tiempo. Dado que CNG es una arquitectura acoplable, los algoritmos nuevos pueden agregarse a medida que son necesarios y CNG abstrae estos proveedores del nivel de la aplicación. El resultado claro es que Windows Vista y Windows Server 2008 están diseñados para ofrecer una plataforma avanzada y con capacidad de evolución para desarrollar las aplicaciones y servicios activados con PKI.

Inscripción

La experiencia de la inscripción de certificados en Windows ha mejorado increíblemente gracias a una herramienta nueva de inscripción basada en asistentes, un control mejorado de la expiración de los certificados, una API nueva, una capacidad de "inscribirse en nombre de" y credenciales móviles. Estas capacidades mejoradas permiten reducir el costo total de propiedad de una PKI, lo que hace que sea más fácil implementar certificados en las empresas mediante una administración centralizada y con un impacto mínimo sobre el usuario.

El cambio más notable desde un punto de vista de la inscripción es la nueva interfaz de usuario de inscripción de certificados, la cual se muestra en las figuras 1 y 2. Esta interfaz de usuario reemplaza la versión anterior, que era más limitada y que carecía de la capacidad para aceptar datos de los usuarios durante el proceso de la inscripción. La nueva interfaz permite a los usuarios especificar datos durante la inscripción (si el administrador configura la plantilla de certificado para que los requiera). La interfaz también proporciona explicaciones claras de por qué un usuario quizás no puede inscribirse a una plantilla concreta.

Figura 1 Selección de los certificados disponibles

Figura 1** Selección de los certificados disponibles **(Hacer clic en la imagen para ampliarla)

Figura 2 Estado de los certificados no disponibles

Figura 2** Estado de los certificados no disponibles **(Hacer clic en la imagen para ampliarla)

Otra mejora clave de la interfaz de inscripción se encuentra en el control de los certificados que expiran. La nueva interfaz ofrece a los usuarios finales información clara acerca de cuáles son los certificados que expiran y permite a los usuarios renovar fácilmente certificados o desestimar las advertencias de la propia interfaz. Aunque los administradores pueden actualizar automáticamente los certificados a través de la inscripción, esta capacidad de advertencias es importante para los usuarios móviles o desconectados que quizás inician sesión en la red corporativa pocas veces y que tienen certificados a punto de expirar.

Para los desarrolladores que trabajan con la inscripción de certificados, hay una nueva API disponible que ofrece importantes mejoras sobre los controles anteriores basados en ActiveX® (xenroll.dll y scrdernl.dll). La nueva API para la inscripción de certificados proporciona una jerarquía de clases bien definida y que es mucho más sencilla de entender y de codificar. Esta nueva API reemplaza xenroll tanto en Windows Vista como en Windows Server 2008.

Este cambio en la API repercuta sobre los desarrolladores y profesionales de TI, ya que los clientes Windows Vista no pueden usar las capacidades de inscripción basadas en web que se proporciona en Windows Server 2003. Esto se debe a que las páginas de inscripción (almacenadas en el directorio virtual de /certsrv de forma predeterminada) usan el control xenroll que ya no está presente en Windows Vista. El artículo de Knowledge Base "Cómo usar páginas de servicios web de inscripción de certificados con Windows Vista" (support.microsoft.com/kb/922706) ofrece información acerca de una solución alternativa. La inscripción automática desde Windows Server 2003 a Windows Vista no se ve afectada.

En versiones anteriores de Windows Server, los agentes de inscripción no quedaban limitados a aquellos en nombre de los cuales podían inscribirse. Es decir, una vez que un usuario recibía habilidades de agente de inscripción, podía inscribirse en nombre de cualquier otro usuario en el bosque. Por supuesto, esto significaba que ese usuario podía traspasar sus privilegios, ya que se inscribía en nombre de un usuario existente y suplantaba a ese usuario con el certificado recién creado. En un intento para derrotar esta amenaza, las habilidades de agente de inscripción se otorgaban sólo a usuarios de gran confianza. Aunque este método mejoraba la seguridad, hacía también que los modelos de implementación fueran menos flexibles, ya que sólo un número pequeño de usuarios podían inscribirse en nombre de otros usuarios. Como resultado de todo esto, una organización geográficamente dispersa se enfrentaba a una mayor complejidad a la hora de implementar certificados a los usuarios finales (como, por ejemplo, las tarjetas inteligentes).

En Windows Server 2008, los agentes de inscripción se pueden restringir a un nivel mucho más granular. Las restricciones pueden basarse en los elementos en nombre de los cuales se puede inscribir un usuario o las plantillas sobre las que se puede realizar una inscripción, tal como se muestra en la figura 3. Por ejemplo, ahora una organización podrá proporcionar a los profesionales de TI locales la capacidad de inscribirse en nombre de todos los usuarios de su sucursal, pero no de los usuarios del grupo de Recursos humanos. Este método granular para agentes de inscripción permite a las empresas delegar de forma más eficaz y segura capacidades de inscripción en toda la organización.

Figura 3 Restricciones del agente de inscripción

Figura 3** Restricciones del agente de inscripción **(Hacer clic en la imagen para ampliarla)

Uno de los desafíos más importantes de la administración de una PKI es la administración de todos los pares de claves dispersos entre todos los dispositivos de una organización. Incluso en un entorno de PKI moderadamente complejo, cualquier usuario puede poseer varios pares de claves (como, por ejemplo, para EFS, la autenticación a una red inalámbrica y S/MIME) que deben estar disponibles independientemente del lugar en el que haya iniciado sesión. Con la creciente presencia de equipamiento móvil y Terminal Services, es más importante que nunca replicar esos pares de claves en la red de modo que estén disponibles para los usuarios desde dondequiera que inicien sesión. Mientras los símbolos (token) de usuario, tales como las tarjetas inteligentes, pueden ayudar a resolver ciertos aspectos de este problema, las organizaciones pueden aún tener usuarios que no reciben tarjetas o certificados que no se almacenan en las tarjetas. Las credenciales móviles resuelven estos problemas al almacenar de forma segura los pares de claves y certificados en Active Directory®. De esta forma, éstos quedan a disposición de los usuarios independientemente del punto desde donde inicien sesión.

Las credenciales móviles se ofrecieron por primera vez en Windows Server 2003 SP1 y permitían que los certificados y las claves tenga movilidad segura entre equipos sin necesidad de usar perfiles de usuario móviles. En Windows Vista y Windows Server 2008, esta capacidad va incluida de forma predeterminada y se implementa en el servicio Cliente de Servicios de Certificate Server (CSC). Las opciones de configuración, como por ejemplo los certificados que tienen movilidad y cómo arbitrar conflictos, se administran a través de una directiva de grupo. En Windows Vista y Windows Server 2008, el servicio CSC también permite la movilidad de nombres de usuario y contraseñas almacenados. Aunque esta capacidad se incluye de forma predeterminada en Windows Vista, debe tenerse en cuenta que las credenciales móviles son totalmente compatibles con Windows XP y cuando se inicia sesión en un controlador de dominio de Windows Server 2003 (mediante la implementación de una actualización; consulte support.microsoft.com/kb/907247). Esto significa que no es necesario esperar hasta completar una implementación de Windows Vista antes de poder sacar partido de esta tecnología.

Capacidad de administración

Se realizaron varias actualizaciones en Windows Server 2008 para mejorar la capacidad de administración del servicio Entidad de certificación (CA) al facilitar la configuración, supervisión y ejecución de una manera altamente disponible. La instalación de CA está integrada con la herramienta del administrador de funciones que proporciona un método simplificado para instalar este servicio. Los valores predeterminados se definen para cada paso del proceso y, por lo tanto, la instalación ahora puede realizarse en modo desatendido. Por último, la instalación tiene mejores capacidades de diagnóstico que facilitan la solución de problemas o errores que puedan surgir.

La supervisión del servicio de CA ha mejorado mucho en Windows Server 2008 (al igual que los diagnósticos de certificados en general de Windows Vista). Además de una infraestructura de eventos mucho más flexible que se extiende por todo el producto, el servicio de CA ahora incluye una consola de supervisión integrada y que se conecta con Systems Center Operations Manager 2007 (antes conocido como MOM) para proporcionar un servicio de alertas de nivel empresarial. La consola de supervisión de PKI empresarial representa una mejora con respecto a su predecesor, que se incorporó en el paquete de administración de Windows Server 2003. Esta consola nueva se incluye en el producto mismo y ahora puede supervisar los URI de Protocolo de estado de certificados en línea (OCSP) además de todos las CA de un bosque en particular.

El paquete de administración de Operations Manager ofrece una capacidad pasiva de supervisión de la PKI de una organización, incluido el servicio de alertas integrado basado en umbrales. Por ejemplo, el paquete de administración puede usarse para supervisar las actualizaciones de una lista de revocación de certificados (CRL) y notificar a los administradores de PKI cuando una CRL alcance número de días u horas determinados antes de su expiración. Por último, hay disponible una variedad de nuevos contadores de rendimiento que ayudan en la solución de problemas y la supervisión del rendimiento global del propio servicio de CA. Estos contadores pueden usarse para capturar datos como, por ejemplo, el número de certificados que se emiten por segundo.

Windows Server 2008 estrena una nueva capacidad: compatibilidad con los clúster de nivel de hardware del servicio de CA. Este compatibilidad con clúster usa la tecnología estándar de Servicio de Cluster Server de Microsoft (MSCS) y es compatible con las configuraciones activa/pasiva de dos nodos. La compatibilidad con clúster permite ejecutar una infraestructura de emisiones de manera altamente disponible y se puede usar en implementaciones de clúster geográficamente dispersas. Si decide usar la compatibilidad con clúster, tenga en cuenta que un clúster de CA no resulta en una disponibilidad para toda la PKI. Si bien los clúster contribuyen a garantizar la disponibilidad de las CA mismas, una PKI que funciona correctamente probablemente dispondrá de otros componentes que no se ejecutan directamente en las CA. Por ejemplo, los puntos de distribución CRL (CDP) y contestadores OCSP también deben ejecutarse de una manera altamente disponible para asegurar que la revocación pueda llevarse a cabo. Además, cuando se usan módulos de seguridad de hardware (HSM), especialmente los HSM basados en red, representan también un punto de error posible en una PKI. Los clúster representan una sólida capacidad nueva para proporcionar alta disponibilidad de la entidad de certificación en sí, pero no son la panacea de la disponibilidad de una implementación completa de PKI.

Revocación

Las CRL se han usado durante mucho tiempo para proporcionar comprobaciones de validez de los certificados. Estas CRL incluyen los números de serie de todos los certificados cuyo período de validez todavía no ha expirado pero que ya no deben ser de confianza. Por ejemplo, si un empleado tiene un certificado con una fecha de expiración del 31/12/2008 pero el empleado deja la organización el 1 de septiembre de 2007, los números de serie de su certificado se colocarían en la CRL. A continuación, la CRL estaría disponible en varios puntos de distribución de CRL (CDP), tales como las rutas de acceso HTTP y de Protocolo ligero de acceso a directorios (LDAP).

Aunque su uso todavía es muy generalizada, las CRL tienen algunas desventajas clave. En primer lugar, las CRL se publican mediante las CA de forma periódica (generalmente, una o dos veces al día). Los clientes entonces descargan estas CRL y las copian en la memoria caché hasta el intervalo de publicación siguiente. Durante este período en la memoria caché, los certificados pueden ser revocados, lo cual hace que el cliente no sea consciente del estado más actual. En segundo lugar, en organizaciones muy grandes, las CRL pueden tener un tamaño considerable (a veces hasta más de 100 MB). Distribuir estos archivos a través de una red de gran tamaño y extensamente dispersa puede ser difícil o imposible, especialmente en escenarios de sucursales o de otros entornos con ancho de banda limitado.

Para remediar estos problemas, se creó OCSP y se definió en RFC 2560. OCSP proporciona un método de validación en tiempo real del estado de los certificados. Un cliente OCSP se ejecuta en el equipo en el que se debe comprobar la validez de un certificado de hoja. El software del cliente entonces se dirige a un contestador OCSP y envía un mensaje en el que se requiere el estado de validez del certificado de hoja. El contestador comprueba la validez del certificado y envía una respuesta al cliente en tiempo real. Este método evita los problemas de almacenamiento en la memoria caché y de distribución.

Por primera vez, la funcionalidad del cliente OCSP se incluye en Windows Vista (antes se requería software de terceros) y se puede configurar a través de una directiva de grupo. Windows intentará usar OCSP de forma predeterminada, pero recurrirá a las búsquedas de CRL estándar si el contestador no está disponible.

En Windows Server 2008 se proporciona un contestador OCSP para responder a estas solicitudes. El contestador se instala través de un administrador de funciones y puede supervisarse mediante el paquete de administración de Operations Manager 2007. Dado que el cliente y el contestador se adaptan a los estándares de OCSP, pueden integrarse fácilmente en los entornos de OCSP existentes que usan componentes de terceros basados en estándares similares. Por ejemplo, es totalmente admisible que un cliente Windows Vista realice la comprobación del estado de un certificado contra el contestador de terceros y que un contestador de Windows Server 2008 responda las consultas de la aplicación cliente de terceros. Además, el contestador OCSP de Windows puede responder a las solicitudes de certificados emitidos por cualquier CA que cumpla los estándares normativos. Las CA de Windows Server 2008 (y CA basadas en Windows en general) no son obligatorias.

Conclusión

La plataforma PKI en Windows Vista y Windows Server 2008 contiene muchas mejoras y varias características nuevas que aumentan la seguridad y reducen los costos de su implementación y funcionamiento. La nueva API de CNG proporciona a los desarrolladores un entorno de programación más fácil y compatibilidad con los nuevos estándares de cifrado. Las mejoras de las inscripciones permiten a las organizaciones aprovisionarse con mayor facilidad de muchos certificados y permitir una movilidad segura de las claves en toda la empresa. De igual forma, el nuevo paquete de administración y la capacidad de clúster de CA facilita la supervisión del estado de las CA y asegura una alta disponibilidad. Por último, las mejoras en la comprobación de la revocación usan un método basado en estándares que proporciona una validación de certificados en tiempo real sin los costos de ancho de banda derivados de la distribución CRL. Como resultado de todo ello, Windows Vista y Windows Server 2008 elevan la plataforma PKI de Windows a un nuevo nivel.

Recursos para las mejoras en PKI

John Morelloha trabajado con Microsoft desde el año 2000. Bajo el cargo de Consultor jefe, ha diseñado soluciones de seguridad para empresas miembro del Fortune 100 y para clientes de la administración pública y de defensa. Actualmente, es Administrador jefe de programas del grupo de Windows Server que trabaja con tecnologías de acceso remoto. Puede leer al blog de su equipo en la dirección blogs.technet.com/WinCAT.

© 2008 Microsoft Corporation and CMP Media, LLC. Reservados todos los derechos; queda prohibida la reproducción parcial o total sin previa autorización.