AIスクリプトのエスケープエラーでハードドライブのデータが完全消去
AIが生成したPowerShellスクリプトの1文字の誤りで、開発者のハードドライブデータが完全に消去された事例。pycache削除作業が大惨事に変わり、データ損失のリスクを浮き彫りにしています。
AIが生成したPowerShellスクリプトの1文字の誤りで、開発者のハードドライブデータが完全に消去された事例。pycache削除作業が大惨事に変わり、データ損失のリスクを浮き彫りにしています。
© E. Vartanyan
ある開発者にとって、日常的なクリーンアップ作業が大惨事に変わった。AIが生成したスクリプトにたった一文字の誤りがあったため、ハードドライブのデータが完全に消去されてしまったのだ。
開発者は、Pythonのpycacheフォルダを削除する簡単なPowerShellスクリプトをAIに生成させたと説明した。しかし、そのコマンドは追加ドライブの全内容を消去してしまい、仕事のプロジェクトやDockerコンテナのデータも失われた。この話はRedditで共有された後、注目を集めた。
失敗の原因は驚くほど単純だった。生成されたコードにはパスエスケープのエラーがあり、PowerShellが要求する文字とは異なるバックスラッシュが使われていた。PowerShellがコマンドをcmd/c経由で渡した際、パスが誤って解釈され、実質的にドライブのルートとして処理された。再帰的かつサイレントな削除パラメータと組み合わさり、警告や確認プロンプトなしでコマンドが実行された。システムはルートディレクトリ内のすべてを削除し始め、ユーザーが停止する機会を与えなかった。
この事例が示すのは、問題が複雑な脆弱性や稀なバグではなく、Windowsシェルがエスケープを処理する方法の微妙な違いにあったということだ。経験豊富なユーザーでさえ、特に生成されたコードを盲信する場合、こうしたニュアンスを見落としやすい。
この出来事は、いわゆる「バイブロコーディング」のリスクを浮き彫りにしている。開発者がAIを使って迅速な解決策を得ようとし、結果を十分に確認しない傾向がある。このアプローチは無害な操作では時間を節約できるが、ファイルシステムを扱う際のエラーの代償は重大になり得る。
開発者によれば、一部のデータはバックアップから回復できたが、かなりの部分が永久に失われた。これは明確な教訓だ。特に強制削除パラメータを持つスクリプトは、安全な環境での必須のレビューとテストが必要である。
人工知能はワークフローを加速できるが、基本的な注意を排除するものではない。コマンドがドライブと直接対話する場合、たった一文字の配置ミスが取り返しのつかない結果を招く可能性がある。