¿Es seguro usar Memcached en un entorno de alojamiento compartido?

4

El alojamiento compartido que estoy usando tenía Memcached habilitado, busqué en algunos foros que usan Memcached en un entorno de alojamiento compartido, puede causar problemas de seguridad como ver el caché del otro usuario, editar el caché, etc. Pero la fecha es muy antigua en 2013, por lo que estoy un poco ansioso por eso, ¿sigue siendo seguro / seguro de usar Memcached en un entorno de alojamiento compartido?

Y además, no tengo acceso en php.ini , por lo que la autenticación SASL no funcionará en mí. ¿Hay alguna forma de utilizar Memcached de forma segura / segura? Si no es así, ¿hay alguna otra opción para que use los resultados de la memoria caché?

    
pregunta Da Heel 13.10.2016 - 09:05
fuente

2 respuestas

2

Bueno, el propio memcached no tiene ninguna configuración de permisos (solo los permisos del socket de escucha). Simplemente inicie el daemon y todos los objetos de memoria que se le envíen se almacenarán según la clave. No hay distinción entre el usuario o la máquina que envía o recupera los datos, incluso puede obtener colisiones clave.

Memcached fue diseñado para ser simple y pequeño, obligando a la capa de aplicación a pensar en todo lo demás. Y originalmente diseñado para ejecutarse en la misma máquina que la aplicación. Ese diseño no cambió desde 2013.

Dicho todo esto, si un proveedor de hosting te da un socket en una máquina diferente a la que te conectas directamente a memcached, debes dejar de usar ese proveedor de hosting de inmediato. Eso es simplemente imprudente. Los proveedores de alojamiento que utilizan memcached ejecutarán un demonio de memcached diferente para cada usuario (el demonio completo es solo un par de kilobytes), usarán un proxy inverso (con autenticación) o crearán una memoria caché compatible con memcached que realmente no se ejecute memcached. / p>

Si observa lo que hace AWS :

  

Una capa Memcached es una capa de AWS OpsWorks que proporciona un plano para las instancias que funcionan como servidores Memcached

es decir, su caché elástica se puede usar como caché de memcached, pero no es un daemon de memcached escuchando en un socket. Y (del mismo artículo) puede ver que hay autenticación en su caché:

  

Grupos de seguridad personalizados

     

Esta configuración aparece si elige no asociar automáticamente una   grupo de seguridad incorporado de AWS OpsWorks con sus capas. Debes   Especifique qué grupo de seguridad asociar con la capa. Para más   información, vea Crear una nueva pila.

Por lo tanto, el uso de memcached como cualquier solución de red, especialmente en un entorno de alojamiento, es simplemente imprudente. Sin embargo, la mayoría de los entornos de alojamiento no están usando memcached, sino que colocan una capa desde para agregar permisos.

    
respondido por el grochmal 13.10.2016 - 11:22
fuente
2

Si no lo configuraste, entonces no puedes saber si es seguro. No importa si estamos hablando de memcached, una base de datos Oracle, opensshd ....

Como dice Grochmal, no hay un mecanismo de control de acceso intrínseco en memcache. Por lo tanto, hay muy poco margen para que el proveedor de servicios implemente el tipo de partición que pueda desear.

El cifrado de todos los datos que almacena en memcache resolvería el problema de divulgación (pero crea un problema de administración de claves). No evita daños a los datos.

  

hay otras opciones para que yo use la caché de los resultados de los datos

No sabemos qué es el alojamiento ni cuáles son sus requisitos de seguridad. Si "los datos" es un conjunto de resultados de mysql, entonces utiliza el almacenamiento en caché de mysql. Si sus datos JSON se obtuvieron a través de HTTP, entonces es posible que pueda usar un proxy de reenvío. Si se almacena en caché la salida de sus propias páginas, entonces un proxy inverso .....

    
respondido por el symcbean 13.10.2016 - 14:08
fuente

Lea otras preguntas en las etiquetas