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
cover — Lokaler Datenschutz-Proxy, der Geheimnisse und personenbezogene Daten (PII) ersetzt, bevor KI-Anfragen Ihren Rechner verlassen. | Kitploit
Tools/GitHubGitHub/davidcarliez/cover
DefensivwerkzeugeWeb-Proxys & AbfangenPrivatsphäreSecret-ErkennungAPI-SicherheitKI-Sicherheit
GitHubdavidcarliez/cover

cover

Lokaler Datenschutz-Proxy, der Geheimnisse und personenbezogene Daten (PII) ersetzt, bevor KI-Anfragen Ihren Rechner verlassen.

Repository anzeigen
223vor 13h 14mNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

Cover

Halten Sie sensible Werte aus LLM-Anfragen heraus, ohne das Gespräch zu unterbrechen.

CI Go License

Installation · Schnellstart · Richtlinien · Überwachung · Pi / OMP · Sicherheit

Cover ist ein lokaler Datenschutz-Proxy für Codex, Claude Code, Cursor, SDKs und andere HTTP-basierte KI-Clients. Es scannt ausgehende JSON-Daten, ersetzt zutreffende Werte lokal und stellt reversible Ersetzungen in JSON- und Streaming-Antworten wieder her. Das LLM erhält die geschützten Werte, während der Agent weiterhin die Originale verwenden kann.

Cover läuft als transparenter Reverse-Proxy mit richtliniengesteuerter Ersetzung, deterministischen Pseudonymen, Betriebsprüfungen, Codex-Unterstützung und strenger Fehlerbehandlung. Es ist darauf ausgelegt, lokal, beobachtbar und explizit darüber zu bleiben, was es nicht prüfen kann.

root@kitploit:~
flowchart LR
    A["Agent"] -->|"JSON request"| C["Cover<br/>detect · transform · enforce"]
    C -->|"protected request"| L["LLM or router"]
    L -->|"JSON or SSE response"| C
    C -->|"restored response"| A

Highlights

Installation

Das Installationsprogramm klont Cover, kompiliert es mit Go, installiert es nach ~/.local/bin/cover, konfiguriert ausgewählte Clients und startet den Proxy.

root@kitploit:~
curl -fsSL https://raw.githubusercontent.com/DavidCarliez/cover/main/scripts/install.sh | bash

Voraussetzungen: git und die in go.mod angegebene Go-Version.

Vorkompilierte Archive für Linux, macOS und Windows sowie deren Prüfsummen sind in den GitHub-Releases verfügbar.

Für eine nicht-interaktive Installation:

root@kitploit:~
COVER_AGENTS=openai,claude \
  curl -fsSL https://raw.githubusercontent.com/DavidCarliez/cover/main/scripts/install.sh | bash
Manuell bauen oder cross-kompilieren
root@kitploit:~
git clone https://github.com/DavidCarliez/cover.git
cd cover
go build -o cover ./cmd/cover
install -m 0755 cover ~/.local/bin/cover

Das Kern-Binary hat keine cgo-Abhängigkeit. Standardmäßige Go-Cross-Kompilierung funktioniert:

root@kitploit:~
GOOS=linux GOARCH=arm64 go build -o cover-linux-arm64 ./cmd/cover
GOOS=windows GOARCH=amd64 go build -o cover.exe ./cmd/cover

Schnellstart

root@kitploit:~
cover init             # write ~/.config/cover/config.yaml
cover start --detach   # run in the background
cover doctor           # verify the local setup
cover test             # local redaction round trip, no network call
cover monitor          # watch privacy-safe request metadata

cover init fragt nach OpenAI, Anthropic oder einem benutzerdefinierten Upstream. Die vollständige Konfiguration ist in configs/config.example.yaml dokumentiert.

Befehlsreferenz

Das Stoppen von Cover ändert die Client-Konfiguration nicht. Ein Client, der weiterhin auf Cover zeigt, kann keine Verbindung herstellen, bis Cover neu gestartet oder der Client wieder auf seinen direkten Anbieter oder Router ausgerichtet wird.

Datenschutzrichtlinien

