È sicuro usare Memcached in un ambiente di hosting condiviso?

5

L'hosting condiviso che sto utilizzando aveva Memcached attivato, ho cercato alcuni forum che utilizzavano Memcached in un ambiente di hosting condiviso, può causare problemi di sicurezza come visualizzare la cache dell'altro utente, modificare la cache, ecc. Ma la data è lontana nel 2013, quindi sono un po 'ansioso, non è ancora sicuro / sicuro da usare Memcached nell'ambiente di hosting condiviso?

E inoltre, non ho un accesso in php.ini così l'autenticazione SASL non funzionerà su di me. C'è un modo per usare Memcached in modo sicuro / sicuro? In caso contrario, ci sono altre opzioni per me per utilizzare la cache dei risultati dei dati?

    
posta Da Heel 13.10.2016 - 09:05
fonte

2 risposte

2

Bene, memcached non ha alcuna configurazione dei permessi (solo i permessi del socket di ascolto). È sufficiente avviare il daemon e tutti gli oggetti di memoria che gli vengono inviati verranno memorizzati in base alla chiave. Non vi è alcuna distinzione tra l'utente o il computer che invia o recupera i dati, è anche possibile ottenere collisioni con le chiavi.

Memcached è stato progettato per essere semplice, costringendo il livello dell'applicazione a pensare a tutto il resto. E originariamente progettato per essere eseguito sulla stessa macchina dell'applicazione. Quel design non è cambiato dal 2013.

Tutto ciò detto, se un provider di hosting ti dà un socket su una macchina diversa a cui ti colleghi direttamente a memcached, allora dovresti smettere immediatamente di usare quel provider di hosting. Questo è semplicemente poco saggio. I provider di hosting che utilizzano memcached eseguiranno un daemon memcached diverso per ciascun utente (l'intero daemon è solo un paio di kilobyte), utilizzeranno un proxy inverso (con autenticazione) o costruiranno una cache compatibile memcached che non esegue realmente memcached.

Se guardi cosa fa AWS :

A Memcached layer is an AWS OpsWorks layer that provides a blueprint for instances that function as Memcached servers

vale a dire. la loro cache elastica può essere utilizzata come cache memcached, ma non è un daemon memcached in ascolto su un socket. E (dallo stesso articolo) puoi vedere che c'è un'autenticazione sulla tua cache:

Custom security groups

This setting appears if you chose to not automatically associate a built-in AWS OpsWorks security group with your layers. You must specify which security group to associate with the layer. For more information, see Create a New Stack.

Pertanto, usare memcached come qualsiasi soluzione di rete, in particolare in un ambiente di hosting, è semplicemente poco saggio. Ma la maggior parte degli ambienti di hosting che pubblicizzano memcached, non usano realmente memcached, ma inseriscono un livello in da per aggiungere permessi.

    
risposta data 13.10.2016 - 11:22
fonte
2

Se non lo hai configurato, non puoi sapere se è sicuro. Non importa se stiamo parlando di memcached, un database Oracle, opensshd ....

Come dice Grochmal, non ci sono meccanismi di controllo dell'accesso intrinseco in memcache. Pertanto, il fornitore di servizi ha pochissime possibilità di implementare il tipo di partizionamento che desideri.

La crittografia di tutti i dati archiviati in memcache risolverebbe il problema di divulgazione (ma crea un problema di gestione delle chiavi). Non impedisce danni ai dati.

are there any other options for me to use cache the data results

Non sappiamo cosa sia l'hosting o quali siano i tuoi requisiti di sicurezza. Se "i dati" sono un set di risultati mysql, allora usi la cache di mysql. Se i dati JSON vengono recuperati tramite HTTP, potresti essere in grado di utilizzare un proxy forward. Se la sua memorizzazione nella cache l'output delle proprie pagine, quindi un proxy inverso .....

    
risposta data 13.10.2016 - 14:08
fonte

Leggi altre domande sui tag