原文(日本語に翻訳)
LSPバイナリ検出で使用されるPOSIXのwhichフォールバックにおけるコマンドインジェクション脆弱性を修正しました。
原文(英語)
Fixed a command injection vulnerability in the POSIX which fallback used by LSP binary detection
概要
Language Server Protocol(LSP)のバイナリを検出する際に使用されるPOSIXの which コマンドフォールバックに、コマンドインジェクション脆弱性が存在していました。このアップデートにより、この脆弱性が修正され、LSPバイナリ名に特殊文字が含まれている場合でも安全に処理されるようになりました。セキュリティ上重要な修正です。
基本的な使い方
bash
# この脆弱性修正はユーザーが特別な操作をする必要はありません
# Claude Codeを最新バージョンに更新するだけで修正が適用されます
# バージョン確認
claude --version
# claude-code 2.1.101 以降であれば修正が適用されています実践例
セキュアなLSP設定
json
// .claude/settings.json
// LSPサーバーを設定する際は、信頼できるバイナリパスを使用
{
"lsp": {
"typescript": {
"command": "/usr/local/bin/typescript-language-server",
"args": ["--stdio"]
},
"python": {
"command": "/usr/bin/pylsp",
"args": []
}
}
}LSPバイナリの安全な検証
bash
#!/bin/bash
# LSPバイナリが正しくインストールされているか確認
check_lsp_binary() {
local binary_name="$1"
# which コマンドでバイナリの存在を確認
if which "$binary_name" > /dev/null 2>&1; then
echo "✅ $binary_name が見つかりました: $(which $binary_name)"
else
echo "❌ $binary_name が見つかりません"
echo " インストール方法: npm install -g $binary_name"
fi
}
# 一般的なLSPバイナリの確認
check_lsp_binary "typescript-language-server"
check_lsp_binary "pylsp"
check_lsp_binary "rust-analyzer"
check_lsp_binary "gopls"セキュリティアップデートの適用確認
bash
# Claude Codeのセキュリティアップデートを確認
npm list -g @anthropic-ai/claude-code
# 最新バージョンに更新
npm update -g @anthropic-ai/claude-code
# バージョン確認
claude --version
# セキュリティアドバイザリの確認
npm auditLSP関連設定のセキュアな管理
bash
# LSP設定を安全に管理するためのベストプラクティス
# 1. バイナリパスは絶対パスを使用
# Bad: "command": "typescript-language-server"
# Good: "command": "/usr/local/bin/typescript-language-server"
# 2. バイナリの整合性確認
sha256sum /usr/local/bin/typescript-language-server
# 公式のハッシュ値と比較
# 3. バイナリのパーミッション確認
ls -la /usr/local/bin/typescript-language-server
# -rwxr-xr-x 形式であることを確認(書き込み権限が広すぎないこと)注意点
- このセキュリティ修正は、LSPバイナリ名に特殊文字が含まれる場合の脆弱性を対処します
- 通常の使用環境では、この脆弱性が悪用される可能性は低いですが、更新を推奨します
- LSPサーバーのバイナリパスには信頼できるディレクトリのバイナリのみを使用してください
- セキュリティ上の懸念がある場合は、すぐに最新バージョンへのアップデートを行ってください
- このような脆弱性の報告は、セキュリティ@anthropic.comまで連絡できます