Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
cover — AIリクエストがマシンから送信される前に、シークレットとPIIを置き換えるローカルプライバシープロキシ。 | Kitploit
ツール/GitHubGitHub/davidcarliez/cover
防御ツールウェブプロキシと傍受プライバシーシークレット検出APIセキュリティAIセキュリティ
GitHubdavidcarliez/cover

cover

AIリクエストがマシンから送信される前に、シークレットとPIIを置き換えるローカルプライバシープロキシ。

リポジトリを見る
22312時間38分前未レビュー

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

Cover

機密性の高い値をLLMリクエストから除外し、会話を中断させません。

CI Go License

インストール · クイックスタート · ポリシー · モニタリング · Pi / OMP · セキュリティ

Coverは、Codex、Claude Code、Cursor、SDK、その他のHTTPベースのAIクライアント向けのローカルプライバシープロキシです。送信JSONをスキャンし、一致した値をローカルで置換し、JSONおよびストリーミングレスポンス内で可逆的な置換を復元します。LLMは保護された値を受け取り、エージェントは元の値を引き続き使用できます。

Coverは、ポリシー駆動の置換、決定論的な仮名、運用チェック、Codexサポート、厳格な障害処理を備えた透過的なリバースプロキシとして動作します。ローカルに留まり、観測可能であり、検査できないものについて明確であるように設計されています。

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

主な機能

インストール

インストーラはCoverをクローンし、Goでビルドして~/.local/bin/coverにインストールし、選択したクライアントを設定してプロキシを起動します。

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

要件: gitとgo.modで宣言されているGoバージョン。

ビルド済みのLinux、macOS、WindowsアーカイブとそのチェックサムはGitHub Releasesから入手できます。

非対話インストールの場合:

root@kitploit:~
COVER_AGENTS=openai,claude \
  curl -fsSL https://raw.githubusercontent.com/DavidCarliez/cover/main/scripts/install.sh | bash
手動ビルドまたはクロスコンパイル
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

コアバイナリにはcgo依存関係はありません。標準のGoクロスコンパイルが機能します:

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

クイックスタート

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は、OpenAI、Anthropic、またはカスタムアップストリームを尋ねます。完全な設定はconfigs/config.example.yamlに文書化されています。

コマンドリファレンス

Coverを停止してもクライアント設定は変わりません。Coverを指したままのクライアントは、Coverが再起動されるか、クライアントが直接のプロバイダーまたはルーターに再設定されるまで接続に失敗します。

プライバシーポリシー

組み込みの正規表現検出は、AWS・GCPキー、GitHub、GitLab、Slack、Stripe、Anthropicのトークン、秘密鍵ブロック、JWT、明示的な汎用シークレット代入、メール、SSN、クレジットカード、電話番号、IBANをカバーします。素のOpenAI sk-...値は、意図的に専用の組み込みカテゴリにはしていません。環境で必要な場合は、明示的なルールを定義してください。

ルールは~/.config/cover/config.yamlのrulesの下にあります。セレクタには、正規表現、builtin_*検出器、JSONオブジェクトキーのリストを使用できます。

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

キーセレクタは完全な文字列値を保護します。たとえば、{"password":"admin"}は保護されますが、無関係な{"username":"admin"}がパスワードとして扱われることはありません。名前付き(?P<value>...)グループを使うと、正規表現はキャプチャされた値のみを置換できます。

仮名ジェネレータ: ipv4、ipv6、hostname、domain、fqdn、email、username、password、secret、uuid、url、alias。

ルールは起動時に検証されます。無効なセレクタ、式、アクション、ジェネレータ、キャプチャグループがあると、Coverは起動しません。検出エラー、マッピング枯渇、不正なJSON、圧縮ボディ、明示的なブロックが発生しても、元のリクエストを転送するフォールバックは行われません。

安定した仮名と可逆マッピング

Coverは、所有者のみがアクセスできる~/.config/cover/pseudonym.keyを作成します。HMAC-SHA-256は、同じ元の値からセッションや再起動をまたいで同じ仮名を導出します。インストールが異なれば、異なる仮名が生成されます。

キーから元の値を復元することはできません。復元には、プロセスメモリ内にのみ保持される境界付きマッピングを使用します。マッピングはX-Cover-Sessionで分離され、設定されたTTL後に失効し、分離されたリクエストが完了すると削除されます。安定した仮名の継続性が重要になる場合にのみ、キーをバックアップしてください。

検査、診断、モニタリング

送信せずにプレビュー

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

レポートには、変換後のリクエスト、一致したルール、カテゴリ、アクション、警告、ブロック状態が含まれます。ネットワークリクエストは送信されず、可逆マッピングも出力されません。

インストールの確認

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

