¿El personal que administra los centros de datos de AWS puede acceder a mis instancias de ec2 y monitorear los datos en uso en mi aplicación?

6

Estoy creando una aplicación Express (NodeJS) y planeo alojar con AWS ec2. Quiero proteger los datos de mis usuarios tanto como sea posible y estoy considerando escenarios aún más atípicos. Y así surgió la pregunta:

Las instancias ec2 se gestionan físicamente en algunos centros de datos de Amazon y obviamente hay personal que administra esas instalaciones que tienen acceso físico a esas máquinas. ¿Pueden ellos, en teoría, acceder a las aplicaciones que residen en esos servidores y ver / monitorear / robar datos confidenciales que se usan actualmente en la aplicación?

¿Debería esto ser una preocupación? Si es así, ¿qué podemos hacer como desarrolladores para mitigar esto?

    
pregunta ryd3r 31.12.2015 - 04:09
fuente

1 respuesta

8

Sí, teóricamente pueden acceder o monitorear los datos.

No, esto no debería ser una preocupación. Sus incentivos (organizativos e individuales) para proporcionar un servicio estable y seguro son ciertamente mayores que sus incentivos para robar los datos de su aplicación, de todos los millones de máquinas virtuales y aplicaciones para las que administran la infraestructura.

Como desarrollador, es muy poco lo que puede hacer para mitigar esto, aparte de no alojar con Amazon. O cualquier otro proveedor de servicios gestionados o en la nube. O instalación de colocación, para el caso.

En última instancia, cualquier infraestructura que esté fuera de su control está, bien, fuera de su control. Esto no debería mantenerte despierto en la noche sin embargo. Es como pasar tu tiempo preocupándote por ser secuestrado por extraterrestres. Si bien el riesgo es teóricamente posible, obtendrías más valor por tu tiempo al concentrarte en casi cualquiera de los riesgos más mundanos y realistas en los que tu aplicación estará realmente en peligro de caer en la presa, como cualquiera de los OWASP Top 10 .

Pasos que puede (y debe) seguir :

Entonces, ¿hay pasos que usted como desarrollador de aplicaciones pueda tomar para proteger sus datos a pesar de estas realidades? Claro, hay varias cosas que puedes hacer.

Lo más básico (y posiblemente obvio) es no recopilar ni conservar ningún dato que no necesite absolutamente, y depurar los datos que guarda tan pronto como sea posible. Menos datos significa menos que perder en un ataque.

Segundo, proteja los datos que usa su aplicación. Comience por protegerlo en tránsito. Utilice HTTPS / TLS para las comunicaciones entre su aplicación y los usuarios. Esta es una forma efectiva y económica de protegerlo de cualquier persona que tenga acceso a la red del centro de datos para detectar el tráfico en el cable. Protégelo en reposo también. Si tiene contraseñas de usuario, protéjalas con un algoritmo hash lento como bcrypt. De esta manera, incluso si los datos son accesos, no se puede abusar fácilmente. Para otros datos confidenciales, puede consultar el cifrado, y los principales proveedores de la nube en estos días (incluidos Amazon AWS y Microsoft Azure) ofrecen HSM basados en la nube para proteger las claves de cifrado. Si bien aún no es infalible, al menos garantiza que alguien que obtenga acceso a sus máquinas virtuales o imágenes de disco no capturará sus claves de cifrado.

Para resumir, siempre hay pasos que puede seguir para que su aplicación y sus datos sean más seguros, incluso cuando no controla la infraestructura. Todavía se reduce a comprender su aplicación y las necesidades de su negocio, las realidades de cómo y dónde se ejecuta, y luego las amenazas se modelan correctamente para su propósito y entorno y se mitigan adecuadamente. A partir de ahí, seguir las prácticas estándar de diseño seguro, desarrollo y operativas ayudará a garantizar que su aplicación y sus datos sean lo más seguros posible.

    
respondido por el Xander 31.12.2015 - 04:20
fuente

Lea otras preguntas en las etiquetas