Caido-Befehle
Umfassende Caido-Web-Sicherheitstesting-Proxy-Befehle und Workflows für Penetrationstests und Bug-Bounty-Jagd.
Installation
Abschnitt betitelt „Installation“| Befehl | Beschreibung |
|---|---|
brew install caido | Caido auf macOS über Homebrew installieren |
curl -fsSL https://caido.io/install.sh | sh | Caido auf Linux installieren |
caido --version | Caido-Version anzeigen |
caido | Caido starten (öffnet Weboberfläche unter 127.0.0.1:8080) |
caido --port 9090 | Caido auf benutzerdefinierten Port starten |
caido --listen 0.0.0.0 | Caido auf allen Schnittstellen abhören |
Proxy-Konfiguration
Abschnitt betitelt „Proxy-Konfiguration“| Einstellung | Beschreibung |
|---|---|
Proxy Address: 127.0.0.1:8080 | Standard-Proxy-Listeneradresse |
Browser → Settings → Proxy → 127.0.0.1:8080 | Browser für Caido-Proxy konfigurieren |
export http_proxy=http://127.0.0.1:8080 | Proxy über Umgebungsvariable setzen |
export https_proxy=http://127.0.0.1:8080 | HTTPS-Proxy über Umgebungsvariable setzen |
curl -x http://127.0.0.1:8080 https://target.com | curl durch Caido weiterleiten |
CA-Zertifikat von http://127.0.0.1:8080/ca installieren | Caido’s CA für HTTPS-Interception vertrauen |
Intercept-Modus
Abschnitt betitelt „Intercept-Modus“| Aktion | Beschreibung |
|---|---|
>> Forwarding Button | Zu Warteschlangen-Modus für Interception wechseln |
|| Queuing Button | Derzeit Anfragen abfangen |
| Forward Button | Abgefangene Anfrage zum Server weiterleiten |
| Drop Button | Abgefangene Anfrage löschen |
| Anfrage in Intercept-Ansicht bearbeiten | Anfrage vor dem Weiterleiten ändern |
| Antwort-Interception umschalten | Auch Antworten vom Server abfangen |
HTTPQL-Abfragesprache
Abschnitt betitelt „HTTPQL-Abfragesprache“| Abfrage | Beschreibung |
|---|---|
host eq "target.com" | Nach exaktem Hostnamen filtern |
host cont "target" | Nach Hostnamen mit String filtern |
resp.status_code eq 200 | Nach Antwortstatus-Code filtern |
resp.status_code gte 400 | Nach Status-Code >= 400 filtern |
req.method eq "POST" | Nach HTTP-Methode filtern |
req.path cont "/api/" | Nach URL-Pfad mit String filtern |
resp.body cont "password" | Nach Antworten mit Text filtern |
req.header cont "Authorization" | Nach Header-Vorhandensein filtern |
resp.length gt 1000 | Nach Antwortgröße filtern |
host eq "target.com" AND req.method eq "POST" | Filter mit AND kombinieren |
req.path cont "/admin" OR req.path cont "/api" | Filter mit OR kombinieren |
Tastaturkürzel
Abschnitt betitelt „Tastaturkürzel“| Tastaturkürzel | Beschreibung |
|---|---|
Ctrl + R | Anfrage zum Replay senden |
Ctrl + Shift + R | Zum Automate senden |
Ctrl + I | Intercept-Modus umschalten |
Ctrl + F | Suche/Filter öffnen |
Ctrl + P | Befehlspalette öffnen |
Ctrl + K | Schnelle Navigation |
Tab | Zwischen Panels wechseln |
Escape | Aktuellen Dialog schließen |
Replay (Request Editor)
Abschnitt betitelt „Replay (Request Editor)“| Aktion | Beschreibung |
|---|---|
| Rechtsklick → Zum Replay senden | Beliebige Anfrage zum Replay-Tab senden |
Ctrl + R für ausgewählte Anfrage | Schnell zum Replay senden |
| Header im Replay ändern | Anfrage-Header bearbeiten |
| Body im Replay ändern | Anfrage-Body bearbeiten |
| Send-Button im Replay | Modifizierte Anfrage ausführen |
| Neuen Tab im Replay erstellen | Mehrere Replay-Sitzungen verwalten |
| Replay-Tab umbenennen | Testsitzungen organisieren |
Automate (Fuzzing)
Abschnitt betitelt „Automate (Fuzzing)“| Aktion | Beschreibung |
|---|---|
Ctrl + Shift + R | Anfrage zum Automate senden |
| Text auswählen → Platzhalter einfügen | Injektionspunkt mit § markieren |
| Payload-Liste hinzufügen | Wörterbuch für Fuzzing konfigurieren |
| Payload-Typ festlegen: Simple List | Liste mit Werten verwenden |
| Payload-Typ festlegen: Sequence | Nummerierte Sequenz verwenden |
| Payload-Typ festlegen: Recursive | Rekursive Payload-Generierung |
| Rate Limiting konfigurieren | Anfrage-Geschwindigkeit steuern |
| Automatisierung starten | Automatisiertes Testing starten |
| Ergebnisse nach Status-Code sortieren | Antworten analysieren |
| Ergebnisse nach Antworglänge filtern | Anomalien finden |
Scope-Konfiguration
Abschnitt betitelt „Scope-Konfiguration“| Aktion | Beschreibung |
|---|---|
| Settings → Scope → Host hinzufügen | Ziel zum Testumfang hinzufügen |
*.target.com | Wildcard-Umfang für alle Subdomains |
target.com:443 | Umfang mit spezifischem Port |
| Scope-Filterung aktivieren | Nur In-Scope-Traffic anzeigen |
| Out-of-Scope-Hosts ausschließen | Rauschen aus Proxy-Verlauf filtern |
Workflow-Automatisierung
Abschnitt betitelt „Workflow-Automatisierung“| Aktion | Beschreibung |
|---|---|
| Neuen Workflow erstellen | Benutzerdefinierte Automatisierungs-Pipeline erstellen |
| Passive Node hinzufügen | Bei passendem Traffic auslösen |
| Active Node hinzufügen | Anfragen/Antworten during flight ändern |
| Convert Node hinzufügen | Daten zwischen Formaten transformieren |
| Workflow-Knoten verketten | Multi-Step-Automatisierung erstellen |
| Workflow exportieren | Workflow-Konfiguration teilen |
| Workflow importieren | Gemeinsamen Workflow laden |
Assistant (KI-Integration)
Abschnitt betitelt „Assistant (KI-Integration)“| Aktion | Beschreibung |
|---|---|
| Assistant-Panel öffnen | KI-gestützte Analyse aufrufen |
| Nach Anfrage/Antwort fragen | KI-Einblicke zum Traffic erhalten |
| Angriffsvorschläge generieren | Von KI empfohlene Testvektoren |
| Sicherheitsmuster analysieren | KI-gestützte Schwachstellenerkennung |
| Antwortenverhalten erklären | Anwendungslogik verstehen |
Projektmanagement
Abschnitt betitelt „Projektmanagement“| Aktion | Beschreibung |
|---|---|
| File → New Project | Neues Testprojekt erstellen |
| File → Open Project | Vorhandenes Projekt öffnen |
| File → Save Project | Aktuellen Projektzustand speichern |
| Ergebnisse exportieren | Entdeckte Probleme exportieren |
| Anfragen aus Datei importieren | Gespeicherte Anfragen laden |
| Anfragen taggen | Mit benutzerdefinierten Tags organisieren |
| Notizen zu Anfragen hinzufügen | Ergebnisse dokumentieren |
Sitemap
Abschnitt betitelt „Sitemap“| Aktion | Beschreibung |
|---|---|
| View → Sitemap | Sitemap-Panel öffnen |
| Domänenbaum erweitern | Entdeckte Endpoints anzeigen |
| Nach Antworttyp filtern | Spezifische Inhaltstypen anzeigen |
| Sitemap exportieren | Entdeckte Struktur speichern |
| Versteckte Endpoints identifizieren | Automatisch entdeckte Pfade überprüfen |
Plugin-System
Abschnitt betitelt „Plugin-System“| Aktion | Beschreibung |
|---|---|
| Settings → Plugins | Installierte Plugins verwalten |
| Plugin-Store durchsuchen | Community-Plugins finden |
| Plugin installieren | Neue Funktionalität hinzufügen |
| Benutzerdefinierten Plugin erstellen | Mit Caido SDK bauen |
caido plugin init <name> | Neues Plugin-Projekt gerüsten |
caido plugin build | Plugin für Verteilung bauen |
Tipps und Best Practices
Abschnitt betitelt „Tipps und Best Practices“| Tipp | Beschreibung |
|---|---|
| Scope-Filterung verwenden | Rauschen reduzieren durch Fokussierung auf Ziele |
| Interessante Anfragen taggen | Ergebnisse zur späteren Überprüfung markieren |
| HTTPQL-Filter verwenden | Großen Traffic-Verlauf effizient durchsuchen |
| Workflows verketten | Wiederholte Testaufgaben automatisieren |
| Ergebnisse regelmäßig exportieren | Entdeckte Schwachstellen sichern |
| Tastaturkürzel verwenden | Testarbeitsablauf beschleunigen |
| CA-Zertifikat zuerst konfigurieren | HTTPS-Interception funktioniert |
| Replay für manuelles Testing verwenden | Anfragen effizient iterieren |