Die integrierte Regex-Erkennung umfasst AWS- und GCP-Schlüssel, GitHub-, GitLab-, Slack-, Stripe- und Anthropic-Tokens, Private-Key-Blöcke, JWTs, explizite generische Secret-Zuweisungen, E-Mails, SSNs, Kreditkarten, Telefonnummern und IBANs. Ein nackter OpenAI-sk-...-Wert ist bewusst keine eigene integrierte Kategorie. Definieren Sie eine explizite Regel, falls Ihre Umgebung eine solche benötigt.

Regeln befinden sich unter rules in ~/.config/cover/config.yaml. Ein Selektor kann ein regulärer Ausdruck, ein builtin_*-Detektor oder eine Liste von JSON-Objektschlüsseln sein.

root@kitploit:~
rules:
  password_fields:
    keys: [password, passwd, pwd, passphrase, user_password, database_password]
    category: password
    action: pseudonymize
    generator: password
    priority: 220

  ipv4_addresses:
    detector: builtin_ipv4
    category: ip_address
    action: pseudonymize
    generator: ipv4
    priority: 100

  customer_name:
    pattern: '(?i)\bNIKE\b'
    category: customer
    action: pseudonymize
    generator: alias
    priority: 80

  forbidden_secret:
    pattern: '(?i)secret\s*[:=]\s*(?P<value>[^\s,;]+)'
    action: block
    priority: 200

Schlüssel-Selektoren schützen vollständige String-Werte. So wird beispielsweise {"password":"admin"} geschützt, ohne ein nicht zusammenhängendes {"username":"admin"} als Passwort zu behandeln. Benannte (?P<value>...)-Gruppen ermöglichen es einem Regex, nur den erfassten Wert zu ersetzen.

Pseudonym-Generatoren: ipv4, ipv6, hostname, domain, fqdn, email, username, password, secret, uuid, url und alias.

Regeln werden beim Start validiert. Ungültige Selektoren, Ausdrücke, Aktionen, Generatoren oder Capture-Gruppen verhindern den Start von Cover. Detektorfehler, erschöpfte Zuordnungen, fehlerhaftes JSON, komprimierte Bodys und explizite Blöcke führen nicht dazu, dass die ursprüngliche Anfrage dennoch weitergeleitet wird.

Stabile Pseudonyme und reversible Zuordnungen

Cover erstellt ~/.config/cover/pseudonym.key mit Berechtigungen nur für den Eigentümer. HMAC-SHA-256 leitet für denselben Originalwert über Sitzungen und Neustarts hinweg dasselbe Pseudonym ab. Unterschiedliche Installationen erzeugen unterschiedliche Pseudonyme.

Der Schlüssel kann Originalwerte nicht wiederherstellen. Die Wiederherstellung verwendet begrenzte Zuordnungen, die nur im Prozessspeicher gehalten werden. Zuordnungen werden durch X-Cover-Session getrennt, laufen nach der konfigurierten TTL ab und werden gelöscht, wenn eine isolierte Anfrage abgeschlossen ist. Sichern Sie den Schlüssel nur, wenn eine stabile Pseudonym-Kontinuität wichtig ist.

Inspizieren, diagnostizieren und überwachen

Vorschau ohne Senden

root@kitploit:~
cover inspect request.json
cover inspect request.json --session demo

Der Bericht enthält die transformierte Anfrage, zutreffende Regeln, Kategorien, Aktionen, Warnungen und den Blockierungsstatus. Er sendet keine Netzwerkanfrage und gibt die reversible Zuordnung nicht aus.

Installation prüfen

root@kitploit:~
cover doctor
cover doctor --json

Doctor validiert die Konfiguration, Listener-Richtlinie, Limits, Pseudonym-Schlüssel, den Schwärzungs-Roundtrip, Upstream-Loop-Schutz, Daemon, Fail-Closed-Verhalten, Audit-Log, Umgebungs-Routing, Codex-Anbieter und die Codex-Anfragekomprimierung. Sein Live-Test wird lokal abgelehnt und verbraucht keine Modell-Tokens.

Standardmäßig sichere Überwachung

root@kitploit:~
cover monitor
cover monitor --follow=false -n 50
cover monitor --json

