ペンテストはベータ版で、アドオンとして提供しています。サイドバーにPentestsが表示されない場合は、Corgeaの管理者またはsales@corgea.comまでお問い合わせください。
ペンテストの仕組み
各実行は、同じ3つの段階で進みます。1
偵察
エージェントがターゲットの攻撃対象領域を洗い出します。エンドポイント、認証フロー、パラメータに加え、どこからもリンクされていない経路までを対象とします。
2
攻撃
担当領域ごとに特化したエージェントが、並行してターゲットを攻撃します。パターン照合ではなく実際の攻撃を試み、領域をまたいで弱点をつなぎ合わせ、より影響の大きい結果に到達させます。
3
レポート
確認された検出結果は、説明、ビジネスへの影響、攻撃の連鎖、攻撃スクリプト、修復のガイダンスとしてまとめられ、ダウンロードできるレポートに集約されます。
Deepの実行では、これらの領域を越えて調査し、複数の段階にわたる攻撃の連鎖を組み立てるレッドチームエージェントが追加されます。
Corgeaは、エージェントが稼働中のアプリケーションで実証できた検出結果だけを報告します。レポートに掲載された検出結果は、疑いの段階ではなく、実際に再現されたものです。
開始する前に
ターゲットのURLは、httpまたはhttpsでインターネットから到達できる必要があります。Corgeaは、次に該当するターゲットを受け付けません。
httpまたはhttps以外のスキームを使用しているhttps://user:pass@example.comのように、URLに認証情報を直接埋め込んでいるlocalhost、プライベートネットワークの範囲、クラウドのメタデータアドレスに解決される
ターゲット
ターゲットは再利用できる設定です。攻撃先、使用する認証情報、常時適用する指示をまとめて保持します。各実行はターゲットに対して行われるため、一度設定しておけば、リリースのたびに再実行できます。

ターゲットを作成する
1
Pentestsを開く
サイドバーからPentestsを選択し、New targetをクリックします。
2
ターゲット名とスキャンモードを設定する
判別しやすい名前、アプリケーションのルートURL、デフォルトのモード(BalancedまたはDeep)を指定します。モードは実行ごとに変更できます。

3
エージェントのログイン方法を選ぶ
匿名でのテストか、認証済みのテストかを選びます。認証済みのテストでは、パスワードのみ、認証アプリ(TOTP)、または利用環境で対応している場合はメールで届くログインコードを選択します。
アプリケーションが第2要素を求める場合は、認証アプリ(TOTP)またはメールで届くログインコードを選びます。メールで届くログインコードは、共有のペンテスト用メールボックスが設定されている環境でのみ表示されます。




4
テストユーザーを設定する
各アカウントのユーザー名またはメールアドレスとパスワードを追加します。複数のアカウントを使うと、ユーザー間のアクセスを検証できます。TOTPを使う場合はアカウントのTOTP URIを入力するか、QR画像を選択します。画像はブラウザー内で読み取られ、アップロードされません。

5
その他の認証情報と指示を追加する
Other credentialsにはAPIキー、必須ヘッダー、テナントIDなどを記載します。Additional instructionsには実施ルール、対象外の範囲、重点的に確認するエンドポイントを記載し、Create targetをクリックします。



