AI Code Analysisとは
| セクション | 掲載内容 |
|---|---|
| AI Code Analysisを作成する | 前提条件と2ステップのセットアップウィザード。 |
| 進捗と検出結果を追跡する | ステータス用語、詳細タブ、検出結果の読み方。 |
| AI Code Analysisが検出するもの | 対応する脆弱性クラスと、ライブターゲットが必要となる項目。 |
AI Code Analysisとは?
Section titled “AI Code Analysisとは?”AI Code Analysisは、ソースコードに対して直接ペンテスト級のセキュリティ推論を実行します。ステージングURL、クロール、ペンテストのスコープ設定は不要です。リポジトリを接続し、クレジットでの価格を確認して分析を開始するだけです。
これはAikido Pentestの兄弟機能です。評価モデルと問題の扱い方は同じですが、対象がリポジトリのみである点が異なります。
リポジトリを接続する
Section titled “リポジトリを接続する”作成フローで分析対象とするリポジトリを選択します。AI Code Analysisに必要なのはソースコードのみです。ライブターゲットもドメインも認証設定も不要です。分析中にソースコードがどのように扱われるかについては、Aikidoはあなたのコードを保存しませんをご覧ください。
エージェントがコードを推論する
Section titled “エージェントがコードを推論する”複数のセキュリティエージェントが連携して接続されたコードベース全体を精査し、ファイル間でコンテキストを連結することで、従来の静的スキャナーでは見つけられないアーキテクチャ上・ロジック上の欠陥を明らかにします。
検出結果を確認する
Section titled “検出結果を確認する”検出結果は、評価画面のIssuesタブと、Aikidoが検出するその他すべての内容とともにグローバルなissueフィードに表示されます。各検出結果には、概要、根本原因、修正方法、コードに基づく**Evidence(証拠)**が含まれます。詳細な読み方については進捗と検出結果を追跡するをご覧ください。
価格とクレジット
Section titled “価格とクレジット”AI Code AnalysisはAikidoクレジットで支払います。
- 作成フローのPricingステップで、実行前に正確なクレジット合計が表示されます。
- コストは選択したコードベースの規模と複雑さによって決まります。選択範囲が大きく複雑になるほどコストが高くなります。
- クレジットはStart Auditをクリックした時点で消費されます。
AI Code Analysis と Aikido Pentest の違い
Section titled “AI Code Analysis と Aikido Pentest の違い”どちらの製品も同じエージェント型エンジンを使用していますが、異なる問いに答えます。AI Code Analysisはソースコードについて推論します。Aikido Pentestは稼働中のアプリケーションを実際に検証します。
AI Code Analysisを使うべき場合:
Section titled “AI Code Analysisを使うべき場合:”- ライブ環境の設定なしで、アクセス制御の破綻、権限昇格、複数段階の攻撃チェーンといったロジック上・アーキテクチャ上の欠陥について深いコード推論を求める場合。
- 安定したステージング環境やQA環境がない場合、または認証フローがライブテストに対応できていない場合。
- モバイルアプリ、スマートコントラクト、デスクトップアプリ、組み込みソフトウェア、ライブラリなど、ペンテストの対象となる明確なURLがなく、ライブテストのセットアップが難しいコードベースの場合。
- リポジトリを接続し、クレジットを確認して開始するだけの、最小限のセットアップで迅速な結果が欲しい場合。
- ライブ環境へデプロイする前に、ソースコードの変更内容を検証したい場合。
Aikido Pentestを使うべき場合:
Section titled “Aikido Pentestを使うべき場合:”- ライブターゲットがあり、実際のトラフィックで実際の悪用可能性を検証したい場合。
- 再現リクエスト、攻撃対象領域のマッピング、ライブエージェントの活動といった実行時の証拠が欲しい場合。
- スコープに、ソースコードだけでは見えないドメイン、認証済みユーザーロール、クロールにより発見されたエンドポイントが含まれる場合。
- 検証済みの検出結果に対してExploit Furtherを使い、稼働中のアプリに対する悪用をさらにエスカレートさせ、機密データに実際到達可能かどうかなど、実害を証明したい場合。
- SOC 2やISO 27001など、ライブのペネトレーションテストを要求するコンプライアンス要件を満たす必要がある場合。
AI Code Analysis vs SAST
Section titled “AI Code Analysis vs SAST”どちらもソースコードを対象としますが、働き方が異なります。SASTは、汚染されたパラメータ、危険なAPI呼び出し、チェック漏れといったパターンを検出します。AI Code Analysisはファイル間の意図と文脈を推論するため、攻撃者の視点が必要な問題を特定できます。両者は互いを置き換えるものではなく、補完し合う関係にあります。
AI Code Analysisを使うべき場合:
Section titled “AI Code Analysisを使うべき場合:”- パターンマッチングでは検出できない、アクセス制御の破綻、権限昇格、ビジネスロジックの回避、複数段階の攻撃チェーンといったロジック上・アーキテクチャ上の欠陥を捕捉したい場合。
- サービス、モジュール、ヘルパーを横断して参照を追うファイル横断の推論が必要な場合。
- 重要な変更、リリース、コードベースを分析していて、継続的なスキャンに加えて攻撃者視点のレビューを求める場合。
- 単なるパターンヒットではなく、特定の検出結果について、根本原因、悪用経路、修正方法といったより深いコンテキストが欲しい場合。
SASTを使うべき場合:
Section titled “SASTを使うべき場合:”- インジェクションのシンク、汚染フロー、ハードコードされたシークレット、危険なAPI、IaCの設定ミスといった、よくある脆弱性パターンについてすべてのコミットで高速なフィードバックを得たい場合。
- スキャンごとにクレジットを消費することなく、すべてのPRとブランチにわたる広範かつ継続的なカバレッジが必要な場合。
- CI/CDで、既知の悪いパターンに対してPR時のゲートを強制したい場合。
よくある質問
Section titled “よくある質問”なぜAI Code Analysisはライブ環境のURLを必要としないのですか?
Section titled “なぜAI Code Analysisはライブ環境のURLを必要としないのですか?”AI Code Analysisはソースコードを直接読み取り、推論します。クロールフェーズもトラフィックの再現もライブでの悪用実行もありません。そのため、対象とする環境自体が不要なのです。デプロイ済みのターゲットに対してライブテストを行いたい場合は、代わりにAikido Pentestをご利用ください。
AI Code Analysisの検出結果を再テストできますか?
Section titled “AI Code Analysisの検出結果を再テストできますか?”はい。修正をプッシュしたら、その検出結果でRe-testを使うことで、Aikidoに最新のコードに対して再チェックさせることができます。Pentest専用の操作はExploit Furtherのみで、これは悪用のエスカレーションに稼働中のアプリケーションを必要とします。