SonarQubeハンターエージェントベータ版:AIコードセキュリティ監査

10 読了時間

Satinder Khasriya photo

Satinder Khasriya

Product Marketing Manager, Code Security

AIコーディングアシスタントは、誰も完全には予期していなかった検証の問題を引き起こしました。開発者は今、2年前には1か月かかっていたコードを1つのスプリントでより多く統合しています。ボリュームは現実であり、生産性の向上も現実であり、それが開くセキュリティのギャップも同様に現実です。

問題はAIが悪いコードを書くことではありません。問題は、AIがアクセス制御ロジック、許可フロー、ビジネスワークフローを人間のレビュアーが追いつけないペースで書くことです。その層に存在する脆弱性—壊れたアクセス制御、ビジネスロジックの欠陥、認証とセッション管理の欠陥—は、従来の自動スキャンが捉えるのに苦労する種類の問題です。これらの欠陥はコードパターンには存在しません。それらはシステムがすべきことと実際に行うことの間のギャップに存在します。スキャナーはそのギャップを見ることができません。攻撃者は見ることができます。

これはAI開発時代の検証の課題です:より多くのコード、より多くのビジネスロジック、より多くのアクセス制御の決定、そしてそれらが正しいルールを強制しているかどうかを確認するスケーラブルな方法がないことです。

セキュリティチームは歴史的にこのギャップを埋めるために手動のホワイトボックスコード監査に依存してきました。これらの監査は、ソースへの完全なアクセスを持ってコードベースを通じて作業することを意味します:認可ロジックについて推論し、許可フローを追跡し、どこで強制が崩れるかを特定します。この種のレビューは自動スキャナーが見逃すものを表面化します。しかし、それはスケールしませんし、コードがすでに書かれレビューされた後に行われるため、手遅れです。

SonarQube Hunter Agentは、認可ロジックとビジネスルールの構造化されたホワイトボックス分析という同じ深さの推論を、開発者がコードを書く瞬間に持ち込みます。それがシフトです。そしてそのシフトは、発見に対して実際に何ができるかを変えます。

構造を超えて - ロジックの脆弱性が存在する場所

SonarのSASTエンジンは、その目的に非常に優れています。SQLインジェクションクロスサイトスクリプティング、パストラバーサル、その他数百の脆弱性クラスを精度と速度で捉え、コードの構造的欠陥を悪用される前に見つけます。これらの問題に対して、静的解析は迅速でスケーラブルであり、非常に正確です。

しかし、構造的解析の範囲外に存在する脆弱性のクラスがあります。それはツールの制限によるものではなく、問題自体の性質によるものです。

このエンドポイントは、認証されたユーザー全員がアクセスできるべきなのか、それともアカウント所有者だけなのか?アプリケーションは、/invoices/8472を要求するユーザーがその請求書を見る権利があるかどうかを確認するのか、それともただ返すだけなのか?これらは意図とビジネスロジックの問題であり、それに答えるにはSASTが提供するものの上に別の種類の分析が必要です。

SASTは構造的欠陥を捉えます。SonarQube Hunter Agentはロジックの欠陥を捉えます。これらを組み合わせることで、全体像をカバーします。

SonarQube Hunter Agentが実際に行うこと

SonarQube Hunter Agentは、Sonarの既存の分析インフラストラクチャの上に構築された新しいAI駆動のセキュリティエージェントで、ロジックレベルの脆弱性を対象としています。Hunter Agentは、Playbooksと呼ばれる構造化されたマルチステップ分析フローを通じて動作します。単一のPlaybookは、次の3つの脆弱性クラスをカバーします:

  • 壊れたアクセス制御: IDOR、欠落/不正確な認可チェック、特権昇格、機密データの露出、CSRFなどの問題
  • ビジネスロジックの脆弱性: 必要なワークフローステップのスキップ、繰り返し可能なアクションの悪用、レート制限の欠如
  • 認証とセッション管理の欠陥: 壊れた認証、セッション固定、期限切れしないセッション、弱いパスワード回復、MFAの欠如、ブルートフォースのギャップ

モデルに単一の質問をして答えを待つのではありません。意図的なシーケンスを実行します:エンドポイントを発見し、アクセス制御と認証ロジックをマッピングし、行動の意図について推論し、強制がその意図に一致するかどうかを確認し、最終的に発見を確認します。各発見には、エージェントがどのように結論に達したかを正確に見ることができる完全な発見パスが含まれています。ブラックボックスではなく、単一ショットの推論でもありません。

Hunter Agentは、生のLLM呼び出しではなくSonarのFoundation Agentハーネスの上に構築されているため、その結果は実行ごとに一貫しています。これは思った以上に重要です。AIスキャンツールが月曜日に47の発見を出し、水曜日に同じコードベースで14の発見を出すことは運用化できません。セキュリティプログラムは、トリアージ、エスカレーション、報告が可能な結果を必要としています。再現性は「あると良い」ものではなく、設計要件です。

なぜ今セキュリティエージェントが重要なのか

エージェント駆動の開発が計算を変えました。AIコーディングアシスタントは、エンドポイント、アクセス制御ロジック、許可フローをセキュリティチームが手動でレビューできないペースで生成しています。攻撃面は毎スプリントで拡大しています。自動的に捉えるのが最も難しい脆弱性クラスは、AI生成コードが間違えがちなものであり、それはAIの欠陥によるものではなく、ビジネスロジックの正確性がコードジェネレーターが完全に持っていないコンテキストを必要とするからです。

Hunter Agentは、セキュリティチームが常に人間の専門家に依存してきた構造化されたコード監査の推論を提供し、その推論をコードが書かれる瞬間に、開発者がすでに使用しているワークフロー内で適用します。

SonarQube Hunter Agentへのアクセス方法

SonarQube Hunter Agentのベータ版は、Enterpriseプランを持つSonarQube Cloudの顧客に利用可能です。発見は既存のSonarQubeワークフローに「hunter-agent」とタグ付けされて表示され、新しいツールを学ぶ必要はありません。待機リストや承認プロセスはありません。アクセスは今日から開始されます。SonarQube Cloudにログインすると、製品内で直接登録するオプションが表示されます。

ベータ版に参加する準備はできましたか?既存のSonarQube Cloud Enterpriseプランを使用してサインアップしてください。


コードの1行1行に信頼を組み込む

SonarQubeをワークフローに統合し、今すぐ脆弱性の発見を始めましょう。

Rating image

4.6 / 5