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
Tools/GitHubGitHub/d4vinci/cwff
AufklärungInformationsbeschaffungWebsicherheitFuzzingPenetrationstests
GitHubd4vinci/cwff

CWFF

Erstellen Sie Ihre eigene Wortliste für Fuzzing

Repository anzeigen
20451vor 1 JahrVon 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

CWFF - Benutzerdefinierte Wortlisten für Fuzzing

CWFF ist ein Tool, das Ihnen eine spezielle, hochwertige Fuzzing/Content-Discovery-Wortliste mit höchstmöglicher Geschwindigkeit unter Verwendung von Parallelverarbeitung erstellt und stark von @tomnomnom's Who, What, Where, When, Wordlist #NahamCon2020 inspiriert ist.

Verwendung

root@kitploit:~
CWFF [-h] [--threads] [--github] [--subdomains] [--recursive] [--js-libraries] [--connected-websites] [--juicy-files] [--use-filter-model] [-o] domain

positional arguments:
  domain                Target website(ofc)

optional arguments:
  -h, --help            Show this help message and exit
  --threads             The number of maximum concurrent threads to use (Default:1000)
  --github              Collect endpoints from a given github repo (ex:https://github.com/google/flax)
  --subdomains          Extract endpoints from subdomains also while search in the wayback machine!
  --recursive           Work on extracted endpoints recursively (Adds more endpoints but less accurate sometimes)!
  --js-libraries        Extract endpoints from JS libraries also, not just the JS written by them!
  --connected-websites  Include endpoints extracted from connected websites
  --juicy-files         Include endpoints extracted from juicy files like sitemap.xml and robots.txt
  --use-filter-model    Filter result endpoints with filter_model file
  -o                    The output directory for the endpoints and parameters. (Default: website name)

Beschreibung (Wichtig)

Es sammelt im Grunde Endpunkte und Parameter des Ziels und seiner Subdomains aus vielen Quellen, die wir jetzt besprechen werden:

  1. Archive Wayback Machine: Sie durchläuft alle Aufzeichnungen der Zielwebsite und ihrer Subdomains und ruft URLs ab, die den Statuscode 200 zurückgeben.

Viele Tools durchsuchen nur die oberste Seite von Wayback, um Zeit zu sparen, aber hier durchsuchen wir alle Aufzeichnungen in kurzer Zeit, was jedoch auch viel Zeit in Anspruch nimmt, wenn Sie das --subdomains-Flag verwenden.

  1. JavaScript-Dateien, die während der Wayback-Phase gesammelt werden, sowie diejenigen, die durch Parsen der Zielseite nach <script>-Tags gesammelt werden.

CWFF versucht, die JS-Bibliotheken von den tatsächlich von Website-Entwicklern geschriebenen JS-Dateien zu trennen, indem es die JS-Dateinamen analysiert. Standardmäßig extrahiert CWFF Endpunkte nur aus den von Entwicklern geschriebenen JS-Dateien; um JS-Bibliotheken zu verwenden (meistens nicht hilfreich), aktivieren Sie das --js-libraries-Flag.

  1. Common Crawl CDX-Index und Alien Vault OTX (Open Threat Exchange)

  2. Wenn Sie CWFF das --juicy-files-Flag geben, extrahiert es auch Endpunkte aus Dateien wie Sitemap.xml und robots.txt (könnte in Zukunft um weitere erweitert werden)

  3. Wenn Sie CWFF ein GitHub-Repository mit dem --github-Flag übergeben, extrahiert es Pfade aus diesem Repository mithilfe der GitHub-API (kein API-Schlüssel erforderlich).

Nur zur Klarstellung: CWFF verwendet nur die Datei- und Verzeichnispfade, es extrahiert also keine Endpunkte aus dem Inneren der Dateien selbst!

  1. Mit dem --connected-websites-Flag verwendet CWFF die BuiltWith-Website-API (benötigt einen Schlüssel, ist aber kostenlos), um die mit dem Ziel verbundenen Websites aus dem Beziehungsprofil zu extrahieren und dann Endpunkte aus deren Quellen zu extrahieren.

Hinweis: Sie können Ihren API-Schlüssel auf dieser Seite erhalten und die Variable in der Datei API_keys.py setzen.

Nachdem Endpunkte aus all diesen Quellen gesammelt wurden, extrahiert CWFF, falls Sie das --recursive-Flag verwendet haben, rekursiv Teile aus den gesammelten Endpunkten.

  • Beispiel: Ein Endpunkt wie parseq/javadoc/1.1.0/com wird zu all diesen Endpunkten:
    root@kitploit:~
    parseq/javadoc/1.1.0/com
    parseq/javadoc/1.1.0/
    parseq/javadoc/
    parseq/
    javadoc/
    1.1.0/
    com
    

Hinweis: Alle gesammelten Endpunkte/Parameter werden bereinigt und sortiert, ohne Duplikate, um ein eindeutiges Ergebnis zu erhalten.

Filtern der Ergebnisse

Natürlich gibt es nach all diesen Quellen und dieser Arbeit viele unerwünschte/nutzlose Endpunkte unter den wichtigen, und hier kommt das Filtern ins Spiel, um Zeit und Ressourcen zu sparen.

In CWFF können Sie unerwünschte Endpunkte mit drei Methoden erkennen und entfernen:

  • Entfernen von Endpunkten, die mit einer beliebigen Zeichenfolge aus einer bestimmten Liste enden (z. B. Erweiterungen).
  • Entfernen von Endpunkten, die eine beliebige Zeichenfolge aus einer bestimmten Liste von Zeichenfolgen enthalten.
  • Und schließlich die große: Entfernen von Endpunkten, die mit einem beliebigen regulären Ausdruck aus einer bestimmten Liste übereinstimmen.

Alle diese Filteroptionen können durch Setzen der Variablen in der Datei filter_model.py und anschließendem Verwenden des --use-filter-model-Flags beim Start von CWFF angegeben werden. Wenn Sie keine Vorstellung davon haben, wie diese Variablen gesetzt werden, lesen Sie die Kommentare, die ich in der Datei hinterlassen habe; es ist die, die ich meistens verwende, und im Screenshot hat sie die Anzahl der gesammelten Endpunkte von 26,177 auf 3,629 reduziert. Falls Sie vergessen haben, beim Ausführen von CWFF das Filtern zu verwenden, keine Sorge, ich habe Sie abgedeckt 😄

Sie können das Skript filter.py verwenden, um vorhandene Endpunkte auf folgende Weise zu filtern, und es lädt die Datei filter_model.py automatisch, ohne CWFF erneut ausführen zu müssen:

root@kitploit:~
python filter.py wordlist.txt output.txt

Voraussetzungen

  • Python 3.6+
  • Es sollte auf jedem Betriebssystem funktionieren, aber ich habe es nur unter Linux Manjaro getestet.
  • Die folgenden Anweisungen

Installation

root@kitploit:~
python3 -m pip install -r requirements.txt
python3 cwff.py --help

Kontakt

  • Twitter
  • Telegram

Offene Aufgaben

  • Endpunkte rekursiv zusammenführen
  • Einzigartige Wörter der Website durch Vergleich mit RFC extrahieren.

Spende

Wenn meine Arbeit für Sie nützlich war, können Sie sich gerne bedanken, indem Sie mir einen Kaffee kaufen.

Coffee

Haftungsausschluss

CWFF wurde erstellt, um bei Penetrationstests zu helfen, und ist nicht verantwortlich für Missbrauch oder illegale Zwecke.

Das Kopieren von Code aus diesem Tool oder die Verwendung in einem anderen Tool ist akzeptiert, solange Sie die Quelle angeben :smile

Tool herunterladen