Almacén de certificados predeterminado de Windows para certificados raíz intermedios y certificados de confianza: ¿mi certificado CA autofirmado va a "intermedio" de forma predeterminada?

2

¿Es posible crear un certificado de CA raíz autofirmado que Windows importará a la Raíz de confianza de forma predeterminada en lugar del almacén de certificados Intemediate? Obviamente, no lo hará sin que la gran ventana gigante pregunte si está realmente seguro, pero sería bueno no tener que ir al paso adicional de especificar en qué almacén de certificados va.

Actualmente, tanto nuestra CA raíz como nuestros certificados intermedios de forma predeterminada (si hace clic con el botón derecho del ratón > instalar) ingresan al almacén de certificados intermedios. Si le digo que instale en el almacén raíz de confianza para el certificado raíz, entonces todo funcionará como se espera (cadena de confianza, etc.). Sin embargo, idealmente, no deberíamos tener que configurar esto y, en su lugar, suponer que debería ir allí (aún así se mostraría el cuadro de diálogo de confirmación). ¿Es esto posible?

Hemos creado (y aún estamos ajustando) una CA usando phpseclib. Como ejemplo, aquí hay una CA raíz que generé (con detalles desinfectados):

-----BEGIN CERTIFICATE-----
MIID7zCCAtmgAwIBAgIBITALBgkqhkiG9w0BAQUwgYYxCzAJBgNVBAsMAklUMREw
DwYDVQQKDAhUZXN0IE9yZzEPMA0GA1UEBwwGRGFsbGFzMQswCQYDVQQIDAJUWDEL
MAkGA1UEBgwCVVMxHzAdBgkqhkiG9w0BCQEMEHRlc3RAZXhhbXBsZS5jb20xGDAW
BgNVBAMMD1Rlc3RpbmcgUm9vdCBDQTAiGA8yMDEzMDcxMjA1MDAwMFoYDzIwMTQw
NzEyMDUwMDAwWjCBhjELMAkGA1UECwwCSVQxETAPBgNVBAoMCFRlc3QgT3JnMQ8w
DQYDVQQHDAZEYWxsYXMxCzAJBgNVBAgMAlRYMQswCQYDVQQGDAJVUzEfMB0GCSqG
SIb3DQEJAQwQdGVzdEBleGFtcGxlLmNvbTEYMBYGA1UEAwwPVGVzdGluZyBSb290
IENBMIIBIDALBgkqhkiG9w0BAQEDggEPADCCAQoCggEBANKeGI3lqA2GXEZj/PJc
wxENmoXH3xgHyu21/tXIMQCTPytg68Zo3g/A3YpUJrRA/atnwIe4efBRGOJPEL2e
YHcswVKaD0dowgaPCGhhHb7gJNZLW0bFDO3RnKaWN27cPDmJ1g0vFomUOq9aEiGu
glDolVWEjwmd4jhlndzBap5kiBYuS5LsG0R0j+5V/M+okEozNU3ZFY9JJQj3ktMi
CwBfnL+wGznCrOysu/QBtfnifk1U2Ai/fB+UMbQ/Y7pVAc/gG4aQHDBnS6G8FCsq
zlZ5yVVxqtueSO13E1pdTZCnnjurfGS01Q66HAV88ytO77637NUZ7S4LmjNasZnr
qJ0CAwEAAaNoMGYwCwYDVR0PBAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0O
BBYEFMs7EewverdoXjgsYVkfyh7IixciMCcGA1UdJQQgMB4GCCsGAQUFBwMCBggr
BgEFBQcDAQYIKwYBBQUHAwQwCwYJKoZIhvcNAQEFA4IBAQCfVm1cwB5rWp43vjbv
vYrWnAeYtgnusFzho+jizbR8Rm3Ue3ahlrARDY4m7h9blAXJXTTo8clDrBaIwE3h
T8laWJSNreBsCsjm1kKNYmAALiHAKSrKsn9ha52bw1SDaPMEXa9Gjr2OsteUyfWh
J0MHIjmVHymNaJFNQP9wE3osD6DR3YSENLgVBwq400dikZYHbjWbiwGtiiUl5UiS
iPWgXtj2NQa7RbXIPZQOvCECvqaB8NNeI0W/IyN3S5PHr6t9XkPPq9aq3VaFwF7w
BrddqctgjKdpFQpsb/YOfxwk51Wg8arPajmrItKMenaA3k85U8kCIPhGs1fUioNm
iep5
-----END CERTIFICATE-----

