ホワイトボックス診断(都度)
概要
Takumi ホワイトボックス診断機能は、GitHub リポジトリ連携またはファイルアップロードでソースコードを受け取り、Takumi が診断を行い、結果を Web 上でレポートとして出力する機能です。
これまでホワイトボックス診断は Slack チャットや Web チャット経由での対話形式でのみ利用可能でしたが、本機能では Web コンソールから直接実行できます。
Shisho Cloud byGMO の Web 画面から利用できます。ホワイトボックス診断(定期)とは異なり、Slack 連携は不要です。
チャット経由ホワイトボックス診断との違い
本機能と、Slack や Web チャット経由で利用できるホワイトボックス診断では、動作する Takumi エンジンが異なります。
| 項目 | チャット経由 | Web コンソール経由 |
|---|---|---|
| 網羅性 | 従来通り | より網羅的 |
| 診断時間 | 従来通り | 増加傾向 |
| クレジット消費 | 従来通り | 増加傾向 |
Web コンソール経由のホワイトボックス診断は、より網羅的な診断を行うため、チャット経由と比較して診断時間やクレジット消費量が増加する傾向があります。あらかじめご了承ください。
クレジット消費に関して
利用にはクレジットが必要です。クレジット消費量は、診断対象の特性やサイズに応じて変動します。
大規模なリポジトリ、または多数のリポジトリを診断対象とする場合、実行時間とクレジット消費量が増加するため、あらかじめご留意ください。
クレジット消費量が気になる場合は、「一部だけ診断」モードを活用し、可能な限り、探索対象のファイルスコープをご設定くださ い。
診断の開始方法
「診断」(Assessment)タブ内、画面右上の「新規診断」ボタンから、診断が開始できます。

基本設定
- 「診断名」には、この診断を識別するための一意の名前を入力します。
- 「レポート言語」には、診断レポートの言語を選択します(英語または日本語)。
- 「診断対象」は「ソースコード」を選択します。
診断タイプ
診断開始時は、2つのモードからいずれかをお選びいただけます。
- 「全体を診断」を選択すると、診断対象のコードベース全体をスキャンします。多くのクレジットを消費し、完了までに長い時間がかかる場合があります。
- 「一部だけ診断」を選択すると、最初に診断対象のコードベースから「機能」を列挙し、完了すると列挙された機能が表示されます。表示された機能から診断対象を選択して、診断を開始できます。 これにより、所要時間の短縮とクレジットの効率的な消費に役立ちます。
ソースコード設定
以下のいずれかの方法でソースコードを提供できます。
オプション1:GitHub リポジトリ
GitHub リポジトリを1つ以上指定できます。「リポジトリを追加」ボタンから診断対象のリポジトリを追加します。
対象リポジトリのブランチを指定することができます。指定しない場合は、リポジトリのデフォルトブランチが診断対象となります。
オプション2:ファイルアップロード
ソースコードのアーカイブファイルを直接アップロードできます。GitHub 連携が利用できない場合や、ローカルのコードベースを診断する場合に便利です。
- 対応フォーマット:
.zipまたは.tar.gz - 「ファイルをアップロード」ボタンからアーカイブを選択してアップロードします
- 展開後のルートディレクトリが表示されます。後述のファイルスコープの指定の際に使用されます。
大規模なリポジトリ、または多数のリポジトリを診断対象とする場合、実行時間とクレジット消費量が増加するため、あらかじめご留意ください。
クレジット消費量が気になる場合は、「一部だけ診断」モードを活用し、可能な限り、探索対象のファイルスコープをご設定ください。
ファイルスコープ
診断対象とするファイルパスと除外するファイルパスを指定できます。
スコープを空にすると、コードベース全体が診断対象となります。
各ファイルパスには glob パターン(例:src/auth/**、backend/services/**)を使用できます。
診断範囲
- 「対象」には、対象となるリポジトリまたはアップロードしたファイル(検出された展開時のルートディレクトリ)を選択します
- 「機能タイプ」(オプション)には、ヒントになるような機能のカテゴリを指定します(例:
authentication、payments、api) - 「ファイルパス」には、含めるファイルパスを指定します。glob パターンを使用できます
診断対象として指定された場合でも、Takumi の判断によりファイルパスが除外される場合があります。あらかじめご了承ください。
除外設定
指定されたファイルパスは診断対象から除外されます。
- 「対象」には、対象となるリポジトリまたはアップロードしたファイル(検出された展開時のルートディレクトリ)を選択します
- 「理由」(オプション)には、これらのパスを除外する理由を記録します(例:「テストコード」「自動生成ファイル」)
- 「ファイルパス」には、除外するファイルパスを指定します。glob パターンを使用できます
想定される診断時間
診断もしくは機能列挙にかかる時間は、コードベースのサイズに応じて変動します。 数十分で完了する場合もありますが、数時間から2日ほどを要する場合もあります。あらかじめご了承ください。
診断結果を確認する
診断レポートは、およそ以下の画面のように、Web 上で閲覧いただけます。

フォーマットは、およそセキュリティベンダに診断を依頼した際のアウトプットに近いものです。

診断結果の各項目では、どの機能を、どのような観点で診断した結果、どのような深刻度・リスクの脆弱性があったか、が説明されています。ホワイトボックス診断のため、脆弱性が検出されたファイルパス等も含まれています。