Doctorは、構成、リスナーポリシー、制限、仮名キー、編集のラウンドトリップ、アップストリームループ保護、デーモン、フェイルクローズ動作、監査ログ、環境ルーティング、Codexプロバイダー、Codexリクエスト圧縮を検証します。そのライブプローブはローカルで拒否され、モデルトークンを消費しません。

デフォルトの安全なモニタリング

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

デフォルトのモニターは、許可リストに登録されたメタデータのみを表示します: 時刻、HTTPステータス、変換数、バイト数、レイテンシ、カテゴリ、一般的なエラー。監査ログにリクエスト/レスポンスボディ、一致した値、マッピング、パス、クエリ、アップストリームの資格情報が含まれることはありません。

明示的な機密ライブビュー

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

このオプトインビューは、検出された各オリジナルと置換を表示し、その後にアップストリームのトランスポートに渡される正確な変換後JSONを表示します。ライブ専用であり、監査ログには一切追加されません。キャプチャは、認証されたローカルビューアが接続した後に開始され、切断されると停止します。ストリームはループバック専用で、インストールキーから導出されたトークンを使用し、遅いビューアは切断されます。

[!WARNING] このターミナル出力は機密情報です。共有ターミナル、録画セッション、CIログ、サポートのトランスクリプトでは--show-contentを使用しないでください。

クライアントを接続

Coverは、リクエストメソッド、パス、クエリ、ヘッダーを設定済みのアップストリームに転送します。Coverは認証ヘッダーを書き換えないため、既存のプロバイダー認証は引き続き機能します。

CodexとCodex Router

CodexはResponses APIを使用します。~/.codex/config.tomlにユーザーレベルのプロバイダーを追加し、Coverがボディを検査できるようにリクエスト圧縮を無効にします:

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

これらのキーは、公式のCodex設定リファレンスに従います。[features]が既に存在する場合は、そのテーブルに設定を追加してください。環境からトークンを読み取るルーターの場合は、requires_openai_authをenv_key = "YOUR_ROUTER_KEY_ENV_NAME"に置き換えます。

Coverのupstreamは実際のルーターURLを指したままにしてください。出発点としてconfigs/codex-router.example.yamlを使用します。選択したモデルはOpenAI、Anthropic、Gemini、DeepSeek、または他のモデルにできます。Coverはルーターの一般的なJSONトラフィックに対して動作するためです。

Responses APIのencrypted_contentフィールドは不透明で、暗号的に検証されます。Coverは、リクエストのスキャンとレスポンスの復元中にこれらを変更しないままにします。

Claude Code、SDK、その他のクライアント

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は最初の形式を使用します。OpenAI互換のSDKとクライアントは一般的に/v1形式を使用します。インストーラーはこれらの設定を永続化でき、cover envはインストール時に選択したクライアントのエクスポートを出力します。

SDKコンストラクタでも同じベースURLを直接設定できます:

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や他のアプリケーションは、APIベースURL設定を公開している場合、同じエンドポイントを使用できます。ルーティングはcover doctorまたはcover monitorで確認してください。

PiとOh My Pi

公式ハーネス拡張機能は、プライバシーエンジンをローカルのGoプロキシに置いたまま、PiまたはOh My PiからCoverを制御します:

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

現在のCoverアップストリームを経由する必要があるプロバイダーだけを設定します:

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

OpenAI系プロバイダーはデフォルトで/v1プロキシパスを使用します。=/は、DeepSeekなど独自のリクエストパスを追加するトランスポート向けにプロキシルートを選択します。通常の操作には/cover status、/cover start、/cover stop、/cover monitorを使用します。/cover offで直接のプロバイダールーティングに戻ります。

保護はフェイルクローズです: 有効にしている間、設定済みプロバイダーはCoverのデーモンが利用できない場合もCoverを指し続けるため、プロキシを迂回するのではなくリクエストはローカルで失敗します。拡張機能の状態は、~/.config/cover/harness.jsonにプライベートかつローカルに保持されます。

同じパッケージはPiパッケージギャラリーに掲載されています。OMPユーザーはこのリポジトリをマーケットプレイスとして追加することもできます:

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

オプションのローカルLLM検出器

正規表現とキー認識ルールでは、すべての名前、住所、顧客ID、内部コードネームを識別できません。Coverは、追加のセマンティック検出器として、小さなローカルllama.cppモデルを実行できます。

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

デフォルトモデルは、約490MBのQ4 GGUF形式のQwen2.5-0.5B-Instructです。Coverはllama-serverをループバックで起動し、呼び出しごとおよび全体のリクエスト予算を適用します。バイナリの欠落、起動失敗、タイムアウト、検出エラーは、検出器が有効な場合フェイルクローズします。返されたスパンは、Coverが受け入れる前に、入力にそのまま存在している必要があります。

サポートされていないプラットフォームでは、この機能は無効のままにしてください。制限、バッチ処理、並行性、モデルパスについては、configs/config.example.yamlのdetectors.llm_fallbackセクションを参照してください。

