概要
- IBMのAIコーディングエージェント Bob に重大な脆弱性を発見
- コマンド自動承認設定により マルウェア実行リスク が顕在化
- CLIとIDE両方 で複数のプロンプトインジェクション攻撃が可能
- 既存の防御策を バイパス可能な手法 を解説
- 利用者への 注意喚起と今後の対策 の必要性を強調
IBM BobのAIコーディングエージェントにおける脆弱性
- IBM Bob はIBMが開発中のAIコーディングエージェントで、現在 Closed Beta 段階
- 提供形態は Bob CLI (Claude CodeやOpenAI Codexのようなターミナル型)と Bob IDE (CursorのようなAIエディタ)の2種類
- コマンド実行時に 「常に許可」 設定を有効化すると、 マルウェアのダウンロード・実行 が人手を介さず可能となる脆弱性
- コマンドバリデーション回避 を利用した 間接的プロンプトインジェクション攻撃 のリスク
- IBM公式ドキュメントでも 自動承認は「高リスク」 と明記、 ホワイトリスト推奨
攻撃チェーンの流れ
- 利用者が新しいリポジトリをBobで操作
- README下部に Bobを騙す指示 を記載、Bobが フィッシング訓練 と誤認
- Bobは複数回「echo」コマンドを実行、利用者は 「echoを常に許可」 を選択
- 3回目以降、 悪意あるコマンド が防御策を回避し即時実行、攻撃者サーバーからスクリプトを取得・実行
- echoの自動承認 を悪用し、 全体のマルウェアペイロード を許可
防御策のバイパス手法
- 複数コマンド 要求時、通常は各サブコマンドごとに許可を求めるが、 リダイレクト演算子(>) 利用で分離検知を回避
- コマンド置換($(command)) は制限されているが、 プロセス置換(>(command)) は検知が不十分
- minified JSコード 内の防御ロジックも、プロセス置換には未対応
- 「echo」コマンドの自動承認 により、 悪意ある全コマンドの実行 が可能
影響範囲
- 攻撃者が 任意のシェルスクリプト を配信・実行可能
- ランサムウェア によるファイル暗号化・削除
- 認証情報窃取 や スパイウェア の展開
- リバースシェル による端末乗っ取り
- 仮想通貨マイニングボットネット への強制参加
- Bob CLIのプロンプトインジェクション が、端末の完全な乗っ取りに直結
Bob IDEにおける追加の脆弱性
- Markdown画像 の表示時、 storage.googleapis.com 等へのリクエストが許可されており、 データ流出リスク
- 画像リンクをボタン化 したフィッシング攻撃の可能性
- Mermaidダイアグラム でも同様に外部画像リクエストが許可され、 攻撃者によるログ取得 が可能
- JSONスキーマのプリフェッチ 時、攻撃者が制御するURLへのアクセスで ゼロクリック型データ流出
利用者への注意喚起と今後の対応
- IBM Bobの正式リリース前 に、これらの脆弱性について広く周知
- 利用者は 自動承認設定を避け、ホワイトリスト運用 を徹底
- IBMによる追加防御策の実装 を強く要望
- AIコーディングエージェント利用時 のセキュリティ意識向上が不可欠