Der Standard-Monitor zeigt nur zugelassene Metadaten: Zeit, HTTP-Status, Anzahl der Transformationen, Byte-Anzahl, Latenz, Kategorien und generische Fehler. Audit-Logs enthalten niemals Anfrage- oder Antwort-Bodys, zutreffende Werte, Zuordnungen, Pfade, Abfragen oder Upstream-Zugangsdaten.

Explizite vertrauliche Live-Ansicht

root@kitploit:~
cover monitor --show-content
cover monitor --show-content --once
cover monitor --show-content --json

Diese Opt-in-Ansicht zeigt jedes abgefangene Original und die jeweilige Ersetzung, gefolgt von dem exakt transformierten JSON, das an den Upstream-Transport übergeben wird. Sie ist nur live verfügbar und wird niemals in das Audit-Log aufgenommen. Die Erfassung beginnt, sobald sich ein authentifizierter lokaler Betrachter verbindet, und endet, wenn dieser die Verbindung trennt. Der Stream ist nur über Loopback erreichbar, verwendet ein aus dem Installationsschlüssel abgeleitetes Token und trennt langsame Betrachter.

[!WARNING] Diese Terminalausgabe ist vertraulich. Verwenden Sie --show-content nicht in gemeinsam genutzten Terminals, aufgezeichneten Sitzungen, CI-Protokollen oder Support-Transkripten.

Clients verbinden

Cover leitet Anfragemethoden, Pfade, Abfragen und Header an den konfigurierten Upstream weiter. Die vorhandene Anbieterauthentifizierung funktioniert weiterhin, da Cover keine Authentifizierungs-Header umschreibt.

Codex und Codex Router

Codex verwendet die Responses-API. Fügen Sie einen Benutzeranbieter zu ~/.codex/config.toml hinzu und deaktivieren Sie die Anfragekomprimierung, damit Cover den Body prüfen kann:

root@kitploit:~
model_provider = "cover"

[model_providers.cover]
name = "Cover"
base_url = "http://127.0.0.1:8317"
wire_api = "responses"
requires_openai_auth = true
supports_websockets = false

[features]
enable_request_compression = false

Diese Schlüssel folgen der offiziellen Codex-Konfigurationsreferenz. Wenn [features] bereits vorhanden ist, fügen Sie die Einstellung zu dieser Tabelle hinzu. Verwenden Sie für einen Router, der ein Token aus der Umgebung liest, anstelle von requires_openai_auth den Wert env_key = "YOUR_ROUTER_KEY_ENV_NAME".

Halten Sie den upstream von Cover auf die tatsächliche Router-URL gerichtet. Verwenden Sie configs/codex-router.example.yaml als Ausgangspunkt. Das ausgewählte Modell kann OpenAI, Anthropic, Gemini, DeepSeek oder ein anderes Modell sein, da Cover auf dem generischen JSON-Verkehr des Routers arbeitet.

encrypted_content-Felder der Responses-API sind undurchsichtig und kryptografisch verifiziert. Cover lässt sie beim Scannen von Anfragen und bei der Wiederherstellung von Antworten unverändert.

Claude Code, SDKs und andere Clients

root@kitploit:~
export ANTHROPIC_BASE_URL=http://127.0.0.1:8317
export OPENAI_BASE_URL=http://127.0.0.1:8317/v1

Claude Code verwendet die erste Form. OpenAI-kompatible SDKs und Clients verwenden in der Regel die /v1-Form. Das Installationsprogramm kann diese Einstellungen dauerhaft speichern, und cover env gibt die Exports für die während der Installation ausgewählten Clients aus.

SDK-Konstruktoren können dieselbe Basis-URL direkt festlegen:

root@kitploit:~
client = OpenAI(base_url="http://127.0.0.1:8317/v1", api_key=os.environ["OPENAI_API_KEY"])
client = anthropic.Anthropic(base_url="http://127.0.0.1:8317", api_key=os.environ["ANTHROPIC_API_KEY"])

Cursor und andere Anwendungen können denselben Endpoint verwenden, wenn sie eine Einstellung für die API-Basis-URL bereitstellen. Bestätigen Sie das Routing mit cover doctor oder cover monitor.

Pi und Oh My Pi

