
CoWitness ist ein leistungsstarkes Testwerkzeug für Webanwendungen, das die Genauigkeit und Effizienz Ihrer Testbemühungen verbessert. Es ermöglicht Ihnen, einen HTTP-Server und einen DNS-Server zu simulieren und liefert während Ihres Testprozesses vollständige Antworten und wertvolle Einblicke.

CoWitness ist ein Tool, das als HTTP-, HTTPS- und DNS-Server fungiert. Es ermöglicht Ihnen, Webseiten bereitzustellen, HTTP-Anfragen zu protokollieren und DNS-Antworten anzupassen. Diese README bietet einen Überblick über die Funktionen und Anweisungen zum Kompilieren und Verwenden des CoWitness-Tools.
HTTP-Server: CoWitness enthält einen HTTP-Server, der auf Port 80 lauscht. Er kann statische Dateien aus dem aktuellen Arbeitsverzeichnis bereitstellen. Jede HTTP-Anfrage wird protokolliert, einschließlich der IP-Adresse des Clients, der angeforderten Ressource und des User-Agents.
HTTPS-Server: Zusätzlich zum HTTP-Server bietet CoWitness auch einen HTTPS-Server, der auf Port 443 lauscht. Ähnlich wie der HTTP-Server stellt er statische Dateien bereit und protokolliert jede Anfrage.
DNS-Server: CoWitness fungiert als DNS-Server und lauscht auf Port 53. Es ermöglicht Ihnen, DNS-Antworten anzupassen, einschließlich NS- und A-Einträgen. DNS-Anfragen werden protokolliert, einschließlich der IP-Adresse des Clients und der angeforderten Domäne.
Protokollierung: CoWitness erstellt Logdateien für HTTP- und DNS-Anfragen. Die Logs werden an vorhandene Dateien angehängt, sodass Sie die Serveraktivität verfolgen und analysieren können.
Quiet-Modus: CoWitness kann im Quiet-Modus ausgeführt werden, indem das Befehlszeilenargument -q übergeben wird. In diesem Modus wird das ASCII-Art-Banner nicht angezeigt.
Bevor Sie CoWitness verwenden, stellen Sie sicher, dass die folgenden Voraussetzungen erfüllt sind:
Befolgen Sie diese Schritte, um CoWitness zu installieren und zu kompilieren:
git clone https://github.com/your-username/CoWitness.git
cd CoWitness
make -f Makefile build
Dieser Befehl kompiliert den CoWitness-Quellcode und erstellt eine ausführbare Datei für amd64 und arm64.
Um CoWitness auf einem Remote-Server zu verwenden, befolgen Sie diese Schritte:
Verbinden Sie sich per SSH mit dem Remote-Server:
ssh username@your-server-ip
Eine einfache Möglichkeit, Cowitness zu installieren, besteht darin, das automatisierte Paket-Build von hier zu beziehen, das Sie dann mit curl oder wget auf Ihr System holen oder die Datei von Ihrem System per scp übertragen können.
cowitness
Sie können CoWitness an Ihre spezifischen Anforderungen anpassen. Hier sind einige mögliche Änderungen:
Ändern Sie die Standardports: Sehen Sie sich die Verwendungshilfe für die CLI-Flags an, um die Standardports zu ändern.
Ändern Sie die Logdateipfade: Sie können die Pfade für die HTTP- und DNS-Logdateien (http.log und dns.log) ändern, indem Sie die os.OpenFile-Aufrufe im Quellcode aktualisieren.
Wir freuen uns über Beiträge und Feedback aus der Community. Wenn Sie auf Probleme stoßen oder Verbesserungsvorschläge haben, eröffnen Sie bitte ein Issue oder reichen Sie einen Pull-Request in unserem GitHub-Repository ein!
CoWitness wird unter der MIT-Lizenz veröffentlicht.