# Memcached

{% hint style="info" %}
**IMPORTANTE:** Em todos os exemplos abaixo, estamos levando em conta que o Memcached está utilizando a porta 11211, que é a padrão.
{% endhint %}

### Conectando ao Memcached

#### Telnet / Netcat

Conectando ao MemCached

```bash
telnet <ip> 11211
```

Verificando a versão

```bash
version
```

Verificando estatísticas do servidor

```bash
stats
stats slabs
stats items
```

Para realizar o dump de todas as chaves, verifique o número do "item" com o comando acima (geralmente é 1) antes de executar o comando abaixo.

```bash
stats cachedump <item_number> 0
```

Agora que já temos os nomes dos items, podemos retornar os seus respectivos valores.

```
get <item_name>
```

#### python

```python
import pylibmc
mc=pylibmc.Client(["<ip>"],username="<username>",password="<pass>",binary=True)
mc["username"]
mc["password"]
```

### Enumando Informações

#### nmap

```
nmap --script memcached-info -p11211 <ip>
```

#### MemcStat

```
memcstat --servers=<ip>
memcstat --servers=<ip> --username=<user> --password=<password>
```

#### MemcDump

```
memcdump --servers=<ip>
```

#### MemcCat

```
memccat --servers=<ip> --username=<username> --password=<password> <key>
```

#### memcached-tool

```
memcached-tool <ip>:11211 dump
```

#### Metasploit

```
msfconsole -q
use auxiliary/gather/memcached_extractor
set RHOSTS <ip>
exploit
```
