¿Es posible crear una entidad de certificación autofirmada?

6

¿Sería posible crear un certificado legítimo con el bit de CA establecido? No tengo un caso de uso asociado a esto, solo tengo curiosidad.

Para explicar mi pregunta: Supongamos que firmo una clave pública (que pertenece a "B" en quien confío), ¿sería posible dejar que "B" firme otras claves públicas (como "C", "D", "E", etc.) ¿tal que yo sería la raíz de confianza conocida? No se debe permitir que "C", "D", "E", etc. firmen otros certificados que me tengan como la raíz confiable.

Tengo entendido que cuando firmo la clave pública, el bit de CA debería establecerse; sin embargo, cuando "B" la firma, el bit de CA se desactivaría.

¿Es así?

    
pregunta AJ Henderson 23.01.2013 - 06:32
fuente

4 respuestas

11

Lo que describe es un "Certificado de CA privado", y se utilizan todos los días. Un "certificado autofirmado" es cualquier certificado que no tenga la firma digital de una autoridad de certificación superior; el certificado básicamente le dice a alguien que lo obtiene: "Estoy garantizándome por mí mismo; puedes confiar en mí o no". Los SSC pueden afirmar que son CA, por lo que si confía en ellos, confíe en los certificados firmados con el certificado de CA. El certificado CA autofirmado en efecto se convierte en una "raíz de confianza privada". Debido a que carece de confianza global, este certificado generalmente no es lo suficientemente bueno para que un cliente anónimo se conecte a su servidor web a través de Internet, pero dentro de los límites de una red de computadoras que usted controla completamente, puede decirle a esas computadoras que confíen en cualquier certificado te gusta.

Sin una autoridad central, cada máquina en la red requeriría el certificado de todas las otras máquinas en la red, y confía implícitamente en todas ellas. Esta sencilla estructura de "red" de la red es factible para un número pequeño de máquinas como 3-5, pero en una red con, digamos, 100 máquinas, cada máquina debe tener el certificado para las otras 99, y la próxima máquina se agregará la red debe obtener de alguna manera su certificado aceptado implícitamente por las 100 máquinas existentes. La estructura de CA agiliza drásticamente este proceso; todas las máquinas confían implícitamente en uno y solo un certificado, la CA, y un certificado firmado por una nueva máquina le dirá a todas las otras computadoras "la CA confía en mí; usted también debería".

Ahora, esto aún requiere que su CA sea confiable ; solo porque sea de confianza no significa necesariamente que deba serlo. La clave privada del certificado de CA debe estar protegida contra los intentos de robo por parte de un atacante y, en caso de que lo haga, debe tener una forma de revocar ese certificado sin perder toda la confianza en toda la red. En una red doméstica pequeña, como indica el comentario de AJ, no es un gran problema revocar el único certificado de CA principal y regenerar todos los certificados en la red, pero en redes más grandes puede detener todo el proceso.

Por lo general, la redundancia y la tolerancia al compromiso se logran con múltiples niveles (al menos dos) de CA en su cadena de confianza, al igual que la cadena de CA de confianza mundial. Habría un certificado de "raíz confiable", una "clave dorada", cuya versión pública es de confianza implícita en las máquinas de la red. La clave privada se almacena en un HSM, y cuando no genera certificados de CA "de cara al público", se guarda en una bóveda segura que requiere la aprobación de múltiples ejecutivos para acceder.

Esos certificados de CA "públicos" son los que utilizan los servidores PKI para generar los certificados que no son de CA emitidos a los servidores y clientes en la red. Si un atacante pone en peligro uno de estos certificados de CA, ese certificado puede ser revocado (indicando a todas las computadoras que no confíen en él o a cualquier certificado firmado por él), y cualquier computadora que tenga un certificado firmado por esa CA puede probar su identidad de alguna otra manera al sistema PKI, y obtenga un nuevo certificado de uno de los certificados de CA no comprometidos. Mientras tanto, los ejecutivos firman, el HSM se recupera bajo la vigilancia de muchas personas interesadas, y se genera un certificado de CA de reemplazo para reemplazar el revocado en el sistema PKI.

    
respondido por el KeithS 23.01.2013 - 17:07
fuente
3

Sí, eso es posible. Esto es sólo el encadenamiento de certificados. Puede hacer un certificado con la configuración que desee, el único problema es que, a menos que la computadora de alguien haya confiado específicamente en su certificado raíz, no confiará en ninguno de los certificados que se derivan de su raíz.

