コンテンツにスキップ

REST API & Webアプリスキャン

AikidoはREST APIおよびWebアプリのエンドポイントをスキャンし、SQLインジェクションやパストラバーサルなどの重大なエンドポイントの脆弱性を発見できます。AikidoはAPIファジングを使用しており、これはAPIの各フィールドに危険なペイロードを大量に送信するというものです。

重大な脆弱性の検出:

  • SQLインジェクション
  • NoSQLインジェクション
  • パストラバーサル
  • シェルインジェクション

すべてのチェック項目はAikidoアプリ内で確認できます

Step 1: Domain OverviewAdd Domain をクリックし、スキャンタイプ選択画面で Advanced を展開して REST API を選択します。

Advancedセクションが展開され、REST APIとGraphQLのオプションが表示されたスキャンタイプ選択モーダル。

Step 2. ステージング環境のドメイン名を入力します。これがREST APIのベースURL(例: https://example.io/api)であることを確認してください。

アプリケーション設定用のAPIドメイン名入力フィールド。

Step 3: 以下のいずれかの方法でOpenAPI仕様を追加します。

  • Zen Appと接続する(推奨): Zenと連携し、APIエンドポイントを自動的に検出・更新して継続的にスキャンします。Zenの詳細はこちらをご覧ください。手動作業やメンテナンスは一切不要です!
  • Aikido AIで生成する(ベータ版): コードベースを基にAikidoがOpenAPI仕様を生成します。手動作業は不要です。定期的な再スキャンにより常に最新の状態が保たれます。
  • URLから取得: OpenAPI仕様の最新版があるURLを指定します。Aikidoは各スキャン前にその仕様を取得します。
  • 手動アップロード: OpenAPIファイルをアップロードしてAPIエンドポイントを定義します。新しいAPIエンドポイントが追加または変更されるたびに、仕様を手動で更新・アップロードする必要があります。

OpenAPI仕様を追加またはアップロードしてセキュリティリスクをスキャンする画面。ステージング専用。

Step 4: ログインが必要なエンドポイントにAikidoがアクセスできるよう、APIに認可情報を追加します。ドメインの3つの点のアクションメニューをクリックし、「Authenticate Domain」を選択することで設定できます。

Start scan、Edit、Authenticate、Delete domainのオプションがあるドメインのアクションメニュー。

これにより、認証情報を入力するモーダルが表示されます。サポートされている認証方式の一覧については、Authenticated API Scanning for REST/GraphQLをご覧ください。

API URL、メールアドレス、パスワードの入力フィールドがあるドメイン認証設定フォーム。

Aikidoからのトラフィックの識別

Section titled “Aikidoからのトラフィックの識別”

AikidoのRESTおよびGraphQLスキャンから送信されるすべてのリクエストには、以下の特徴があります。