¿Estamos haciendo algo mal, configurando o no configurando una extensión? Tal vez necesita estar en formato pfx o en otro formato en lugar de PEM? ¿O Windows siempre tendrá el valor predeterminado como intermedio, y no hay nada que hacer al respecto?

    
pregunta jvaughn 13.07.2013 - 02:03
fuente

2 respuestas

3

Windows aplica algunas heurísticas no realmente documentadas para saber dónde debe ir su certificado. Aparentemente, estas heurísticas han cambiado: cuando importo su certificado en un sistema con Windows XP, aparece de manera predeterminada en el almacén raíz (con la gran advertencia), pero cuando lo pruebo en un sistema Windows 2008R2, va al almacén intermedio de CA.

Una forma de evitar el problema es que las CA raíz son objetos muy sensibles y no deben importarse "automáticamente". Se puede usar una CA raíz falsa para causar un daño considerable a la víctima y no estoy seguro de que una sola ventana emergente sea realmente suficiente como medida de protección. La ventana emergente no es ni siquiera roja y de aspecto aterrador; es más como un aburrido muro de texto:

Escomolosacuerdosdelicencia:¿quiénlosleerealmente,honestamente?

Enestascondiciones,realmentenopuedoculparaMicrosoftpordirigirlasimportacionesdecertificadosdeformapredeterminadaaunatiendadeCAintermedia.

Ahora,parasupreguntaespecífica,situvieraqueaventurarmeaadivinarquéhacequealgunasversionesdeWindowsconsiderensucertificadocomo"probablemente no sea una CA raíz", señalaría la corta vida útil. Los certificados de CA raíz suelen durar más de un año. Sugiero tratar de hacer que el certificado sea válido por más o menos 20 años. Esto puede o no resolver su problema, pero si lo hace, mucho mejor.

Nota: un certificado que es autoemitido (el DN del sujeto y el DN del emisor son iguales) y el autofirmado no es necesariamente una raíz; Según X.509 , una CA puede emitir tales cosas si quiere manejar una transición suave al intentar cambiar alguna característica. en su certificado. El algoritmo de validación de ruta incluye una gran cantidad de disposiciones para este CA intermedio publicado certificados.

    
respondido por el Thomas Pornin 24.07.2013 - 22:58
fuente
0

No hay forma de controlar las heurísticas de los certificados de Windows, pero aún puede hacer que sea una operación de un solo paso.

Puedes distribuir un script que lo haga. Tenga en cuenta que debe ser ejecutado por un administrador, ya que los usuarios sin privilegios no pueden modificar el almacén raíz de la máquina . Suponiendo que los certificados están en un recurso compartido de red, podría utilizar:

certutil -addstore Root \path\to\rootcertificate.cer
certutil -addstore Intermediate \path\to\intermediatecertificate.cer

Alternativamente, creo que un no administrador puede instalar el certificado solo con la opción "-usuario" , por ejemplo:

certutil -user -addstore Root \path\to\certificatefile.cer

Si tiene un dominio, es mucho más fácil distribuir certificados a las tiendas apropiadas a través de la Política de grupo . Esto lo hace automático al unirse al dominio, por lo que no se requiere ninguna acción en el cliente.

    
respondido por el DoubleD 02.04.2018 - 18:59
fuente

Lea otras preguntas en las etiquetas