Memcache Commands

Lerne & übe AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Lerne & übe GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Unterstütze HackTricks

Befehle Cheat-Sheet

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

Die unterstützten Befehle (die offiziellen und einige inoffizielle) sind im doc/protocol.txt Dokument dokumentiert.

Leider ist die Syntaxbeschreibung nicht wirklich klar und ein einfacher Hilfe-Befehl, der die vorhandenen Befehle auflistet, wäre viel besser. Hier ist eine Übersicht der Befehle, die du im Quellcode finden kannst (Stand 19.08.2016):

BefehlBeschreibungBeispiel

get

Liest einen Wert

get mykey

set

Setzt einen Schlüssel bedingungslos

set mykey <flags> <ttl> <size> <p>Stelle sicher, dass du \r\n als Zeilenumbrüche verwendest, wenn du Unix-CLI-Tools verwendest. Zum Beispiel</p> printf "set mykey 0 60 4\r\ndata\r\n"

add

Fügt einen neuen Schlüssel hinzu

add newkey 0 60 5

replace

Überschreibt einen vorhandenen Schlüssel

replace key 0 60 5

append

Fügt Daten zu einem vorhandenen Schlüssel hinzu

append key 0 60 15

prepend

Fügt Daten vor einem vorhandenen Schlüssel hinzu

prepend key 0 60 15

incr

Erhöht den numerischen Schlüsselwert um eine gegebene Zahl

incr mykey 2

decr

Verringert den numerischen Schlüsselwert um eine gegebene Zahl

decr mykey 5

delete

Löscht einen vorhandenen Schlüssel

delete mykey

flush_all

Ungültig machen aller Elemente sofort

flush_all

flush_all

Ungültig machen aller Elemente in n Sekunden

flush_all 900

stats

Gibt allgemeine Statistiken aus

stats

Gibt Speichermetriken aus

stats slabs

Gibt Statistiken zur höheren Ebene der Zuweisung aus

stats malloc

Gibt Informationen zu den Elementen aus

stats items

stats detail

stats sizes

Setzt die Statistikzähler zurück

stats reset

lru_crawler metadump

Gibt (die meisten) Metadaten für (alle) Elemente im Cache aus

lru_crawler metadump all

version

Gibt die Serverversion aus.

version

verbosity

Erhöht das Protokollniveau

verbosity

quit

Beendet die Sitzung

quit

Verkehrsstatisiken

Du kannst die aktuellen Verkehrsstatisiken mit dem Befehl abfragen

stats

Sie erhalten eine Auflistung, die die Anzahl der Verbindungen, Bytes ein/aus und vieles mehr anzeigt.

Beispielausgabe:

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

Speicherstatistiken

Sie können die aktuellen Speicherstatistiken abfragen mit

stats slabs
# Memcache-Befehle

## SET

Setzt einen Wert in den Memcache.

### Syntax

set [noreply]


### Beispiel

set mykey 0 900 9


## GET

Holt einen Wert aus dem Memcache.

### Syntax

get [noreply]


### Beispiel

get mykey


## DELETE

Löscht einen Wert aus dem Memcache.

### Syntax

delete [noreply]


### Beispiel

delete mykey

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

Wenn Sie sich nicht sicher sind, ob Sie genügend Speicher für Ihre memcached-Instanz haben, achten Sie immer auf die „evictions“-Zähler, die durch den Befehl „stats“ angegeben werden. Wenn Sie genügend Speicher für die Instanz haben, sollte der „evictions“-Zähler 0 oder zumindest nicht steigend sein.

Welche Schlüssel werden verwendet?

Es gibt keine integrierte Funktion, um direkt die aktuelle Menge an Schlüsseln zu bestimmen. Sie können jedoch den

stats items

Befehl, um zu bestimmen, wie viele Schlüssel existieren.

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

Dies hilft zumindest zu sehen, ob Schlüssel verwendet werden. Um die Schlüsselnamen aus einem PHP-Skript, das bereits auf den Memcache zugreift, zu dumpen, können Sie den PHP-Code von 100days.de verwenden.

Lernen & üben Sie AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Lernen & üben Sie GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Unterstützen Sie HackTricks

Last updated