> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cloudthinker.io/llms.txt
> Use this file to discover all available pages before exploring further.

# セキュリティテストを実行する

> アプリの対象と範囲を設定し、ドメインを確認してテスト用アクセスを追加し、セキュリティテストを実行または予約します。

テスト実行は、実行中のアプリに対する DAST スキャンです。CloudThinker は指定した範囲内でテストし、確認したすべてのセキュリティ問題についてリクエストとレスポンスの証拠を保存します。テスト権限を持つ対象、範囲、アクセス、強度を指定します。

## 前提条件

* アプリをテストする権限と、ドメインの DNS レコードを追加する権限。
* ワークスペースで Cyber の作成と実行を行う権限。
* 必要に応じて、テスト用アカウントと[接続済み Git プロバイダー](https://docs.cloudthinker.io/ja/guide/connections/overview.md)。

## アプリを設定する

**1. 対象を選ぶ**

**Cyber** でアプリを作成します。**Target** で **App name** と **Application URL** を入力し、**OWASP Web** または **OWASP API** を 1 つ選びます。

**Continue** で保存します。所有権の確認が必要な場合は **Create DNS proof** を押し、表示された名前と値の TXT レコードを追加して **Check again** を押します。

**完了状態:** **Target ownership** が **Verified** になります。同じホストの確認済み証明は再利用できます。

![アプリ名、対象 URL、Web または API の範囲。](https://mintcdn.com/cloudthinker/YUtBQCA-74Ac7wGh/images/security/cyber/02-test-target.png?fit=max\&auto=format\&n=YUtBQCA-74Ac7wGh\&q=85\&s=5cb73b9c91f3172933e05ad5f8716148)

アプリ名、対象 URL、Web または API の範囲。

**2. アクセスを追加する**

**Access** で任意のテストユーザー、リポジトリ、API 文書を追加します。各ユーザーの役割、テナント、想定されるアクセスを説明します。

任意の入力は省略できます。入力が不足するチェックは制限ありとして残り、安全とは判定されません。

![テストユーザー、ソースコード、API 文書は任意です。](https://mintcdn.com/cloudthinker/YUtBQCA-74Ac7wGh/images/security/cyber/03-test-access.png?fit=max\&auto=format\&n=YUtBQCA-74Ac7wGh\&q=85\&s=e88123ad92a4a6c58421bf09b1845858)

テストユーザー、ソースコード、API 文書は任意です。

**3. 確認して開始する**

**Start** で対象、カバレッジ、アクセス、強度を確認します。**Start test** で実行するか、**Run later** で実行せず設定を完了します。

設定完了後は対象と OWASP フレームワークを変更できません。変更する場合は別のアプリを作成します。

## ドメインを確認する

表示された TXT レコードの名前と値を使います。DNS プロバイダーがゾーン名を自動追加する場合は、その接尾辞を入力しません。Cloudflare を使う場合は[公式の DNS 手順](https://developers.cloudflare.com/dns/manage-dns-records/how-to/create-dns-records/)を参照してください。

確認済みドメインは **Cyber → Settings** で管理できます。ドメイン確認によって保存済みのテスト範囲が広がることはありません。

![表示された TXT 名と値をコピーして DNS を確認します。](https://mintcdn.com/cloudthinker/_u5eRuTpYujlERGZ/images/security/cyber/05-domain-dns-proof.png?fit=max\&auto=format\&n=_u5eRuTpYujlERGZ\&q=85\&s=642a1f1048da35a51ff1bbec4a7b473f)

表示された TXT 名と値をコピーして DNS を確認します。

## ログイン方法を選ぶ

| 方法 | 入力するもの |
| - | - |
| **Password** | ユーザー名、パスワード、任意のログイン URL |
| **TOTP** | ユーザー名、パスワード、認証アプリのセットアップキー、任意のログイン URL または手順。オンデマンド実行のみ |
| **Session token** | ログイン済みリクエストを cURL としてコピー。**Verify and attach** で保存前に確認します |
| **Long-lived token** | API が必要とするリクエストヘッダー。アクセス確認なしで保存し、実行時にそのヘッダーを使用してアクセス拒否を報告します |
| **Agent creates new account** | 実行ごとに新しいアカウントを作成してログインする手順と、成功の判断基準 |

パスワードでのログインに CAPTCHA が必要な場合は、実行前に [CAPTCHA オプション](https://docs.cloudthinker.io/ja/guide/security/captcha.md)を設定します。

パスワードや長期トークンの保存だけでは認証済みアクセスを証明できません。保護されたページのカバレッジを判断する前に、実行中のログイン結果を確認します。期限切れや取り消されたトークンは、次の実行前に更新します。

自動作成するユーザーの手順では `<generated_username>` と `<generated_password>` を使います。役割、成功条件、必要な後片付けも指定します。メールや SMS の確認が必要な登録はこの方法では対応していません。

![専用テストユーザーと期待するアクセス権を記述します。](https://mintcdn.com/cloudthinker/_u5eRuTpYujlERGZ/images/security/cyber/13-test-user-credentials.png?fit=max\&auto=format\&n=_u5eRuTpYujlERGZ\&q=85\&s=43b85f6db43decd66878b1f2fd2b72e6)

専用テストユーザーと期待するアクセス権を記述します。

## 範囲と強度を設定する

アプリの **Settings** で許可するパス、除外するパス、テストユーザー、コード、文書、スケジュールを管理します。

| アクセス | コンテキスト |
| - | - |
| **Black-box** | 公開アクセス |
| **Gray-box** | ログイン済みアクセス |
| **White-box** | 実行中のアプリと添付したソース |

| 強度 | 許可される動作 |
| - | - |
| **Safe** | 読み取り専用リクエスト |
| **Aggressive** | テストデータの変更を含む能動的なテスト。破壊的操作は行いません |
| **Full** | 範囲内で削除を含む破壊的操作を試行できます |

> [!WARNING]
>
> 能動的なテストはデータを変更する場合があります。Aggressive と Full の前に範囲を確認してください。Full はデータを永久に削除する場合があります。

![デモ API の対象パスと除外パス。](https://mintcdn.com/cloudthinker/YUtBQCA-74Ac7wGh/images/security/cyber/06-test-scope.png?fit=max\&auto=format\&n=YUtBQCA-74Ac7wGh\&q=85\&s=68ebbe69da0796713606b70ac94636f2)

デモ API の対象パスと除外パス。

## 実行と監視

保存済みアプリで **Run test** を押します。**Run now** または **Schedule** を選び、表示されたタイムゾーンとアクセスを確認します。一時的なセッションでは即時実行と予約実行のアクセスが異なる場合があります。

ソースがある場合、**Full** はリポジトリ全体、**Incremental** は前回の成功以降の変更を優先します。初回は Full です。

**Timeline** で進行を確認します。**Stop run** は実行を取り消し、再開できません。保存済みの発見事項は残ります。失敗や取り消しは完全な評価ではありません。

![設定と強度を確認してから実行または予約します。](https://mintcdn.com/cloudthinker/YUtBQCA-74Ac7wGh/images/security/cyber/07-run-test.png?fit=max\&auto=format\&n=YUtBQCA-74Ac7wGh\&q=85\&s=3f946c93f57d3b261ed2aa51ed1877cf)

設定と強度を確認してから実行または予約します。

![実行履歴、タイムライン、発見事項、App surface。](https://mintcdn.com/cloudthinker/_u5eRuTpYujlERGZ/images/security/cyber/08-run-workbench.png?fit=max\&auto=format\&n=_u5eRuTpYujlERGZ\&q=85\&s=f6006424c4888f08190fe3e16f2e3de2)

実行履歴、タイムライン、発見事項、App surface。

## 発見事項を処理する

**Findings** は Table と Kanban を提供します。列は **Needs verification**、**Confirmed**、**In progress**、**Awaiting retest**、**Verified fixed**、**Dismissed** です。

再テストの指定は次回のスキャンに対する印で、実行を開始しません。手がかりの確認や修正済みの指定を手動で行えますが、再テストの証拠とは別です。却下には理由が必要です。スキャンで修正を確認した項目は、スキャンによってのみ再開できます。

**Create PR with agent** や課題トラッカーを使って修正を引き継ぎます。チケット作成や修正のマージで判定は変わりません。

## レポート

[Reports](https://docs.cloudthinker.io/ja/guide/security/cyber-reports.md) で選択した Confirmed 項目のレポートや実行文書を取得します。Findings には個別 PDF のダウンロードが残ります。

## 次のステップ

> **[Cyber レポートを作成する](https://docs.cloudthinker.io/ja/guide/security/cyber-reports.md)**
>
> 証拠と評価文書を共有します


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.