Esto generalmente se denomina CA privada o CA empresarial y se utiliza con mucha frecuencia para PKI empresarial. Los detalles exactos de cómo configurar uno están probablemente más allá del alcance de un sitio de control de calidad, pero una búsqueda rápida en Google de "autoridad de certificación privada" o "autoridad de certificación empresarial" debería proporcionarle toda la información que necesita saber.

    
respondido por el AJ Henderson 23.01.2013 - 15:30
fuente
1

Esta intención no está bien explicada. El escenario mencionado tampoco es tan claro. Hay algunos hechos. Los certificados de CA no se pueden clasificar como puntos de emisión de certificados autofirmados. Se usa ssc cuando no hay CA para realizar la tarea. Supongo que está asumiendo que después de que una entidad emisora de certificados emitió un certificado a un usuario, a los usuarios se les da la capacidad de crear un ssc. O cree un certificado en nombre del punto de emisión principal. El segundo método se puede lograr pero hay ciertos requisitos. Por ejemplo, con los servidores de Windows y un pki, si un controlador de dominio confía en un determinado usuario o en una computadora, es posible emitir un certificado en nombre de los usuarios, etc. También es aplicable cuando se requiere la implementación de tarjetas inteligentes. También es posible inscribir miembros que no sean de dominio, pero el requisito es tener un perfil válido con un cliente que tenga instalado el certificado raíz. Puede tener más de un agente de inscripción y puntos de emisión distribuidos. Esto también es cierto con las autoridades de certificación comercial. Ellos delegan los fideicomisos. Distribuir puntos de emisión bajo diversas pólizas. Pero tenga en cuenta que hay perfiles de requisitos para cada escenario. Y una forma de confiar. Es posible establecer cadenas de confianza con las AC pero no con los SSC.

    
respondido por el Lasith 23.01.2013 - 09:16
fuente
1

Tuve que agregar otra respuesta debido a la razón por la cual la pregunta cambió (editó) o se produjeron malentendidos y tengo que disculparme. La pregunta original tenía la palabra Certificado autofirmado que hizo confusiones. Si está utilizando una CA, no es necesario crear certificados autofirmados. Lo que usted está mencionando aquí es una jerarquía privada de CA. SSC no requiere CAs. Pero las CA tienen un certificado autofirmado (es decir, una raíz de confianza). Emisión de certificados de la jerarquía de CA por la propia jerarquía. Los SSC solo están firmados por una determinada persona o un servidor. Si desea utilizar el encadenamiento, no importa si es interno o externo (privado o público). Es muy posible crear la cadena de confianza con una PKI. Esa es la intención principal y lo que realmente estás mencionando.

Al considerar la red interna, es posible crear una jerarquía de 2 o 3 capas de niveles de servicio de certificados para una mejor seguridad. Las CA de nivel superior o raíz se pueden usar solo cuando es necesario y, por lo general, se mantienen fuera de línea mientras que las CA emiten el trabajo (nivel 3). Se utiliza para emitir certificados para la jerarquía y no para usuarios / dispositivos finales. Las CA intermedias se pueden utilizar para emitir certificados para las CA emisoras. También podría haber servidores de políticas, un servidor especial que regule las políticas para cada nivel. Las CA que emiten emiten los certificados a los usuarios, computadoras, dispositivos, etc. Para verificar si se revocó el certificado, es posible usar listas de revocación de certificados y, para el acceso externo, es posible implementar servidores OCSP. La intención de la evocación del certificado es evitar la comprometimiento del certificado y los problemas de confianza. Si el certificado no requiere ser de confianza o ya no es necesario, se puede revocar o suspender hasta que el problema se resuelva.

De esta manera es posible adquirir una cadena de confianza y estado. Pero tenga en cuenta que la revocación del certificado tiene vulnerabilidades. Es por esto que Google dejó caer el CR. La cadena de confianza y la propagación de confianza es la intención de una jerarquía de CA bien establecida.

Para la empresa no necesita una jerarquía completa. Incluso se puede desplegar una raíz de Enterprise. Sin embargo, todavía hay que mantener las brechas. Se recomienda encarecidamente a los administradores que implementen autoridades de certificación subordinadas y un servidor de políticas independiente. Pero esto no es muy económico cuando se trata de redes pequeñas. Pero aún así proporciona una mejor seguridad. Incluso podría usar tarjetas inteligentes con una PKI adecuada. Sin embargo, tenga en cuenta que existe un desafío con el acceso externo a las CRL con una PKI privada de la empresa. Pero aún así es eficiente si está bien planeado.

    
respondido por el Lasith 24.01.2013 - 10:09
fuente

Lea otras preguntas en las etiquetas