RSAC 2026で、Jeremy Katz氏(コードセキュリティ担当VPのSonar)と話をし、コードを安全にする方法は急速に変わらなければならないという点が明確になった。
開発がAI支援型やエージェント主導のワークフローへ移行するなか、CI/CDにおける従来のチェックポイントだけでは、リスクを早期に発見するのに不十分になっている。
Katz氏は、今日の大きなギャップの1つは、コードがCIに到達する前に何が起きているかだと指摘した。
開発者、そしてますます多くのAIエージェントが大量のコードを高速に生成しているが、事前に適切な検証を行わなければ、脆弱性がすり抜け、急速に積み重なる可能性がある。
同氏によれば、セキュリティはライフサイクルのさらに早い段階へ移行し、コードがコミットされた後ではなく、記述中にリアルタイムでチェックを実施する必要がある。
サプライチェーン攻撃で高まるリスク
この移行は、ソフトウェアサプライチェーン攻撃の観点から特に重要だ。Katz氏は、侵害されたnpmパッケージやその他のオープンソース依存関係が関与するインシデントが増えていることに言及した。攻撃者は、広く利用されているライブラリに悪意のあるコードを注入している。
こうした攻撃が特に危険なのは、従来の防御を迂回し、信頼された経路を通って環境に侵入することが多いためだ。
現代の開発ではオープンソースコンポーネントへの依存がますます高まっており、サプライチェーンの可視性と制御はコードセキュリティの重要な要素になっている。
これに対応するため、SonarはSonarQube Advanced Securityにおける悪意のあるパッケージの自動検出などの機能を導入した。これは、リスクのある依存関係や「ハルシネーション」で生成された依存関係がパイプラインに入る前に特定してブロックし、AI主導のワークフローのガードレールとして機能するよう設計されている。
AI生成コードが広げるリスク
この問題をさらに複雑にしているのが、AI生成コードの台頭だ。
Sonarの調査によると、コーディングモデルは、人間が現実的にレビューできるよりも速く、安全でないコードやバグのあるコードを生成する可能性がある。
会話の中でKatz氏は、AIによって開発を加速できる一方、適切に管理されなければリスクも増幅すると強調した。
ここでSonarのいうエージェント中心の開発サイクル(AC/DC)が重要になる。
エージェント中心の開発サイクル(AC/DC)の内部
AC/DCは、従来の継続的インテグレーションから、AI主導の開発向けに設計されたモデルへの移行を意味する。
小規模で頻繁なコミットに依存する代わりに、エージェントは1つのサイクルで大規模かつ複雑なコードブロックを生成することが多い。これによりリスクの特性は大きく変わる。
生成プロセスの初期に生じたエラーが積み重なり、後から問題を検出することが難しくなる可能性がある。
検証は不可欠に
これに対応するため、AC/DCでは「ガイド、生成、検証、解決」という構造化されたループを導入している。
私が特に印象に残ったのは、検証が重視されている点だ。この新しいモデルでは、検証は任意ではなく、基盤そのものである。
コードは生成中にも、本番環境へ統合される前にも、信頼性、保守性、セキュリティについて継続的にチェックしなければならない。
人間による監視がなお重要な理由
Katz氏は、自動化が進んでも人間の要素は依然として重要だと強調した。
AIはコードを生成し、さらにはレビューすることもできるが、特にビジネスロジック、アーキテクチャ上の意図、許容できるリスク水準を理解する場面では、人間の判断を完全に置き換えることはできない。
人間を介在させる仕組みは、出荷されるものが単に機能するだけでなく、安全で、組織の基準にも沿ったものになるようにするうえで、依然として不可欠だ。
リアルタイムのコードセキュリティを実践する
Sonarのアプローチは、自動化と監視のバランスを反映している。例えば同社のツールは、コードの記述中にリアルタイムでコードを分析し、脆弱性、露出したシークレット、安全でないパターンをスキャンするよう設計されている。
最近導入されたSonarQube CLIはこの機能を開発者のワークフローに直接拡張し、ローカル環境、CI/CDパイプライン、さらにはAIコーディング環境内でもセキュリティチェックを実行できるようにする。
このように継続的かつ統合された検証によって、開発スピードとセキュリティの間にあるギャップを埋めることができる。
ノイズを減らし、信頼を高める
もう1つの重要な論点は、セキュリティツールにおけるノイズを減らすことの重要性だった。
誤検知が最小限に抑えられていれば、開発者は検出結果を信頼し、対応する可能性が高くなる。
Sonarの報告によると、同社の誤検知率は比較的低い。これにより開発者の信頼感を維持し、アラート疲れの中で重大な問題が見過ごされないようにできる。
安全なソフトウェア開発に向けた新しいモデル
結局のところ、Katz氏との会話から私が得たのは、ソフトウェア開発が新たな時代に入ったということだ。そこでは、スピードだけがもはや最大の差別化要因ではない。
むしろ、コードをリアルタイムで生成、検証、保護する能力が、成功する組織を決定づける。
エージェント主導の開発への移行は単なる技術的な変化ではなく、ソフトウェアにおける信頼についての考え方を根本から変えるものだ。
Katz氏が明確に示したように、セキュリティを後付けにしたり、下流のプロセスに任せたりすることはできない。CIの前から始まり、ライフサイクル全体を通じて、あらゆる段階に組み込まれていなければならない。
セキュリティ責任者にとっても開発チームにとっても、メッセージは明快だ。コードが作成される時点で検証していないなら、すでに後れを取っている。





