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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
fence — コンテナ不要の軽量サンドボックス:ネットワークとファイルシステムに制限をかけてコマンドを実行するためのもの | Kitploit
ツール/GitHubGitHub/fencesandbox/fence
防御ツール汎用ユーティリティコンテナセキュリティ動的分析 (サンドボックス)スクリプトと自動化ネットワークセキュリティDevSecOpsユーティリティとフレームワーク
GitHubfencesandbox/fence

fence

コンテナ不要の軽量サンドボックス:ネットワークとファイルシステムに制限をかけてコマンドを実行するためのもの

リポジトリを見る
897391日前Kitploit レビュー済み

人気

すべて見る →

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

すべてのツールを探索

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

すべてのツールを見る →
共有
ウェブサイト

Fence Banner

GitHub Release Build and test Docs Ask DeepWiki License

Fence はコマンドをサンドボックスでラップし、デフォルトでネットワークアクセスをブロックし、設定可能なルールに基づいてファイルシステム操作を制限します。これは、半信頼のおけるコード(パッケージインストール、ビルドスクリプト、CIジョブ、馴染みのないリポジトリ)を副作用を制御しながら実行する場合に最も役立ち、また、AIコーディングエージェントに対して多層防御として補完することもできます。

root@kitploit:~
# すべてのネットワークアクセスをブロック(デフォルト)
fence curl https://example.com  # → 403 Forbidden

# 特定のドメインを許可
fence -t code npm install  # → 'code'テンプレートを使用(npm/pypiなど許可)

# 危険なコマンドをブロック
fence -c "rm -rf /"  # → コマンド拒否ルールによりブロック

Fence Claude Code デモ

Fence は CLI エージェントのパーミッションマネージャーでもあります。Claude Code、Codex、Amp、Gemini CLI、GitHub Copilot、OpenCode、Factory (Droid) CLI などの人気コーディングエージェントと連携します - 詳細は agents.md を参照してください。

インストール

[!NOTE] Fence は github.com/Use-Tusk/fence から github.com/fencesandbox/fence に移行しました。 以前のTusk tapからHomebrewでインストールした場合は、新しいtapに切り替えてください:

root@kitploit:~
brew uninstall use-tusk/tap/fence
brew untap use-tusk/tap
brew tap fencesandbox/tap
brew install fencesandbox/tap/fence

go install でインストールした場合は、新しいモジュールパスから再インストールしてください:

root@kitploit:~
go install github.com/fencesandbox/fence/cmd/fence@latest

macOS / Linux:

root@kitploit:~
curl -fsSL https://cli.fencesandbox.com/install.sh | sh

Homebrew (macOS):

root@kitploit:~
brew tap fencesandbox/tap
brew install fencesandbox/tap/fence

Nix (macOS, Linux, Windows (WSL)):

root@kitploit:~
nix run nixpkgs#fence -- --help

これは、リポジトリから直接実行し、fence をインストールしません。インストールしたい場合は、NixOS または nix-darwin のガイドラインに従ってください。

その他のインストール方法

Go install:

root@kitploit:~
go install github.com/fencesandbox/fence/cmd/fence@latest

ソースからビルド:

root@kitploit:~
git clone https://github.com/fencesandbox/fence
cd fence
go build -o fence ./cmd/fence

Linux の追加要件:

  • bubblewrap (サンドボックス化のため)
  • socat (ネットワークブリッジのため)
  • bpftrace (オプション、-m で監視時のファイルシステム違反可視化のため)

使い方

基本的な使い方

root@kitploit:~
# すべてのネットワークをブロックしてコマンドを実行(デフォルトではドメインは許可されない)
fence curl https://example.com

# シェル展開を使用して実行
fence -c "echo hello && ls"

# デバッグログを有効化
fence -d curl https://example.com

# テンプレートを使用
fence -t code -- claude  # `code`テンプレート設定でClaude Codeを実行

# 監視モード(違反を表示)
fence -m npm install

# Fence自身のモニター/デバッグログをファイルに出力
fence -m --fence-log-file /tmp/fence.log -- claude
tail -f /tmp/fence.log

# 設定継承チェーンとアクティブな統合設定を表示
fence config show

# すべてのコマンドとオプションを表示
fence --help

[!TIP] 実行するコマンドにフラグを渡す必要がありますか? -- を使って Fence のフラグとコマンドのフラグを区切ってください。例:

root@kitploit:~
fence -- claude --dangerously-skip-permissions

設定

--settings を指定しない場合、Fence は最初に現在のディレクトリと親ディレクトリで fence.jsonc(または fence.json)を探します。見つからない場合は、~/.config/fence/fence.{jsonc,json} にフォールバックします。どちらの拡張子も JSONC として扱われます(コメントと末尾カンマが許可されます)。詳細は設定リファレンスを参照してください。

root@kitploit:~
{
  "$schema": "https://raw.githubusercontent.com/fencesandbox/fence/main/docs/schema/fence.schema.json",
  "extends": "code",
  "network": { "allowedDomains": ["private.company.com"] },
  "filesystem": { "allowWrite": ["."] },
  "command": { "deny": ["git push", "npm publish"] }
}

各ユーザーの通常の Fence 設定に加えてリポジトリローカルのオーバーライドを行うには、次を使用します:

root@kitploit:~
{
  "extends": "@base",
  "filesystem": { "allowWrite": ["."] }
}

異なる設定ファイルを指定するには fence --settings ./custom.json を使用します。

コマンドを実行せずにアクティブな設定を確認するには:

root@kitploit:~
fence config show
fence config show --settings ./custom.json
fence config show --template code

fence config show は設定チェーンを stderr に出力し、完全に解決された設定をプレーンな JSON として stdout に出力するため、JSON を jq などのツールにパイプできます。

適切なデフォルトでスターター設定を作成する:

root@kitploit:~
# デフォルトパスに以下の設定で作成:
# { "extends": "code" }
fence config init

# 編集可能なヒントとしてスキャフォールド配列を含める
fence config init --scaffold

Claude Code からのインポート

root@kitploit:~
fence import --claude --save

機能

  • ネットワーク分離 - デフォルトですべての送信をブロック; 設定でドメインを許可リスト化
  • ファイルシステム制限 - 読み取り/書き込みアクセスパスを制御
  • コマンドブロック - rm -rf /、git push などの危険なコマンドを拒否
  • SSHコマンドフィルタリング - SSH経由で許可するホストとコマンドを制御
  • 組み込みテンプレート - 一般的なワークフロー向けの事前設定ルールセット
  • 違反監視 - ブロックされたリクエストのリアルタイムログ(-m)
  • クロスプラットフォーム - macOS(sandbox-exec)+ Linux(bubblewrap)

Fence は Go パッケージまたは CLI ツールとして使用できます。

ドキュメント

完全なドキュメントは fencesandbox.com/docs にあります。

クイックリンク:

  • クイックスタート (ソース)
  • 設定リファレンス (ソース)
  • エージェントフック (ソース)
  • セキュリティモデル (ソース)
  • Goライブラリの使用法 (ソース)
  • アーキテクチャ (ソース)

謝辞

Anthropic の sandbox-runtime に触発されました。

ツールをダウンロード