Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
gf — Ein Wrapper um grep, der dir hilft, nach Dingen zu suchen. | Kitploit
Tools/GitHubGitHub/tomnomnom/gf
Allgemeine DienstprogrammeAufklärungCode-AnalyseInformationsbeschaffungSecret-Erkennung
GitHubtomnomnom/gf

gf

Ein Wrapper um grep, der dir hilft, nach Dingen zu suchen.

Repository anzeigen
2.1k342vor 2 JahrenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

gf

Ein Wrapper um grep, um das Tippen gängiger Muster zu vermeiden.

Was? Warum?

Ich verwende grep sehr oft. Beim Auditieren von Codebasen, beim Betrachten der Ausgabe von meg oder einfach beim Umgang mit großen Datenmengen. Dabei verwende ich häufig ziemlich komplexe Muster wie dieses hier:

root@kitploit:~
▶ grep -HnrE '(\$_(POST|GET|COOKIE|REQUEST|SERVER|FILES)|php://(input|stdin))' *

Es ist wirklich leicht, beim Tippen solcher Dinge Fehler zu machen, und es kann schwer zu erkennen sein, ob du keine Ergebnisse erhalten hast, weil es keine zu finden gibt, oder weil du dich beim Schreiben des Musters vertan oder die falschen Flags gewählt hast.

Ich habe gf geschrieben, um den Pattern- und Flag-Kombinationen, die ich ständig verwende, Namen zu geben. Der obige Befehl wird also einfach zu:

root@kitploit:~
▶ gf php-sources

Pattern-Dateien

Die Pattern-Definitionen werden in ~/.gf als kleine JSON-Dateien gespeichert, die unter Versionskontrolle gehalten werden können:

root@kitploit:~
▶ cat ~/.gf/php-sources.json
{
    "flags": "-HnrE",
    "pattern": "(\\$_(POST|GET|COOKIE|REQUEST|SERVER|FILES)|php://(input|stdin))"
}

Um die Pattern-Länge und -Komplexität etwas zu reduzieren, kannst du auch eine Liste mehrerer Patterns angeben:

root@kitploit:~
▶ cat ~/.gf/php-sources-multiple.json
{
    "flags": "-HnrE",
    "patterns": [
        "\\$_(POST|GET|COOKIE|REQUEST|SERVER|FILES)",
        "php://(input|stdin)"
    ]
}

Im Verzeichnis examples gibt es weitere Beispiel-Pattern-Dateien.

Du kannst das Flag -save verwenden, um Pattern-Dateien von der Kommandozeile aus zu erstellen:

root@kitploit:~
▶ gf -save php-serialized -HnrE '(a:[0-9]+:{|O:[0-9]+:"|s:[0-9]+:")'

Auto-Vervollständigung

Ein Auto-Vervollständigungs-Skript ist enthalten, sodass du die Tabulatortaste drücken kannst, um dir deine Optionen anzeigen zu lassen:

root@kitploit:~
▶ gf <tab>
base64       debug-pages  fw           php-curl     php-errors   php-sinks    php-sources  sec          takeovers    urls

Bash

Damit die Auto-Vervollständigung funktioniert, musst du die Datei gf-completion.bash in deiner .bashrc oder Ähnlichem sourcen:

root@kitploit:~
source ~/path/to/gf-completion.bash

Zsh

Damit die Auto-Vervollständigung funktioniert, musst du die Autovervollständigung (nicht nötig, wenn du oh-my-zsh hast) mit autoload -U compaudit && compinit aktivieren oder sie in .zshrc eintragen.

Danach source die Datei gf-completion.zsh in deiner .zshrc oder Ähnlichem:

root@kitploit:~
source ~/path/to/gf-completion.zsh

Hinweis: Wenn du oh-my-zsh oder Ähnliches verwendest, könnte gf ein Alias für git fetch sein. Du kannst entweder das gf-Binary auf etwas anderes aliassen oder unalias gf verwenden, um den git fetch-Alias zu entfernen.

Verwendung eigener Engines

Es gibt einige großartige Code-Suchmaschinen, die einen besseren Ersatz für grep darstellen können. Ein gutes Beispiel ist the silver searcher. Er ist schneller (wie viel schneller) und präsentiert die Ergebnisse auf eine visuell verdaulichere Weise. Um eine andere Engine zu nutzen, füge engine: <other tool> zur entsprechenden Pattern-Datei hinzu:

root@kitploit:~
# Using the silver searcher instead of grep for the aws-keys pattern:
# 1. Adding "ag" engine
# 2. Removing the E flag which is irrelevant for ag
{
  "engine": "ag",
  "flags": "-Hanr",
  "pattern": "([^A-Z0-9]|^)(AKIA|A3T|AGPA|AIDA|AROA|AIPA|ANPA|ANVA|ASIA)[A-Z0-9]{12,}"
}
  • Hinweis: Verschiedene Engines verwenden unterschiedliche Flags, daher muss im obigen Beispiel das Flag E aus der Datei aws-keys.json entfernt werden, damit ag erfolgreich läuft.

Installation

Wenn du Go installiert und konfiguriert hast, kannst du gf mit folgendem Befehl installieren:

root@kitploit:~
▶ go get -u github.com/tomnomnom/gf

Wenn du go get verwendet hast, kannst du die Auto-Vervollständigung wie folgt in deiner .bashrc aktivieren:

root@kitploit:~
▶ echo 'source $GOPATH/src/github.com/tomnomnom/gf/gf-completion.bash' >> ~/.bashrc

Beachte, dass du dein Terminal neu starten oder source ~/.bashrc ausführen musst, damit die Änderungen wirksam werden.

Um schnell loszulegen, kannst du die Beispiel-Pattern-Dateien wie folgt nach ~/.gf kopieren:

root@kitploit:~
▶ cp -r $GOPATH/src/github.com/tomnomnom/gf/examples ~/.gf

Meine persönlichen Patterns, die ich als Beispiele beigefügt habe, sind für dich vielleicht nicht besonders nützlich, aber hoffentlich sind sie dennoch eine angemessene Referenz.

Mitwirken

Ich wäre tatsächlich am meisten an neuen Pattern-Dateien interessiert! Wenn du etwas hast, nach dem du regelmäßig grepst, kannst du gerne einen PR erstellen, um neue Pattern-Dateien zum examples-Verzeichnis hinzuzufügen.

Bug-Fixes sind wie immer ebenfalls willkommen :)

Tool herunterladen