seguridad y el complemento Qt bien construido

4

"Todo lo que tendrías que hacer es crear un complemento y podrías completar el software por completo".

Estoy creando una aplicación utilizando complementos. Creo que todo lo que tiene que hacer es crear un complemento y copiarlo en el directorio correcto y mi programa principal lo ejecutará. Me gustaría que el programa principal fuera lo suficientemente inteligente como para detectar complementos no autorizados y rechazarlos. Una firma encriptada en cada plugin funcionaría bien. ¿Alguien ha hecho algo hacia un marco seguro y multiplataforma para los complementos de Qt? ¿O una biblioteca multiplataforma para generar firmas para bibliotecas compartidas?

Soy consciente de cómo Windows hace esto. Linux no tanto. No necesito compatibilidad con Mac.

¡Gracias por tu tiempo!

    
pregunta Jay 01.12.2011 - 21:22
fuente

2 respuestas

6

Como lo sugiere bstpierre, no puede protegerse contra usuarios malintencionados ya que un complemento permite, por definición, ejecutar código arbitrario.

Sin embargo, si desea evitar el caso de abuso en el que un usuario inocente descarga un complemento que parece legítimo pero no lo es, puede realizar una comprobación de firmas con criptografía asimétrica para asegurarse de que esto no suceda.

Cuando se habla de multiplataforma, eche un vistazo a la Arquitectura criptográfica Qt (primer hit de Google en "qt crypto"). Me parece que esto es lo que estás buscando, aunque yo mismo no tengo experiencia con este marco.

    
respondido por el Henri 01.12.2011 - 23:50
fuente
2

Aprecio la forma en que está tratando de proteger a sus usuarios; prestigio. Sin embargo, también quiero inyectar una pequeña nota de precaución para que sepa en qué se está metiendo. La parte más difícil no es la criptografía (por ejemplo, firmas de clave pública). La parte más difícil es el proceso para determinar qué complementos se consideran legítimos.

¿Vas a actuar como portero, determinando qué complementos son legítimos? ¿Vas a construir una galería curada de complementos legítimos? Si es así, ¿cómo vas a decir cuáles son legítimas y cuáles no? ¿Vas a hacer una revisión cuidadosa del código de su código fuente? Si es así, ¿ha pensado en cómo financiará y apoyará eso, y qué tipo de retrasos impondrá a los desarrolladores de complementos? O, si estuviera pensando que solo podría ver la apariencia del complemento y lo sabría, entonces probablemente esté siendo demasiado optimista; es fácil para los atacantes crear un complemento que parezca legítimo pero que realmente contenga una puerta trasera.

Esto es algo desafiante. Esta no es una situación en la que solo puede escribir unas pocas líneas de código y llamarlo un día. Asegúrese de estar al tanto de lo que está malgastando y piense detenidamente los problemas del proceso empresarial.

    
respondido por el D.W. 02.12.2011 - 05:24
fuente

Lea otras preguntas en las etiquetas