1Passwordの研究者らは、LLMが生成した修正パッチが、複雑な脆弱性への対応において根本原因やアーキテクチャ上の背景、長期的なセキュリティへの影響をしばしば見落としていることを明らかにしました。
AIが生成する脆弱性修正パッチは、特にセキュリティに関わる重要なコードにおいて、依然として人間によるレビューに大きく依存していることが、ある調査で明らかになりました。
1Passwordの研究者らは社内評価の結果を公表し、AIが生成した修正パッチは構文的には正しくても、アーキテクチャ上の意図やビジネス要件、セキュリティへの影響、長期的な保守性といった、より広範な懸念事項を見落とすことが多いと指摘しています。
「私たちは、最近公開された複雑な脆弱性に対して大規模言語モデル(LLM)が修正パッチを生成した場合に何が起こるかを調査しました」と、1Passwordの研究者Keith Hoodlet氏はブログの投稿で述べています。「私たちのデータによると、複雑な修正パッチが求められる場合、LLMは53.9%の確率で欠陥を内包した修正もどきの成果物(FLAWED: Fix-Like Artifacts with Embedded Defects)を生成してしまいます」。
この評価では、CVE-2026-31431(「Copy Fail」)、CVE-2026-34197(ActiveMQ RCE)、CVE-2026-8512、CVE-2026-45185(EXIM RCE)、CVE-2026-22738(SpringAI SpEL RCE)、そしてGemini CLI RCE(GHSA-wpqr-6v78-jr5g)を含む、最近公開された6件のCVEを対象にAI生成の修正パッチを検証しました。
1Passwordは、フロンティアAIコーディングモデルであるChatGPT-5.5とClaude Opus 4.8を使って生成された6080件の修正パッチを評価したとされ、その結果、アプリケーションの動作を変えることなく脆弱性を完全に修正できていたのは全体の4分の1強にとどまりました。
「脆弱性の修正には成功したものの、その過程でアプリケーションの動作を変えてしまったパッチは20.1%の割合で発生しました」とHoodlet氏は付け加えています。
「修正すること」と「安全にすること」は違う
1Passwordは、生成されたコードがコンパイルできるか、自動テストに通るかを単に確認するのではなく、脆弱性が完全に排除されているか、アプリケーションの動作が保たれているか、そして新たなセキュリティリスクを生んでいないかという観点ですべての修正パッチをレビューしたと述べています。
アプリケーションに変更を加えることなく脆弱性の修正に成功したパッチはわずか26%にとどまった一方、49.3%は悪用可能な攻撃経路を少なくとも1つ排除できておらず、2.3%は元の脆弱性は修正したものの新たな脆弱性を生み出しており、2.2%は脆弱性の修正に失敗した上に新たなセキュリティ上の弱点まで作り出していました。
また研究者らは、あらかじめ定義されたテストに通過することが、かえって深刻な問題を生む場合があることも明らかにしました。当初は成功したように見えたパッチのうち3分の1以上は、根本原因に対処するのではなく、テストで使用された概念実証(POC)エクスプロイトを単にブロックしているだけであることが判明し、「脆弱(fragile)」と分類されました。
Hoodlet氏はこの点について、SpringAIのCVEに対する修正パッチを例に説明しています。GPTとClaudeのどちらのモデルも、提示されたPOCで使用された入力文字列の特定の文字だけを標的にした修正パッチを生成しており、根本原因には手をつけていなかったというのです。
「保護されていたコードが別の入力を使うことで再び到達可能になれば、ソフトウェア内で古い脆弱性が再浮上することになります」と同氏は指摘しています。
人間によるレビューは依然として最後の砦
1Passwordは、こうした問題点は、本番環境に投入できる水準のセキュリティ修正を生み出すために必要な文脈的な推論に起因していると主張しています。
Anthropicにも取材を行ったところ、人間を判断のループに組み込み続けることを推奨しているとのことです。「パッチの生成速度はパッチの検証速度を上回ってしまっています。解決策は、検証を(コードの見た目を確認するだけの)検査ベースではなく、実際の実行結果に基づいたものにすることであり、それと同時に、現在のモデルの能力を踏まえれば、専門家が最終的なレビュー役であり続けることです」と同社は述べたとされています。
1Passwordはまた、AIが生成する修正パッチが事実上「無料」であるという見方にも異を唱えています。修正とその検証にかかる1サイクルあたりの平均コストは、ChatGPT-5.5を使用した場合で約2.11ドル、Claude Opus 4.8を使用した場合で2.81ドルにとどまるものの、Hoodlet氏は、本当のコストは、それらの修正パッチが本番環境に投入できるほど十分に安全かどうかを検証する部分にこそあると主張しています。