¿Cómo asegurar la privacidad en un servidor alojado de forma remota?

1

(Copiado de la Ingeniería de Software como se sugiere)

Si he escrito una herramienta de privacidad como una aplicación web .NET que se alojará en un sitio de alojamiento comercial, que no sea un país amigable con la privacidad, ¿cómo puedo asegurar a los usuarios que la aplicación no ha sido comprometida por un tercero en el host?

Obviamente, se utilizará SSL, los datos retenidos se cifrarán enérgicamente y los ensamblajes estarán tan confusos como sea posible, pero estos solo pueden llegar hasta ahora.

No me preocupan los problemas legales o de piratería, estoy hablando específicamente de la intervención física en la ubicación del servidor relacionada con la modificación del sitio para capturar información del usuario.

Por ejemplo, ¿hay alguna manera de asegurarme de que no se hayan ajustado mis ensamblajes para interceptar las credenciales de texto sin formato pasadas a una API?

Actualizar

Tal vez podría dar una opción para que el usuario proporcione sus credenciales ya cifradas con mi clave pública. Esto abre la puerta a otras opciones, como una cosa de tipo handshaking bidireccional.

¿Hay opciones más elegantes?

    
pregunta CompanyDroneFromSector7G 13.04.2017 - 19:53
fuente

1 respuesta

3

Si no puede garantizar que es el único que tiene acceso al servidor, no puede garantizar la privacidad de sus usuarios.

No es necesario envolver un conjunto si alguien que tiene acceso al servidor quiere robar credenciales de texto sin formato. Ya tienen acceso al servidor y, por lo tanto, acceso a la clave privada del certificado. Podrían crear un proxy inverso "legítimo" (al menos para el usuario final) donde terminarán SSL e inspeccionarán el tráfico de texto sin formato. Usar el cifrado asimétrico tampoco ayudará. El acceso al servidor también otorgará acceso a la clave privada.

Una cosa a considerar si tiene una plataforma de alojamiento web en la que no puede (o no quiere) confiar es usar el cifrado del lado del cliente. Pero no puedes hacerlo en navegador (JavaScript). Consulte esto para Explicación detallada de los problemas relacionados con el cifrado del navegador. En pocas palabras, no puede confiar en el código JavaScript que se sirve desde un servidor web no confiable.

Una posible solución es usar las extensiones del navegador. Puede firmar la extensión con su propio certificado de firma de código y, por lo tanto, los usuarios pueden verificar que el código proviene de usted y no está manipulado.

    
respondido por el Marko Vodopija 14.04.2017 - 10:12
fuente

Lea otras preguntas en las etiquetas