セキュリティ境界

Coverは、実際にプロキシを通過するJSONボディ内の一致する文字列値を保護します。すべての機密値を発見できるとは主張していません。

データは、次の場所に現れる場合、依然としてマシンの外に出る可能性があります:

  • 有効な検出器またはルールが認識しない値
  • allowルールでカバーされるフィールド
  • HTTPヘッダー、URLパス、クエリ文字列
  • 画像ピクセル、バイナリメディア、またはサポートされていないエンコーディング
  • 文字列以外のJSON値
  • model、role、type、ID、ツール名や関数名などの構造的プロトコルフィールド
  • プロトコルの安全性のために変更せずに維持する必要がある不透明なencrypted_content
  • Coverを迂回するクライアントからのトラフィック

インライン画像の処理は、media.images: allow、warn、blockで設定できます。Coverはピクセルを検査せず、どのメディアポリシーも考えられるすべてのエンコーディングを認識できるわけではありません。

Coverは、network.allow_remote: trueが明示的に設定されていない限り、非ループバックリスナーを拒否します。Coverとそのアップストリームルーターが異なるホストで実行されている場合は、TLSまたは他の信頼できるトランスポートを使用し、個別のネットワークアクセス制御を適用してください。Cover自体は通常のプロキシトラフィックを認証しません。

リクエスト、バッファリングされたレスポンス、ストリーム全体、SSEイベントごとの制限により、メモリ使用量が制限されます。大きすぎるリクエストはHTTP 413を返し、大きすぎるバッファリングレスポンスはHTTP 502を返し、大きすぎるストリームは終了されます。

脆弱性を報告する前にSECURITY.mdをお読みください。公開issueを開くのではなく、そこに記載されている非公開の報告経路を使用してください。

プロジェクト

  • 開発とテスト: CONTRIBUTING.md
  • 行動規範: CODE_OF_CONDUCT.md
  • ライセンス: Apache License 2.0
ツールをダウンロード
領域Coverの機能
ポリシーallow、placeholder、pseudonymize、mask、redact、blockアクションを持つ宣言型ルール
現実的な置換IPアドレス、ホスト、ドメイン、メール、ユーザー名、パスワード、UUID、URL、エイリアス用の決定論的ジェネレータ
コンテキスト認識ルールJSONキーによる値全体の保護。adminなどの短いパスワードや、正規表現・組み込み検出セレクタも対象
安定したIDインストールキーに基づくHMAC仮名は、リクエスト、セッション、再起動をまたいで一貫します
マッピングの安全性TTLと容量制限を備えた、境界付き・セッション分離・メモリのみの可逆マッピング
検査cover inspectはLLMに接続せずに保護されたJSONをプレビューします
診断cover doctorはポリシー、デーモンの健全性、ローカルのフェイルクローズ動作、Codexルーティングを検証します
モニタリングメタデータのみの監査・モニタービューに加え、検出・転送されたコンテンツの明示的なライブ専用検査
プロキシの堅牢化デフォルトのループバックリスナー、ボディ・ストリーム制限、汎用的な安全なエラー、フェイルクローズ解析
Codex互換性Responses APIとルーター設定、圧縮チェック、安全なSSE復元、不変のencrypted_contentフィールド
オプションのセマンティックパスローカルのllama.cpp検出器が、正規表現では見逃す自由形式のテキストを検査できます
コマンド目的
cover installクライアント、シェルエクスポート、バックグラウンドプロキシを設定
cover init設定ファイルを作成
cover start [--detach]Coverをフォアグラウンドまたはバックグラウンドで起動
cover stopバックグラウンドプロセスを停止
cover restartバックグラウンドで再起動
cover status [--json]プロセス、リスナー、編集されたアップストリームの状態を表示
cover version [--json]ビルドバージョン、コミット、日付を表示
cover env設定済みクライアント用のシェルエクスポートを出力
cover test合成ローカルの編集・復元チェックを実行
cover inspect request.jsonCoverが転送する内容を正確にプレビュー
cover doctor [--json]設定、プライバシー、デーモン、ルーティングのチェックを実行
cover monitor最近の安全なメタデータを表示し、新しいイベントを追跡
cover monitor --show-content機密性の高いライブ変換と送信JSONを表示
cover models pullオプションのローカル検出ランタイムとモデルをダウンロード
cover models statusローカル検出のインストールと設定を報告
cover completionシェル補完スクリプトを生成
アクション結果
allow一致を記録するが、変更せずに残す
placeholder短い可逆トークンに置き換える
pseudonymize現実的で決定論的な値に置き換える
mask最初と最後の文字を残し、中間をマスクする
redact[REDACTED]に置き換える
blockリクエスト全体をローカルで拒否する