Memcache Commands

Reading time: 5 minutes

tip

Apprenez et pratiquez le hacking AWS :HackTricks Training AWS Red Team Expert (ARTE)
Apprenez et pratiquez le hacking GCP : HackTricks Training GCP Red Team Expert (GRTE)

Soutenir HackTricks

Commands Cheat-Sheet

From https://lzone.de/cheat-sheet/memcached

Les commandes supportées (les officielles et quelques non officielles) sont documentées dans le document doc/protocol.txt.

Malheureusement, la description de la syntaxe n'est pas vraiment claire et une simple commande d'aide listant les commandes existantes serait beaucoup mieux. Voici un aperçu des commandes que vous pouvez trouver dans la source (à partir du 19.08.2016) :

| Command | Description | Example | | -------------------- | --------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------- | | get | Lit une valeur | get mykey | | set | Définit une clé sans condition |

set mykey

Assurez-vous d'utiliser \r\n comme sauts de ligne lors de l'utilisation des outils CLI Unix. Par exemple

printf "set mykey 0 60 4\r\ndata\r\n" | nc localhost 11211

| | add | Ajoute une nouvelle clĂ© | add newkey 0 60 5 | | replace | Écrase une clĂ© existante | replace key 0 60 5 | | append | Ajoute des donnĂ©es Ă  une clĂ© existante | append key 0 60 15 | | prepend | PrĂ©pende des donnĂ©es Ă  une clĂ© existante | prepend key 0 60 15 | | incr | IncrĂ©mente la valeur numĂ©rique de la clĂ© d'un nombre donnĂ© | incr mykey 2 | | decr | DĂ©crĂ©mente la valeur numĂ©rique de la clĂ© d'un nombre donnĂ© | decr mykey 5 | | delete | Supprime une clĂ© existante | delete mykey | | flush_all | Invalide tous les Ă©lĂ©ments immĂ©diatement | flush_all | | flush_all | Invalide tous les Ă©lĂ©ments dans n secondes | flush_all 900 | | stats | Imprime des statistiques gĂ©nĂ©rales | stats | | | Imprime des statistiques de mĂ©moire | stats slabs | | | Imprime des statistiques d'allocation de niveau supĂ©rieur | stats malloc | | | Imprime des informations sur les Ă©lĂ©ments | stats items | | | | stats detail | | | | stats sizes | | | RĂ©initialise les compteurs de statistiques | stats reset | | lru_crawler metadump | Dump (la plupart) des mĂ©tadonnĂ©es pour (tous) les Ă©lĂ©ments dans le cache | lru_crawler metadump all | | version | Imprime la version du serveur. | version | | verbosity | Augmente le niveau de journalisation | verbosity | | quit | Termine la session | quit |

Traffic Statistics

Vous pouvez interroger les statistiques de trafic actuelles en utilisant la commande

stats

Vous obtiendrez une liste qui indique le nombre de connexions, les octets entrants/sortants et bien plus encore.

Exemple de sortie :

STAT pid 14868
STAT uptime 175931
STAT time 1220540125
STAT version 1.2.2
STAT pointer_size 32
STAT rusage_user 620.299700
STAT rusage_system 1545.703017
STAT curr_items 228
STAT total_items 779
STAT bytes 15525
STAT curr_connections 92
STAT total_connections 1740
STAT connection_structures 165
STAT cmd_get 7411
STAT cmd_set 28445156
STAT get_hits 5183
STAT get_misses 2228
STAT evictions 0
STAT bytes_read 2112768087
STAT bytes_written 1000038245
STAT limit_maxbytes 52428800
STAT threads 1
END

Statistiques de mémoire

Vous pouvez interroger les statistiques de mémoire actuelles en utilisant

stats slabs

I'm ready to assist you with the translation. Please provide the text you would like me to translate.

STAT 1:chunk_size 80
STAT 1:chunks_per_page 13107
STAT 1:total_pages 1
STAT 1:total_chunks 13107
STAT 1:used_chunks 13106
STAT 1:free_chunks 1
STAT 1:free_chunks_end 12886
STAT 2:chunk_size 100
STAT 2:chunks_per_page 10485
STAT 2:total_pages 1
STAT 2:total_chunks 10485
STAT 2:used_chunks 10484
STAT 2:free_chunks 1
STAT 2:free_chunks_end 10477
[...]
STAT active_slabs 3
STAT total_malloced 3145436
END

Si vous n'ĂȘtes pas sĂ»r d'avoir suffisamment de mĂ©moire pour votre instance memcached, surveillez toujours les compteurs "evictions" fournis par la commande "stats". Si vous avez suffisamment de mĂ©moire pour l'instance, le compteur "evictions" devrait ĂȘtre 0 ou du moins ne pas augmenter.

Quelles clés sont utilisées ?

Il n'y a pas de fonction intégrée pour déterminer directement l'ensemble actuel des clés. Cependant, vous pouvez utiliser le

stats items

commande pour déterminer combien de clés existent.

stats items
STAT items:1:number 220
STAT items:1:age 83095
STAT items:2:number 7
STAT items:2:age 1405
[...]
END

Cela aide au moins à voir si des clés sont utilisées. Pour extraire les noms de clés d'un script PHP qui effectue déjà l'accÚs à memcache, vous pouvez utiliser le code PHP de 100days.de.

tip

Apprenez et pratiquez le hacking AWS :HackTricks Training AWS Red Team Expert (ARTE)
Apprenez et pratiquez le hacking GCP : HackTricks Training GCP Red Team Expert (GRTE)

Soutenir HackTricks