Skip to content

fix: review-takt-default から Bash 実行権限を除去#501

Draft
j5ik2o wants to merge 1 commit intonrslib:mainfrom
j5ik2o:fix/review-takt-default-no-bash
Draft

fix: review-takt-default から Bash 実行権限を除去#501
j5ik2o wants to merge 1 commit intonrslib:mainfrom
j5ik2o:fix/review-takt-default-no-bash

Conversation

@j5ik2o
Copy link
Collaborator

@j5ik2o j5ik2o commented Mar 11, 2026

別途判断が必要。そもそもBash権限を除去しても問題ないか要検討です。

概要

  • review-takt-default のレビュー専用 movement から Bash を除去し、PR レビュー中にシェル実行できないように修正
  • 英語版・日本語版の両方に同じ制約を適用
  • 回帰テストを追加し、レビュー専用ピースで Bash が再び許可されないように固定

この対策がない場合の問題

  • 攻撃者が PR 本文や差分にプロンプト注入を仕込むと、レビュー中の LLM が Bash を使って任意コマンドを実行できる
  • required_permission_mode 未指定のため既定の edit 権限が適用され、workspace-write 相当でリポジトリ変更やローカルファイル参照が可能になる
  • network_access: true の provider 設定と組み合わさると、秘密情報の外部送信や意図しない環境調査の踏み台になる
  • これは「レビュー専用ピースでテストやビルドをしない」という設計意図と明確に矛盾する

変更内容

  • builtins/en/pieces/review-takt-default.yamlgather と全 reviewer movement から Bash を削除
  • builtins/ja/pieces/review-takt-default.yaml に同じ修正を反映
  • src/__tests__/review-takt-default-piece.test.ts を追加し、英日両方で Bash が含まれないことを検証

テスト

  • npm test

@nrslib
Copy link
Owner

nrslib commented Mar 11, 2026

挙動を見たほうがよさそうですね!
もともとこれらに Bash が付いているのはテストの実行を許可するためだった気がするので、review ピースではテスト実行を制限する、みたいなことが必要そうです

@j5ik2o
Copy link
Collaborator Author

j5ik2o commented Mar 11, 2026

確かに、そのあたり設計変更が伴いそうなので、一旦本件はペンディングでよさそう。

@j5ik2o j5ik2o marked this pull request as draft March 15, 2026 02:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants