些細なミスを減らす能力はあるものの、AIコーディングコパイロットは、企業に対して安全でないコーディングパターンの増加、秘密情報の露出、クラウド設定ミスなどのリスクを高めていることが研究で明らかになった。
AIコーディングツールの利用拡大による生産性向上は、より大きなセキュリティリスクという代償を伴っている。
AIコーディングアシスタントの利用は表層的な構文エラーの数を減らす一方で、よりコストのかかる構造的な欠陥が増加していると、アプリケーションセキュリティ企業Apiiroの調査は指摘している。Apiiroの分析によると、AIが生成したコードでは些細な構文エラーやロジックバグは減少したが、権限昇格の経路やアーキテクチャ設計の欠陥は増加した。
研究者らは、AIがオープンソース依存関係から安全でないコーディングパターン、秘密情報の露出、クラウド設定ミスに至るまで、さまざまな欠陥を増幅させていると指摘し、AIコーディングツールに関連するより大規模なプルリクエストがリスクをさらに高めていると付け加えている。
AIによるコード開発は「リスクを大規模に自動化」している
CSOが取材した独立系専門家たちも、AI生成コードがしばしばより深刻なアーキテクチャ上の脆弱性や権限昇格リスクをもたらし、それらは検出が難しく修正コストも高いというApiiroの主な発見に同意している。
i-GENTIC AIの共同創業者兼CEOであるZahra Timsah氏は、Apiiroの調査結果は自社が実際に目にしてきたことを強調していると述べる。すなわち、AIアシスタントは些細なバグを排除できる一方で、より深刻なシステム的脆弱性を増幅させる可能性があるという。
「AIツールは判断を下すようには設計されていません」とTimsah氏は語る。「彼らは権限昇格経路や安全なアーキテクチャパターン、コンプライアンスの微妙な違いについて考慮しません。そこにリスクが生じるのです。」
Timsah氏はさらに「コードの出荷は速くなりますが、監督が不十分だと、企業は実質的にリスクを大規模に自動化していることになります」と付け加える。
Codespy AIのCTO兼共同創業者であるRaj Dandage氏は、AIによるソフトウェア開発は見つけにくいバグを生み出す代償を伴うことが多いとCSOに語る。
「主要なLLMが生成する単純なバグは非常にまれです。むしろ、私たちが遭遇するバグのほとんどはテストや本番環境に到達してから発見されています」とDandage氏は述べる。
「シャドウ」エンジニアとバイブコーディングがリスクを増幅
継続的ソフトウェア開発企業Cloudbeesのグローバル情報セキュリティ責任者であるAshwin Mithra氏は、問題の一部は非技術系チームがAIを使ってアプリやスクリプト、ダッシュボードを構築していることにあると指摘する。
「これらのシャドウエンジニアは自分たちがソフトウェア開発ライフサイクルの一部であることに気づいておらず、重要なレビューやセキュリティチェックをしばしば回避しています」とMithra氏は説明する。「さらに、SAST(静的アプリケーションセキュリティテスト)、DAST(動的アプリケーションセキュリティテスト)、手動レビューのような基礎的なセキュリティツールは、プロンプト時点でAI生成コードを検出するようには作られていません。」
その結果、コードのセキュリティを確保する訓練を受けていない人々によって攻撃対象領域が拡大しているとMithra氏は警告する。
「誰でもコーディングできるようになると、リスクは増大し、セキュリティチェックは限られ、特にコンテキスト依存のリスクや複雑な脆弱性、API漏洩、認証の弱さ、PII(個人識別情報)の露出、暗号化されていないデータなど、すべてを検出することはできません」とMithra氏は述べる。
Qwiet AIの創業者兼CTOであるChetan Conikee氏も「バイブコーディング」が未経験の貢献者を本番パイプラインに増やす問題を提起していることに同意する。
「大規模で多くのファイルにまたがるAI生成のプルリクエストは、レビュアーを圧倒し、監督を希薄化し、各マージの影響範囲を拡大します」とConikee氏は説明する。
大規模なAIプルリクエストが欠陥検出を複雑化
ソフトウェア開発・コンサルティング企業PynestのCTOであるRoman Rylko氏は、Apiiroの調査は自社がAIアシスタントを開発に導入した際に直面した問題と一致しており、構文エラーの排除以上にアーキテクチャの脆弱性やクラウド設定ミスが増加したと述べる。
「カナダのフィンテック企業向けプロジェクトの一つでは、AI生成によって理想的なコードフォーマットのサービスが作られましたが、認可ロジックが安全でなく、修正は明らかに見えても、モジュール間の権限昇格につながる可能性がありました」とRylko氏は語る。「深いレビューがなければ、こうしたバグは簡単に本番環境に到達してしまいます。」
もう一つの問題は、AIが一度に数十ファイルや複数のマイクロサービスを含む大規模なプルリクエストを作成しがちな点にある。
「小売業者向けの小規模プロジェクトでこれが起きました。AIによる1回のコミットで10以上のファイルが同時に変更され、レビュアーはすべてを一行ずつ確認するのに苦労しました」とRylko氏は説明する。
ResultantのシニアセキュリティコンサルタントであるJohn Otte氏も、より少なく、しかし大幅に大きなAI生成プルリクエストへのシフトは「脆弱性の影響範囲を拡大し、検出・レビュー・ロールバックを開発・セキュリティチームにとってはるかに困難にする」と同意する。
「これらのリスクを軽減するために、企業はAI主導の開発に厳格なアーキテクチャ脅威モデリングを組み合わせ、依存関係や秘密情報の自動スキャンを含むきめ細かいコードレビューポリシーを徹底し、継続的なクラウドセキュリティポスチャ管理を統合して設計レベルの弱点を本番前に発見するべきです」とOtte氏は助言する。
冗長なAIコーディングアシスタントがリスクを高める
アプリケーションセキュリティスタートアップMinimusのプリンシパルソリューションアーキテクトであるNeil Carpenter氏は、AIコーディングアシスタントは同じ作業量を実現するためにより多くのコードを実装することが多く、その結果、攻撃ベクトルが増加し信頼性が低下すると述べる。
「AIアシスタントは、適切なコンテキストが与えられない場合、他の関数やモジュールを呼び出す代わりに、しばしば機能を再構築・再実装してしまいます」とCarpenter氏は語る。
RapidFortのCEOであるMehran Farimani氏も、AIコーディングアシスタントは冗長で理解しにくいソフトウェアコンポーネントを生成しがちだという評価を支持している。
「AIツールは、チームが十分に考慮・レビューしていない不要なコンポーネントや依存関係、設定決定を含む、より大きく複雑なソフトウェアを生成しています」とFarimani氏は述べる。
桁違いの増加
Apiiroは独自のDeep Code Analysis(DCA)エンジンを使い、数千人の開発者とさまざまなコーディングアシスタントが関与する数万のコードリポジトリを分析した。2025年6月までに、Apiiroの調査対象リポジトリではAI生成コードによる新たなセキュリティ指摘が月間1万件を超え、わずか6か月で10倍に急増した。
欠陥はオープンソース依存関係から安全でないコーディングパターン、秘密情報の露出、クラウド設定ミスまで多岐にわたった。
実行時アプリケーションセキュリティベンダーContrast Securityの共同創業者兼CTOであるJeff Williams氏は、AIコーディングアシスタントが開発速度を4倍にし、脆弱性を10倍に増やすというApiiroの結論に異議を唱えている。他の研究では両指標ともはるかに低い数値が示されているとWilliams氏は指摘する。
「私は10%の速度向上(Google)から19%の減速(METR)まで示唆する研究を読んでいます」とWilliams氏はCSOに語る。「また、脆弱性が10倍という話にも驚きました。私が読んでいる研究では、AI生成コードの脆弱性数はほぼ同程度とされています。」
Williams氏はさらに「AIベースの脆弱性検出が真の陽性脆弱性の10~20%しか検出できず、誤検出率も高いという最近の研究(Semgrep)についても触れてほしかった」と付け加える。
コメントを求められたApiiroは、調査範囲・手法・対象母集団の違いが自社研究と従来のラボベース研究の差を説明すると述べた。
「Apiiroの調査結果は従来の研究よりも広い範囲を反映しています。コードレベルの欠陥だけでなく、オープンソース依存リスクや秘密情報の露出も調査し、いずれも企業にとって重大なリスクとなります」とApiiroのプロダクトマネージャー、Itay Nussbaum氏は語る。「Semgrepの研究とは異なり、私たちはAIベースの脆弱性検出の精度を測定したのではなく、実際の企業環境におけるAIコーディングアシスタントの出力を時間をかけて調査しました。」
Secure Code WarriorのCEO兼共同創業者であるPieter Danhieux氏は、24か月前に実施したLLM比較調査で、インジェクション脆弱性のような単純なクラスは多くの場合正確に処理されたが、アクセス制御やセキュリティ設定ミスのような主観的なクラスでは精度が低く、セキュリティスキルのある開発者には及ばなかったと述べている。
「さらに、私たちの調査ではAIコーディングアシスタントとその使用するLLMバージョンは、あるプログラミング言語(例:TypeScript)では安全なコードを生成できても、別の言語(例:PHP)でははるかに悪い結果になることがあると示されています」とDanhieux氏は語る。
「人間(開発者)をループから外す世界はまだ存在しません」と彼は付け加える。
AIは説明責任の代替にはならない
監査・コンプライアンス・リスク管理ソフトウェアプラットフォームAuditBoardのCISOであるRich Marcus氏は、AIの限界を認識しないことが、この技術を利用する上で最大のリスクだと主張する。
企業は開発者にAIを使わせる前に、リスクや利用のベストプラクティスについてトレーニングを提供すべきだ。
「開発者はAIが説明責任の代替にはならないことを理解しなければなりません」とMarcus氏は説明する。「たとえAIが書いたとしても、各開発者は自分がコミットしたコードに責任を持つ必要があります。」
Marcus氏は続けて「つまり、AI生成コードもコードレビュー、SCA(静的コード解析)、SAST、手動テストといった安全なソフトウェア開発の原則と慣行の対象となります。そこにバグやインシデントにつながる欠陥があれば、開発者が対応を求められるので、理解し、責任を持つ必要があります」と述べる。
AIはワークフローを加速すべきだが、適切な精査を犠牲にしてはならないという点で他の専門家も同意している。
「AI生成コードに紐づくプルリクエストは、必ずそのコードやビジネスロジック、コンプライアンスの文脈を理解している経験豊富なエンジニアがレビューすべきです」とi-GENTIC AIのTimsah氏は語る。「組織はまた、AIが作成したコードも他のサードパーティ依存と同様に透明性と系譜を重視すべきです。」
Timsah氏はさらに「誰が書いたのか、どのモデルが生成したのか、どんなパラメータだったのかなど、完全なトレーサビリティが必要です。これにより後からの監査や問題修正が容易になります」と付け加える。
リスク軽減策
AIコーディングアシスタントは開発チームの力を倍増させる可能性があるが、それは企業が関連リスクを管理するガードレールを構築した場合に限られる。
「強力なガバナンス、自動監督、人間による説明責任があれば、組織はAIのスピードを活かしつつ脆弱性の増加を防げます」とi-GENTIC AIのTimsah氏は助言する。
他の専門家もAIコーディングアシスタントに関連するリスク軽減策を提案している:
- AIコードアシスタントにセキュリティツールを統合する(例:MCP(モデルコンテキストプロトコル)サーバーを活用)。
- プロジェクトに応じてAI生成変更の量を制限し、プルリクエストが管理可能な範囲に収まるようにする。
- CI/CDにおいて自動チェック(シークレットスキャナー、静的解析、クラウド設定管理)を厳格に有効化する。
AIコーディングアシスタントによる欠陥の軽減には異なる考え方が必要だとi-GENTIC AIのTimsah氏は述べる。
「企業はAI生成コードをポリシー、セキュリティ基準、規制要件に自動的に照らし合わせてスキャンするエージェンティックAIソリューションを導入し、AIでAIを監視すべきです」と彼は主張する。
企業はまた、シフトレフトセキュリティと継続的モニタリングを採用すべきだ。
「セキュリティチェックはパイプラインの最後に追加するものではありません」とTimsah氏は語る。「CI/CDプロセスに直接統合し、AI生成コードもオープンソースの貢献と同じ精査を受けるようにしなければなりません。」
PynestのRylko氏は「私たちはAIアシスタントを『ジュニア開発者』として扱い、そのコードは必ずシニアがチェックしています」と付け加える。
ニュースレターを購読する
編集部からあなたの受信箱へ
下記にメールアドレスを入力して開始してください。