認証情報は保存時に暗号化され、そのターゲットに対する実行中のみ復号されます。
メールで届くログインコード
この選択肢を利用できる環境では、Corgeaがテストユーザーごとにメールアドレスを用意します。小文字の英字、数字、ハイフンで短い役割名を入力し、Provisionをクリックします。そのアドレスをアプリケーションに招待し、Check for mailで招待メールを開いて登録を完了します。アプリケーションでパスワードを設定した場合は入力し、Save userをクリックします。ユーザーごとにこの手順を繰り返します。
編集とアーカイブ
ターゲットの操作メニューから、実行の開始、編集、アーカイブを行えます。 編集内容が反映されるのは今後の実行のみです。各実行は開始時点のターゲット設定を保持するため、過去の実行とその検出結果には、常に当時の設定が反映されます。URLの変更や認証情報の更新によって、過去の実行の報告内容が書き換わることはありません。 Edit targetを選ぶと、設定ウィザードが再び開きます。保存済みのアカウントを削除して匿名でテストするには、ログイン手順でNo, test it anonymouslyを選択します。 アーカイブすると、ターゲットは一覧から非表示になりますが、過去の実行はすべて引き続き確認できます。実行を開始する
ターゲットの操作メニューからStart new runを選択します。- Balanced
- Deep
認証と認可、ビジネスロジック、インジェクションを対象に、短時間で評価します。定期的に実施する通常のテストに適しています。
実行状況の確認
実行には、スキャンモードとアプリケーションの規模に応じて数時間かかります。ページを開いたままにする必要はありません。検出結果は確認され次第保存され、実行の完了時には管理者にメールを送信できます。 実行中は、実行ページが自動で更新されます。エージェントが実証した検出結果は順次表示されるため、実行の完了を待たずに重大な問題のトリアージを始められます。 エージェントの動作を確認するには、Logsをクリックします。
検出結果の確認
実行が完了すると、実行ページに検出内容の概要が表示されます。
- All findings:その実行で確認したすべての検出結果を、重大度別の件数とともに表示します
- Auth & AuthZ:アクセス制御の不備、認証、セッションに関する問題
- Business Logic:処理フローと取引の整合性に関する問題
- Injection:インジェクション、トラバーサル、信頼できない入力に関する問題
- Validated SAST:近日提供予定です。確認済みのSAST検出結果と、実行時の悪用可能性を突き合わせます
絞り込みとグループ化
検出結果の一覧の上部にあるツールバーでは、次の操作ができます。- ステータスの絞り込み:Open、Fixed、Closed、False Positiveを、それぞれ最新の件数とともに表示します。MoreからAccepted Risk、Duplicate、全ステータスを追加できます
- 検索:タイトル、CWE、エンドポイントを対象に検索します
- 重大度:Critical、High、Medium、Low、Infoで絞り込みます
- CWE / Endpointの切り替え:検出結果を弱点の種類別、または影響を受けるエンドポイント別にグループ化します
検出結果の詳細
検出結果を開くと、5つのタブに分かれた詳細な内容を確認できます。Finding Detailsタブ
説明、ビジネスへの影響、影響を受ける役割とユーザー、技術的な原因分析を確認できます。サイドバーには、CWEの識別子、重大度、CVSSスコア、ターゲット、エンドポイント、これまでの実行で再検出された回数が表示されます。
Attack Chainタブ
エージェントが実際にたどった手順が、番号付きで表示されます。各手順には送信したリクエストとアプリケーションの応答が記載されるため、開発者は推測せずに攻撃の経路を追えます。
Exploit Scriptタブ
検出結果を再現できる、実行可能なスクリプトです。ターゲットに対して実行すれば問題を自分で確認でき、修正後にもう一度実行すれば修正が有効かを確認できます。
Remediationタブ
その検出結果に対する具体的な修復手順と、関連する標準やガイダンスへの参照が表示されます。
Historyタブ
すべての実行にまたがる、その検出結果の時系列です。最初に検出された時期、再検出された時期、ステータスの変更やコメントの履歴を、実施した担当者とあわせて確認できます。 Corgeaは、実行をまたいで同一の問題を認識します。後のペンテストで同じ検出結果が再び現れた場合、新規として登録せず元の検出結果に紐付けるため、履歴は一連の流れとして残ります。検出結果のトリアージ
検出結果のCurrent Statusで、判断を記録します。設定できるステータスは次のとおりです。
ステータスの変更は、同じ問題のすべての検出に適用されます。一度トリアージすれば、開いていた行だけでなく履歴全体が更新されます。チームに共有する背景情報を、コメントとして残すこともできます。
Closedはステータスとして表示されますが、手動では設定できません。再検証の実行で検出結果を再現できなくなった時点で、Corgeaが自動的に適用します。
レポートをエクスポートする
実行が完了すると、Export reportから2種類のPDFを出力できます。Technical report
技術分析、概念実証、攻撃コード、各検出結果の修復ガイダンスを含む、完全な評価結果です。社内の開発チーム向けです。
Executive report
同じ評価結果と検出結果から、技術的な詳細、概念実証、修復の詳細を除いたものです。顧客、監査人、経営層向けです。
- 秘密保持に関する記載と目次
- 経営層向けの要約と、検出結果のダッシュボード
- 実施範囲と手法。実行したエージェントと各エージェントの対象範囲、対象外とした内容の明示を含みます
- 重大度の定義と、段階ごとの推奨対応
- すべての検出結果の一覧表
- 重大度別にまとめた検出結果の詳細
修正後の再検証
修正をリリースしたら、アプリケーション全体に対するペンテストを消費せずに再テストできます。完了した実行でNew runメニューを開き、Revalidate Findingsを選択します。 再検証の実行では、元の実行で得られた検出結果だけを再テストし、次の結果を報告します。- Still open:再び再現できた検出結果
- Closed by this run:再現できなくなった検出結果。自動的にClosedへ変更されます
1
検出結果を修正する
修復手順に沿って対応し、完了したものから検出結果をFixedにします。
2
再検証する
完了した実行でNew run、続いてRevalidate Findingsを選択します。
3
結果を確認する
再現できなくなった検出結果はClosedに変わります。まだ再現できるものは、新しい証跡とともに未解決のまま残ります。
通知
会社の管理者は、実行の完了時にAI Pentest Completedメールを受け取れます。メールには、ターゲット、スキャンモード、検出結果の合計件数、重大度別の内訳が含まれます。これは管理者ごとのメール設定のため、受け取りたくない管理者は、他の管理者に影響を与えずに無効にできます。 Corgeaは完了時にWebhookも送信します。結果をSlackに投稿する、チケットを作成する、リリースの手順を制御するといった用途に利用できます。設定方法とペイロードの詳細はWebhookを参照してください。 再検証の実行では、完了通知は送信されません。よくある質問
ペンテストにはどのくらい時間がかかりますか?
ペンテストにはどのくらい時間がかかりますか?
スキャンモードと、アプリケーションの規模や複雑さによりますが、数時間です。DeepはBalancedよりも時間がかかります。実行を見守る必要はありません。検出結果は確認され次第保存され、完了時には管理者にメールを送信できます。
認証の内側にあるアプリケーションもテストできますか?
認証の内側にあるアプリケーションもテストできますか?
テストできます。設定ウィザードで認証ありのテストを選び、テストユーザーを1人以上追加します。パスワード、認証アプリ(TOTP)、または利用できる場合はメールで届くログインコードを使えます。実行には未認証でのテストも含まれるため、外部の攻撃者とログイン済みユーザーの両方の視点で確認できます。
ペンテストでアプリケーションやデータが壊れることはありますか?
ペンテストでアプリケーションやデータが壊れることはありますか?
エージェントは実際に攻撃を行うため、データの作成、変更、削除が発生する可能性があります。サービス拒否攻撃や大量の負荷をかけるテストは明確に対象外ですが、日常的な実行にはステージング環境かテスト専用の環境をお使いください。
ターゲットのURLが受け付けられないのはなぜですか?
ターゲットのURLが受け付けられないのはなぜですか?
ターゲットは
httpまたはhttpsを使用し、URLに認証情報を埋め込まず、localhost、プライベートネットワークの範囲、クラウドのメタデータアドレスに解決されない必要があります。代わりに、到達できるテスト用のインスタンスを公開してください。スキャンモードがグレー表示になるのはなぜですか?
スキャンモードがグレー表示になるのはなぜですか?
そのモードの利用枠が残っていないためです。BalancedとDeepは別々に管理され、残数はページのヘッダーとスキャンモードの選択欄に表示されます。利用枠の追加はsales@corgea.comまでお問い合わせください。
実行が失敗しました。どうすればよいですか?
実行が失敗しました。どうすればよいですか?
実行のステータスに理由が表示されます。多い原因は、実行の途中でターゲットに到達できなくなった場合と、認証情報が使えなくなった場合です。ターゲットが稼働していることと、認証情報が最新であることを確認してから、新しい実行を開始してください。
検出結果が0件で完了しました。問題があるのでしょうか?
検出結果が0件で完了しました。問題があるのでしょうか?
必ずしも問題ではありません。対象範囲内で悪用できる問題を実証できなかった、ということです。検出結果を想定していた場合は、認証が必要な領域に到達できるよう認証情報が正しいかを確認し、対象範囲を広げるためにDeepでの実行を検討してください。
SASTとの違いは何ですか?
SASTとの違いは何ですか?
SASTはソースコードを解析し、デプロイ前に問題を検出します。ペンテストは稼働中のアプリケーションを攻撃し、実際のデプロイ構成で何が悪用できるかを実証します。検出できる内容が異なるため、Corgeaではそれぞれの検出結果を別々に管理します。
関連情報
BLAST
デプロイ前にソースコードの脆弱性を検出する、AIネイティブのSASTです。
Webhook
ペンテストの完了イベントを自社のシステムで受け取ります。
レポート
組織全体のセキュリティ状況の推移を追跡します。
ポリシー
問題の優先順位付けと対応方法を定義します。
