Sécuriser votre serveur Memcached

Description de la vulnérabilité :

Par défaut, memcached est accessible dans le monde entier sur le port TCP 11211. Entre autres avantages de memcached, il est possible de s’y connecter à l’aide d’un protocole aussi simple que Telnet et de lancer une commande « stat », pour obtenir de l’information à propos du service lui-même, ou d’autres commandes pour récupérer les données mises en cache par le service. Or, selon le rôle de ce service dans votre infrastructure et selon les politiques de gestion de l’information et les normes de programmation au sein de votre organisation, il est possible que ce service mette en cache de l’information hautement confidentielle. Ce service accessible au grand public pourrait ainsi transmettre à votre insu de l’information confidentielle à une tierce partie. 

Par conséquent, ce service ne devrait jamais être accessible au grand public, et ce, malgré sa configuration par défaut. L’accès doit se limiter à votre infrastructure.

Versions touchées :

Toutes les versions de memcached.

Vérifier la vulnérabilité de votre serveur :

Vous pouvez tester l’adresse IP de votre serveur à l’aide de la commande (remplacez <ipaddress> par l’adresse IP de votre serveur) :

echo "stats items" | nc <ipaddress> 11211


OR:
$ nmap -p 11211 <ipaddress> --script memcached-info

This is the output if it's open:

Starting Nmap 6.40 ( http://nmap.org ) at 2015-04-01 10:09 EDT
Nmap scan report for xx.xx.xx.xx
Host is up (0.063s latency).
PORT      STATE SERVICE
11211/tcp open  unknown
| memcached-info:
|   Process ID           1726
|   Uptime               43215969 seconds
|   Server time          2015-04-01T14:09:03
|   Architecture         32 bit
|   Used CPU (user)      0.728889
|   Used CPU (system)    1.032842
|   Current connections  10
|   Total connections    1678
|   Maximum connections  1024
|   TCP Port             11211
|   UDP Port             11211
|_  Authentication       no
Nmap done: 1 IP address (1 host up) scanned in 0.36 seconds

Solution :

1) Si vous n’avez pas besoin de memcached dans votre organisation, vous devriez désactiver ce service et le désinstaller du serveur.

2) Si vous avez besoin de memcached seulement sur le serveur sur lequel le service est exécuté :

Modifiez le fichier de configuration /etc/sysconfig/memcached
Remplacez :

OPTIONS=""

par

OPTIONS="-l 127.0.0.1"

et procédez à un redémarrage de votre service memcached à l’aide de la commande suivante :

service memcached restart

Assurez-vous de mettre à jour les services qui utilisent ce service memcached, afin qu’il se connectent à l’aide de l’adresse IP « 127.0.0.1 » ou « localhost », car l’adresse IP du serveur ou le service pourraient ne plus être accessibles. 

3) Si vous avez besoin de memcached sur d’autres serveurs dans votre organisation :

Dans ce cas, la meilleure option consiste à bloquer l’accès à ce service au grand public, et à limiter l’accès à quelques adresses IP seulement, en utilisant un filtre de paquets (p. ex., iptables) ou un pare-feu matériel s’il y en a un de disponible.

Facultatif

Vous pouvez utiliser une configuration plus avancée pour accorder des accès à des hôtes autorisés par l’intermédiaire de l’authentification SASL :

http://www.shanison.com/2014/04/29/setup-memcached-with-sasl-authentication/

Vous avez d’autres questions ? Envoyer une demande

0 Commentaires

Cet article n'accepte pas de commentaires.
Réalisé par Zendesk