¿Cómo manejar certificados hechos por nosotros mismos para ejecutables de Windows?

3

Tengo un producto que vendo a clientes. Incluye una PC con Windows 7, algo así como un sistema Kiosk. Hay dos cuentas de usuario, una de administración y una de usuario. La cuenta de usuario casi no debe tener derechos, mientras que la cuenta de administrador debe tener todos los derechos. Para hacer las cosas más seguras, utilizo las políticas de restricción de software de Windows (SRP), de modo que el usuario solo pueda ejecutar ejecutables firmados por mí con una regla. Creé estos certificados con OpenSSL y luego firmo mis ejecutables con SignTool . Esto funciona como un encanto.

Mi pregunta es ahora, ¿cómo manejar estos certificados? Vendo estas PC en todo el mundo y no puedo actualizar todos estos certificados si caducan. Podría hacer que duren 100 años, pero esto no me tranquiliza. Ofrezco actualizaciones de software cada año más o menos. ¿Existe una manera fácil y segura de actualizar los certificados con estas actualizaciones de software?

Me encantaría que alguien me ayudara con esta pregunta.

Gracias de antemano, Max

    
pregunta Max R. 15.09.2016 - 00:20
fuente

1 respuesta

1

Realmente debe usar certificados que se emitan desde un certificado raíz de confianza y no uno autofirmado. Esto le da a los clientes el conocimiento de que el certificado en uso es válido. El uso de certificados autofirmados significa que alguien podría, teóricamente, reemplazar el certificado por el suyo, utilizando su propia clave privada para firmar un archivo ejecutable reemplazado. Así que realmente no está proporcionando tanta seguridad utilizando los autofirmados.

Además, no son solo los certificados los que necesita manejar, sino los ejecutables firmados. Supongo que está bien que los clientes retengan un ex firmado con un certificado caducado, siempre y cuando las fechas coincidan. Si esto no es aceptable, tendrá que crear una manera de distribuir los archivos actualizados y este es un problema de distribución de software estándar. Estoy seguro de que encontrará una biblioteca o herramienta conveniente para ayudar, dependiendo de la cadena de herramientas que esté utilizando para crear y distribuir el código en primer lugar.

    
respondido por el Julian Knight 15.09.2016 - 00:32
fuente

Lea otras preguntas en las etiquetas