jingkaihe/matchlock

Matchlock secures AI agent workloads with a Linux-based sandbox.

何を解決するか

Matchlockは、AIエージェントがローカルマシン上でコードを実行することによるセキュリティリスクに対処します。エージェントがパッケージをインストールしたり、ファイルを書き込んだり、コマンドを実行したりしても、ホストシステムの整合性が損なわれたり、機密APIキーが漏洩したりするリスクを回避できる、安全で隔離された環境を提供します。

動作方法

Matchlockは、LinuxではFirecracker、macOSではVirtualization.frameworkを使用して、1秒未満で起動する一時的なmicroVM内にAIエージェントを起動します。複数のセキュリティ層を採用しています:

  • ネットワーク隔離:すべてのトラフィックを明示的に許可されたホスト以外はブロックするネットワーク許可リストを実装しています。
  • シークレットインジェクション:VMにAPIキーを直接渡すのではなく、MITMプロキシを使用して実行中に資格情報を挿入します。エージェントはプレースホルダのみを認識するため、キーは実際にサンドボックス内に存在しません。
  • ストレージ隔離:ボリュームオーバーレイマウントとFUSEを使用して、セッション終了後に消える隔離されたスナップショットを提供します。
  • SDKs:Go、Python、TypeScriptのSDKを提供し、VMのライフサイクルをプログラムで管理し、コマンドを実行し、出力をストリーム化できます。

対象ユーザー

タスクの実行、コードの実行、外部APIとの安全な相互作用にフルLinux環境を必要とするAIエージェントを開発する開発者。

主な特徴

  • 高速起動:microVMは1秒未満で起動します。
  • ゼロ漏洩シークレット:APIキーはプロキシ経由でインジェクションされ、ゲストVM内に存在しません。
  • 対称的な体験:LinuxとmacOS(Apple Silicon)で一貫したCLIの振る舞いを提供します。
  • 柔軟なネットワーキング:完全オフラインモード、特定ホストの許可リスト、リクエストおよびレスポンスの変更を可能にするネットワークインターセプションフックをサポートします。
  • OCI互換:Alpine、Ubuntuなど、任意のOCIイメージと互換性があります。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト