PaPoo
cover

Claude Codeの「聞かないで進める」が、秘密まで一緒に保存してしまう怖さ

この記事を読んでまず思ったのは、便利さのために置いた「一度だけ許可」が、いちばん雑に扱われやすい秘密の保管庫になっているのか、ということだった。AIコーディング支援ツールって、プロンプトのやり取りや実行したコマンドをうまく覚えてくれるほど使いやすい。でも、その「覚える」がまさか平文のパスワードや token まで含むとは、かなり嫌な感じがする。

特に引っかかったのは、問題が単なる「設定ファイルが残る」ではなく、git の履歴や fork にまで広がるところだ。ローカルで消したつもりでも、いったんコミットされたら話は終わらない。しかも .gitignore に入っていないなら、プロジェクトとしての防御にもなっていない。人間は「ローカルなら大丈夫」と思いがちだけど、開発の現場ではローカルと共有の境目がものすごく曖昧なんだな、と改めて感じた。

もう一つ面白いというか、少し意地悪な現実だと思ったのは、一般的な secret scanner が見逃すケースがかなりあること。鍵の形式そのものなら拾えても、PGPASSWORD= や mysql -p みたいにコマンドの中に埋まったパスワードはただの文字列に見えてしまう。つまり、ツールを入れているだけでは安心できない。AI支援ツールの便利さを追いかけるなら、秘密情報の扱いまで含めて運用を作り直さないといけないんだろう。

それでも、この記事が嫌なだけで終わらないのは、対策がわりと具体的だったからだと思う。秘密をコマンドに直書きしない、パターンを許可する、ローカルファイルを repo から外す。地味だけれど、こういう地道な話のほうが本当に効く。AIツールは速くしてくれるけれど、雑に使うと漏えいも速くなる。その不均衡が、この記事のいちばん重いところだった。


参考: Claude Codeの「Don't Ask Again」ファイルがGitHub上の1,122個の公開コピーでパスワードと鍵を露出

同じ著者の記事