Die offizielle Harness-Erweiterung steuert Cover von Pi oder Oh My Pi aus und behält die Datenschutz-Engine im lokalen Go-Proxy:

root@kitploit:~
pi install npm:cover-harness
# or
omp plugin install cover-harness

Konfigurieren Sie nur die Anbieter, die durch den aktuellen Cover-Upstream laufen müssen:

root@kitploit:~
/cover providers openai-codex,deepseek=/
/cover on
/cover doctor

Anbieter der OpenAI-Familie verwenden standardmäßig den /v1-Proxy-Pfad. =/ wählt die Proxy-Wurzel für Transporte wie DeepSeek, die einen eigenen Anforderungspfad hinzufügen. Verwenden Sie /cover status, /cover start, /cover stop und /cover monitor für den normalen Betrieb. /cover off stellt das direkte Anbieter-Routing wieder her.

Der Schutz ist fail-closed: Solange er aktiviert ist, bleiben konfigurierte Anbieter auf Cover ausgerichtet, wenn dessen Daemon nicht verfügbar ist. Anfragen schlagen also lokal fehl, anstatt den Proxy zu umgehen. Der Erweiterungsstatus ist privat und lokal unter ~/.config/cover/harness.json gespeichert.

Das gleiche Paket erscheint in der Pi-Paketgalerie. OMP-Benutzer können dieses Repository auch als Marketplace hinzufügen:

root@kitploit:~
omp plugin marketplace add DavidCarliez/cover
omp plugin install cover-harness@cover

Optionaler lokaler LLM-Detektor

Regex- und schlüsselbasierte Regeln können nicht jeden Namen, jede Adresse, jede Kundennummer oder jeden internen Codenamen identifizieren. Cover kann ein kleines lokales llama.cpp-Modell als zusätzlichen semantischen Detektor ausführen.

root@kitploit:~
cover models pull
cover models status
cover restart

Das Standardmodell ist Qwen2.5-0.5B-Instruct als etwa 490 MB großes Q4-GGUF. Cover startet llama-server auf Loopback und erzwingt Budgets pro Aufruf und insgesamt. Fehlende Binärdateien, Startfehler, Timeouts und Detektorfehler verhalten sich fail-closed, wenn der Detektor aktiviert ist. Zurückgegebene Spannen müssen exakt so im Eingabetext vorkommen, bevor Cover sie akzeptiert.

Lassen Sie diese Funktion auf nicht unterstützten Plattformen deaktiviert. Informationen zu Limits, Batchverarbeitung, Nebenläufigkeit und Modellpfaden finden Sie im Abschnitt detectors.llm_fallback der Datei configs/config.example.yaml.

Sicherheitsgrenze

Cover schützt zutreffende String-Werte in JSON-Bodys, die tatsächlich durch den Proxy laufen. Es erhebt nicht den Anspruch, jeden vertraulichen Wert zu entdecken.

Daten können die Maschine dennoch verlassen, wenn sie in folgendem Kontext auftreten:

  • einem Wert, den kein aktivierter Detektor und keine Regel erkennt;
  • einem Feld, das von einer allow-Regel abgedeckt wird;
  • HTTP-Headern, URL-Pfaden oder Abfragezeichenfolgen;
  • Bildpixeln, binären Medien oder nicht unterstützten Kodierungen;
  • Nicht-String-JSON-Werten;
  • strukturellen Protokollfeldern wie Modell, Rolle, Typ, IDs und Tool- oder Funktionsnamen;
  • undurchsichtigem encrypted_content, das aus Protokollsicherheitsgründen unverändert bleiben muss;
  • Verkehr von einem Client, der Cover umgeht.

Die Behandlung von Inline-Bildern ist mit media.images: allow, warn oder block konfigurierbar. Cover prüft keine Pixel, und keine Medienrichtlinie kann jede mögliche Kodierung erkennen.

Cover lehnt Nicht-Loopback-Listener ab, sofern nicht explizit network.allow_remote: true konfiguriert ist. Wenn Cover und sein Upstream-Router auf verschiedenen Hosts laufen, verwenden Sie TLS oder einen anderen vertrauenswürdigen Transport und wenden Sie separate Netzwerkzugriffskontrollen an. Cover selbst authentifiziert den normalen Proxy-Verkehr nicht.

Limits für Anfragen, gepufferte Antworten, gesamte Streams und einzelne SSE-Ereignisse begrenzen die Speichernutzung. Zu große Anfragen geben HTTP 413 zurück, zu große gepufferte Antworten geben HTTP 502 zurück, und zu große Streams werden beendet.

Lesen Sie SECURITY.md, bevor Sie eine Sicherheitslücke melden. Bitte nutzen Sie den dort beschriebenen privaten Meldeweg, anstatt ein öffentliches Issue zu eröffnen.

Projekt

  • Entwicklung und Tests: CONTRIBUTING.md
  • Verhaltenskodex: CODE_OF_CONDUCT.md
  • Lizenz: Apache License 2.0
Tool herunterladen
BereichCover-Funktion
RichtlinieDeklarative Regeln mit den Aktionen allow, placeholder, pseudonymize, mask, redact und block
Realistische ErsetzungenDeterministische Generatoren für IP-Adressen, Hosts, Domains, E-Mails, Benutzernamen, Passwörter, UUIDs, URLs und Aliase
Kontextbezogene RegelnSchutz ganzer Werte über JSON-Schlüssel, einschließlich kurzer Passwörter wie admin, sowie Regex- und integrierter Detektor-Selektoren
Stabile IdentitätenInstallationsschlüssel-gebundene HMAC-Pseudonyme bleiben über Anfragen, Sitzungen und Neustarts hinweg konsistent
Mapping-SicherheitBegrenzte, sitzungsisolierte, nur im Speicher gehaltene reversible Zuordnungen mit TTL- und Kapazitätsgrenzen
Inspektioncover inspect zeigt eine Vorschau der geschützten JSON-Daten, ohne ein LLM zu kontaktieren
Diagnosecover doctor prüft Richtlinien, Daemon-Status, lokales Fail-Closed-Verhalten und Codex-Routing
ÜberwachungNur Metadaten umfassende Audit- und Monitoransichten sowie explizite Live-Inspektion abgefangener und weitergeleiteter Inhalte
Proxy-HärtungStandardmäßig Loopback-Listener, Begrenzungen für Body und Streams, generische sichere Fehler und Fail-Closed-Parsing
Codex-KompatibilitätResponses-API- und Router-Konfiguration, Komprimierungsprüfungen, sichere SSE-Wiederherstellung und unveränderliche encrypted_content-Felder
Optionaler semantischer DurchlaufEin lokaler llama.cpp-Detektor kann Freitext untersuchen, den reguläre Ausdrücke übersehen
BefehlZweck
cover installClients, Shell-Exports und den Hintergrund-Proxy konfigurieren
cover initDie Konfigurationsdatei erstellen
cover start [--detach]Cover im Vordergrund oder Hintergrund starten
cover stopDen Hintergrundprozess beenden
cover restartIm Hintergrund neu starten
cover status [--json]Prozess-, Listener- und geschwärzten Upstream-Status anzeigen
cover version [--json]Build-Version, Commit und Datum anzeigen
cover envShell-Exports für konfigurierte Clients ausgeben
cover testEinen synthetischen lokalen Schwärzungs- und Wiederherstellungstest ausführen
cover inspect request.jsonVorschau genau dessen, was Cover weiterleiten würde
cover doctor [--json]Konfigurations-, Datenschutz-, Daemon- und Routingprüfungen ausführen
cover monitorAktuelle sichere Metadaten anzeigen und neuen Ereignissen folgen
cover monitor --show-contentVertrauliche Live-Transformationen und ausgehende JSON anzeigen
cover models pullDie optionale lokale Detektor-Laufzeitumgebung und das Modell herunterladen
cover models statusInstallation und Konfiguration des lokalen Detektors melden
cover completionShell-Vervollständigungsskripte erzeugen
AktionErgebnis
allowDen Treffer protokollieren, aber unverändert lassen
placeholderDurch ein kurzes reversibles Token ersetzen
pseudonymizeDurch einen realistischen, deterministischen Wert ersetzen
maskDas erste und letzte Zeichen behalten und die Mitte maskieren
redactDurch [REDACTED] ersetzen
blockDie gesamte Anfrage lokal ablehnen