正式なドキュメントは英語版であり、この日本語訳はAI支援翻訳により作成された参考用のものです。日本語訳の一部の内容は人間によるレビューがまだ行われていないため、翻訳のタイミングにより英語版との間に差異が生じることがあります。最新かつ正確な情報については、英語版をご参照ください。
ドキュメントに関する現在のご利用体験についてお聞かせください。アンケートにご協力ください

脆弱性の詳細

  • プラン: Ultimate
  • 提供形態: GitLab.com、GitLab Self-Managed、GitLab Dedicated

再設計された脆弱性ページの可用性は、機能フラグによって制御されます。詳細については、履歴を参照してください。

プロジェクト内の各脆弱性には、脆弱性ページがあります。ページヘッダーには、脆弱性のタイトル、いつ、どのパイプラインで検出されたか、関連するマージリクエストとイシューの数(存在する場合)、および利用可能なアクションが表示されます。右側のサイドバーには、脆弱性のステータスと重大度が表示されます。脆弱性の残りのデータは、以下のセクションにグループ化されています:

  • リスク: 脆弱性の優先順位付けに役立つスコアとフラグです。
  • 修復: スキャナーによって報告されたソリューションです(利用可能な場合)。
  • 詳細: 脆弱性の説明、それを報告したスキャナー、およびコード、コンテナイメージ、または依存関係内での場所。
  • 補足情報: 識別子(CVEやCWEなど)、外部参照へのリンク、およびセキュリティトレーニング。
  • 証拠、論拠: リクエストと、スキャナーによって記録された応答(それらを報告するスキャナーの場合)。
  • 関連するマージリクエスト関連したイシュー: 脆弱性にリンクされたマージリクエストとイシュー。
  • アクティビティ: ステータス変更、コメント、および検出イベントのログ。

各セクションは折りたたみ可能です。セクションの内容を非表示または表示するには、セクションヘッダーで折りたたむ ( chevron-lg-up ) または展開 ( chevron-lg-down ) を選択します。

Common Vulnerabilities and Exposures (CVE)カタログ内の脆弱性については、リスクセクションにも以下が含まれます:

この追加データの詳細については、脆弱性リスク評価データを参照してください。

スキャナーが脆弱性を誤検出と判断した場合、リスクセクションの上にアラートが表示されます。GitLab Duoが脆弱性を誤検出の可能性があると識別した場合、リスクセクションには代わりに誤検出の信頼度スコアが表示されます。詳細については、誤検出判定を参照してください。

SASTによって検出された脆弱性については、GitLab Duoが自動的に分析し、コンテキスト認識型のコード修正を含むマージリクエストを生成できます。詳細については、エージェント型SAST脆弱性の修正を参照してください。

シークレット誤検出判定

  • プラン: Ultimate
  • アドオン: GitLab Duo Core、Pro、またはEnterprise
  • 提供形態: GitLab.com、GitLab Self-Managed、GitLab Dedicated
  • ステータス: ベータ版

GitLab Duoは、シークレット検出の検出結果を自動的に分析し、誤検出の可能性があるものを特定します。誤検出を却下すると、実際のセキュリティリスクではない可能性が高い検出結果にフラグが付けられるため、脆弱性レポート内のノイズを低減できます。

分析された各脆弱性について、GitLab Duoは次の情報を提供します:

  • 評価が正しい可能性を示す信頼度スコア。
  • 検出結果が正しい、または正しくない可能性がある理由の説明。
  • 脆弱性レポートで、脆弱性が誤検出の可能性があるものとして特定されたことを示す視覚的インジケーター。

詳細については、シークレット誤検出判定を参照してください。

脆弱性の修正

  • プラン: Ultimate
  • アドオン: GitLab Duo Enterprise、GitLab Duo with Amazon Q
  • 提供形態: GitLab.com、GitLab Self-Managed、GitLab Dedicated

GitLab Duo脆弱性の修正を使用すると、脆弱性を解決するマージリクエストを自動的に作成できます。デフォルトでは、Anthropic claude-3.5-sonnetモデルを基盤としています。

GitLabは、大規模言語モデルが正しい結果を生成することを保証できません。提案された変更をマージする前に、必ずレビューする必要があります。レビューする際は、以下を確認してください:

  • アプリケーションの既存の機能が維持されていること。
  • その脆弱性が、組織の標準に従って解決されていること。

概要を見る

前提条件:

  • GitLab UltimateプランのサブスクリプションとGitLab Duo Enterpriseが必要です。
  • プロジェクトのメンバーである必要があります。
  • 脆弱性は、サポートされているアナライザーからのSAST検出結果である必要があります:
  • 脆弱性は、サポートされているタイプである必要があります。

すべてのGitLab Duo機能を有効にする方法の詳細をご覧ください。

この脆弱性を解決するには:

  1. 上部のバーで、検索または移動先を選択して、プロジェクトを見つけます。
  2. 左側のサイドバーで、セキュリティ > 脆弱性レポートを選択します。
  3. オプション。デフォルトのフィルターを削除するには、クリア clear )を選択します。
  4. 脆弱性のリストの上にある、フィルターバーを選択します。
  5. 表示されるドロップダウンリストで、アクティビティを選択し、GitLab Duo(AI)カテゴリの脆弱性の修正は利用可能を選択します。
  6. フィルターフィールドの外側を選択します。脆弱性の重大度別の合計数と、一致する脆弱性のリストが更新されます。
  7. 修正するSAST脆弱性を選択します。
    • 脆弱性の修正の対象となる脆弱性の横には、青色のアイコンが表示されます。
  8. 右上隅で、AIを使用して解決するを選択します。そのボタンが表示されない場合は、AIアクションを選択してから、AIで解決を選択します。このプロジェクトが公開プロジェクトの場合、MRを作成すると、脆弱性と提案された解決策が公開されてしまうことに注意してください。MRを非公開で作成するには、非公開フォークを作成し、このプロセスを繰り返します。
  9. MRにコミットをもう1つ追加します。これにより、新しいパイプラインが強制的に実行されます。
  10. パイプラインが完了したら、パイプラインのセキュリティタブで、脆弱性が表示されなくなったことを確認します。
  11. 脆弱性レポートで、脆弱性を手動で更新します。

AIによる修正の提案を含むマージリクエストが開きます。提案された変更をレビューし、標準のワークフローに従ってマージリクエストを処理します。

イシュー476553で、この機能に関するフィードバックをお寄せください。

脆弱性の修正でサポートされている脆弱性

提案される解決策の品質を確保するため、脆弱性の修正は特定の脆弱性に限定して提供されています。脆弱性の修正を提供するかどうかは、当該脆弱性のCommon Weakness Enumeration(CWE)識別子に基づいてシステムが判断します。

現在対象としている脆弱性は、自動化システムおよびセキュリティ専門家による検証結果に基づいて選定しています。GitLabでは、より多くの種類の脆弱性に対応できるよう、カバレッジの拡大を進めています。

脆弱性の修正でサポートされているCWEの完全なリストを表示する
  • CWE-23: 相対パストラバーサル
  • CWE-73: ファイル名またはパスの外部制御
  • CWE-78: OSコマンドで使用される特殊要素の不適切な無害化(「OSコマンドインジェクション」)
  • CWE-80: Webページのスクリプト関連HTMLタグの不適切な無害化(基本XSS)
  • CWE-89: SQLコマンドで使用される特殊要素の不適切な無害化(「SQLインジェクション」)
  • CWE-116: 出力の不適切なエンコードまたはエスケープ
  • CWE-118: インデックス可能なリソースの不正なアクセス(「範囲エラー」)
  • CWE-119: メモリバッファの範囲内における操作の不適切な制限
  • CWE-120: 入力サイズのチェックなしのバッファコピー(「従来型バッファオーバーフロー」)
  • CWE-126: バッファオーバーリード
  • CWE-190: 整数のオーバーフローまたはラップアラウンド
  • CWE-200: 権限のないアクターへの機密情報の公開
  • CWE-208: 観測可能なタイミングのずれ
  • CWE-209: 機密情報を含むエラーメッセージの生成
  • CWE-272: 最小権限の原則の違反
  • CWE-287: 不適切な認証
  • CWE-295: 証明書の不適切な検証
  • CWE-297: ホストの不一致を伴う証明書の不適切な検証
  • CWE-305: 根本の脆弱性による認証回避
  • CWE-310: 暗号学的な問題
  • CWE-311: 機密情報の暗号化の欠落
  • CWE-323: 暗号化におけるノンスやキーペアの再利用
  • CWE-327: 破損した、または危険な暗号アルゴリズムの使用
  • CWE-328: 脆弱なハッシュの使用
  • CWE-330: 不十分にランダムな値の使用
  • CWE-338: 暗号学的に脆弱な擬似乱数ジェネレーター(PRNG)の使用
  • CWE-345: データ真正性の不十分な検証
  • CWE-346: オリジン検証エラー
  • CWE-352: クロスサイトリクエストフォージェリ
  • CWE-362: 不適切な同期を伴う共有リソースを使用した同時実行(「競合状態」)
  • CWE-369: ゼロ除算
  • CWE-377: 脆弱な一時ファイル
  • CWE-378: 脆弱な権限を持つ一時ファイルの作成
  • CWE-400: 制御されていないリソース消費
  • CWE-489: アクティブなデバッグコード
  • CWE-521: 脆弱なパスワード要件
  • CWE-539: 機密情報を含む永続的なCookieの使用
  • CWE-599: OpenSSL証明書の検証の欠落
  • CWE-611: XML外部エンティティ参照の不適切な制限
  • CWE-676: 潜在的に危険な関数の使用
  • CWE-704: 不正な型変換またはキャスト
  • CWE-754: 異常または例外的な条件の不適切なチェック
  • CWE-770: 制限またはスロットリングなしのリソースの割り当て
  • CWE-1004: 「HttpOnly」フラグのない機密Cookie
  • CWE-1275: 不適切なSameSite属性を持つ機密Cookie

トラブルシューティング

脆弱性の修正では、修正案を生成できない場合があります。一般的な原因は次のとおりです:

  • 誤検出と判定された:
    • 修正を提案する前に、AIモデルはその脆弱性が有効かどうかを評価します。その脆弱性が真の脆弱性ではない、または修正する価値がないと判定する場合があります。
    • これは、脆弱性がテストコード内で発生している場合に起こることがあります。テストコード内であっても脆弱性を修正する方針を採る組織もありますが、モデルによってはそれらを誤検出と判定する場合があります。
    • 脆弱性が誤検出である、または修正する必要がないという判断に同意する場合は、脆弱性を却下して、該当する理由を選択してください。
      • SAST設定をカスタマイズする、またはGitLab SASTルールに関する問題を報告するには、SASTルールを参照してください。
  • 一時的または予期しないエラー:
    • エラーメッセージには、an unexpected error has occurredthe upstream AI provider request timed outsomething went wrong、または同様の原因が記載されている場合があります。
    • これらのエラーは、AIプロバイダーまたはGitLab Duoの一時的な問題が原因である可能性があります。
    • 新しいリクエストが成功する可能性があるため、脆弱性の修正をもう一度試すことができます。
    • これらのエラーが引き続き表示される場合は、GitLabにお問い合わせください。

脆弱性の修正のためにサードパーティのAI APIと共有されるデータ

次のデータは、サードパーティのAI APIと共有されます:

  • 脆弱性の名前
  • 脆弱性の説明
  • 識別子(CWE、OWASP)
  • 脆弱なコード行を含むファイル全体
  • 脆弱なコード行(行番号)

脆弱性の修正がマージリクエストに含まれる場合

  • プラン: Ultimate
  • アドオン: GitLab Duo Enterprise
  • 提供形態: GitLab.com、GitLab Self-Managed、GitLab Dedicated

GitLab Duo脆弱性の修正を使用して、脆弱性の検出結果を解決するマージリクエストの提案コメントを自動的に作成します。デフォルトでは、Anthropic claude-3.5-sonnetモデルを基盤としています。

検出された脆弱性を解決するには:

  1. 上部のバーで、検索または移動先を選択して、プロジェクトを見つけます。
  2. 左側のサイドバーで、コード > マージリクエストを選択します。
  3. マージリクエストを選択します。
    • 脆弱性の修正で対応可能な脆弱性の検出結果は、タヌキAIアイコン( tanuki-ai )で示されます。
  4. 対応可能な検出結果を選択して、セキュリティ検出結果ダイアログを開きます。
  5. 右下隅で、AIを使用して解決するを選択します。

AIによる修正の提案を含むコメントがマージリクエストに作成されます。提案された変更をレビューし、標準のワークフローに従ってマージリクエストの提案を適用します。

イシュー476553で、この機能に関するフィードバックをお寄せください。

トラブルシューティング

マージリクエストでの脆弱性の修正では、修正案を生成できない場合があります。一般的な原因は次のとおりです:

  • 誤検出と判定された:
    • 修正を提案する前に、AIモデルはその脆弱性が有効かどうかを評価します。その脆弱性が真の脆弱性ではない、または修正する価値がないと判定する場合があります。
    • これは、脆弱性がテストコード内で発生している場合に起こることがあります。テストコード内であっても脆弱性を修正する方針を採る組織もありますが、モデルによってはそれらを誤検出と判定する場合があります。
    • 脆弱性が誤検出である、または修正する必要がないという判断に同意する場合は、脆弱性を却下して、該当する理由を選択してください。
      • SAST設定をカスタマイズする、またはGitLab SASTルールに関する問題を報告するには、SASTルールを参照してください。
  • 一時的または予期しないエラー:
    • エラーメッセージには、an unexpected error has occurredthe upstream AI provider request timed outsomething went wrong、または同様の原因が記載されている場合があります。
    • これらのエラーは、AIプロバイダーまたはGitLab Duoの一時的な問題が原因である可能性があります。
    • 新しいリクエストが成功する可能性があるため、脆弱性の修正をもう一度試すことができます。
    • これらのエラーが引き続き表示される場合は、GitLabにお問い合わせください。
  • Resolution target could not be found in the merge request, unable to create suggestionエラー:
    • このエラーは、ターゲットブランチで完全なセキュリティスキャンパイプラインが実行されていない場合に発生することがあります。マージリクエストドキュメントを参照してください。

脆弱性コードフロー

  • プラン: Ultimate
  • 提供形態: GitLab.com、GitLab Self-Managed、GitLab Dedicated

特定の種類の脆弱性について、GitLab高度なSASTはコードフロー情報を提供します。脆弱性のコードフローとは、ユーザー入力(ソース)から脆弱なコード行(シンク)まで、すべての代入、操作、サニタイズを経てデータがたどるパスです。

脆弱性のコードフローを表示する方法の詳細については、脆弱性コードフローを参照してください。

検索語を提供するリクエストパラメータから、それを実行するデータベースクエリへのSQLインジェクションのデータフロー

脆弱性のステータス値

脆弱性のステータスは次のとおりです:

  • トリアージが必要: 新しく検出された脆弱性のデフォルトのステータスです。
  • 確認済み: ユーザーがこの脆弱性を確認し、正確であると判断しました。
  • 却下済み: ユーザーがこの脆弱性を評価し、却下した状態です。却下済みの脆弱性は、後続のスキャンで検出されても無視されます。
  • 解決済み: 脆弱性が修正されたか、存在しなくなった状態です。解決済みの脆弱性が再び混入して検出された場合、そのレコードが復元され、ステータスはトリアージが必要に設定されます。

通常、脆弱性は次のライフサイクルをたどります:

%%{init: { "fontFamily": "GitLab Sans" }}%%
stateDiagram
    accTitle: Vulnerability lifecycle
    accDescr: Typical lifecycle of a vulnerability

    direction LR
    Needs_triage: Needs triage

    [*] --> Needs_triage
    Needs_triage --> Confirmed
    Needs_triage --> Dismissed
    Dismissed --> [*]
    Confirmed --> Resolved
    Resolved --> Needs_triage: If reintroduced and detected again
    Resolved --> [*]

脆弱性が検出されなくなった場合

脆弱性は、その修正を目的として加えられた変更、または別の変更による副次的な影響によって、検出されなくなる場合があります。セキュリティスキャンの実行時にデフォルトブランチで脆弱性が検出されなくなると、スキャナーによってレコードのアクティビティログに検出されませんでしたと追加されますが、レコードのステータスは変更されません。代わりに、脆弱性が解決済みであることを確認し、その場合は、手動でそのステータスを解決済みに変更する必要があります。また、脆弱性管理ポリシーを使用して、特定の条件に一致する脆弱性のステータスを自動的に解決済みに変更することもできます。

脆弱性を解決したコミットへのリンクは、脆弱性ページのアクティビティセクションにあります。

脆弱性の却下理由

脆弱性を却下する際は、次のいずれかの理由を選択する必要があります:

  • 許容可能なリスク: 脆弱性は既知であり、修正も軽減もされていませんが、許容できるビジネスリスクと見なされます。
  • 誤検出: システムに脆弱性が存在しないにもかかわらず、テスト結果によって脆弱性が存在すると誤って示されるレポート上のエラーです。
  • 影響の軽減制御: 組織が採用する管理上、運用上、または技術上のコントロール(つまり、保護策または対策)によって、脆弱性のリスクが軽減されています。このコントロールは、情報システムに対して同等または同程度の保護を提供します。
  • テストでの使用: 検出結果はテストの一部またはテストデータであるため、脆弱性ではありません。
  • 該当するものがありません: 脆弱性は既知であり、修正も軽減もされていませんが、更新されないアプリケーションの一部に含まれていると見なされています。

脆弱性のステータスを変更する

前提条件:

  • プロジェクトに対してセキュリティマネージャー、メンテナー、またはオーナーロール、あるいはadmin_vulnerability権限を持つカスタムロールが必要です。

脆弱性ページから脆弱性のステータスを変更するには:

  1. 上部のバーで、検索または移動先を選択して、プロジェクトを見つけます。
  2. 左側のサイドバーで、セキュリティ > 脆弱性レポートを選択します。
  3. 脆弱性の説明を選択します。
  4. 右側のサイドバーのステータスセクションで、編集を選択します。
  5. ステータスドロップダウンリストからステータスを選択します。脆弱性のステータスを却下済みに変更する場合は、却下理由も選択します。
  6. コメントテキストボックスに、却下理由の詳細を入力します。却下済みステータスを適用する場合、コメントは必須です。
  7. ステータスの変更を選択します。

ステータス変更の詳細(誰がいつ変更したかを含む)は、脆弱性ページのアクティビティセクションに記録されます。

脆弱性のGitLabイシューを作成する

GitLabイシューを作成して、脆弱性の解決または軽減のために講じられたアクションを追跡できます。脆弱性のGitLabイシューを作成するには:

  1. 上部のバーで、検索または移動先を選択して、プロジェクトを見つけます。
  2. 左側のサイドバーで、セキュリティ > 脆弱性レポートを選択します。
  3. 脆弱性の説明を選択します。
  4. イシューを作成を選択します。

脆弱性レポートの情報をもとに、GitLabプロジェクトにイシューが作成されます。

Jiraイシューを作成するには、脆弱性のJiraイシューを作成するを参照してください。

脆弱性をGitLabイシューおよびJiraイシューにリンクする

脆弱性を、既存の1つ以上のGitLabイシューまたはJiraイシューにリンクできます。ただし、使用できるリンク機能はいずれか一方のみです。リンクを追加すると、脆弱性を解決または軽減するイシューを追跡するのに役立ちます。

前提条件:

脆弱性を既存のGitLabイシューにリンクするには:

  1. 上部のバーで、検索または移動先を選択して、プロジェクトを見つけます。
  2. 左側のサイドバーで、セキュリティ > 脆弱性レポートを選択します。
  3. 脆弱性の説明を選択します。
  4. 関連したイシューセクションで、既存のイシューを追加を選択します。
  5. リンクする各イシューについて、次のいずれかを実行します:
    • イシューへのリンクを貼り付けます。
    • イシューのID(ハッシュ記号#で始まる)を入力します。
  6. 追加を選択します。

選択されたGitLabイシューは関連したイシューセクションに追加され、リンクされたイシューのカウンターが更新されます。

脆弱性にリンクされたGitLabイシューは、脆弱性レポートと脆弱性ページに表示されます。

脆弱性とリンクされたGitLabイシューの関係には、次の条件があります:

  • 脆弱性ページには関連するイシューが表示されますが、イシューページには関連する脆弱性は表示されません。
  • 1つのイシューは1つの脆弱性にのみ関連付けることができます。
  • イシューは、所属するグループやプロジェクトにかかわらずリンクできます。

前提条件:

  • Jiraイシューのインテグレーションが設定され、脆弱性のJiraイシューを作成するチェックボックスがオンになっていることを確認してください。

脆弱性を既存のJiraイシューにリンクするには、Jiraイシューの説明に次の行を追加します:

/-/security/vulnerabilities/<id>

<id>は任意の脆弱性IDです。1つの説明に、IDが異なる複数の行を追加できます。

適切な説明を持つJiraイシューは関連するJiraイシューセクションに追加され、リンクされたイシューのカウンターが更新されます。

脆弱性にリンクされたJiraイシューは、脆弱性ページにのみ表示されます。

脆弱性とリンクされたJiraイシューの関係には、次の条件があります:

  • 脆弱性ページとイシューページに、関連する脆弱性が表示されます。
  • 1つのイシューを1つ以上の脆弱性に関連付けることができます。

脆弱性を解決する

一部の脆弱性については、解決策はすでに知られていますが、手動で実装する必要があります。脆弱性ページの修復セクションには、セキュリティスキャンツールが報告したセキュリティ検出結果によって提供されたソリューション、または脆弱性の手動作成中に入力されたソリューションが表示されます。GitLabツールは、GitLab Advisory Databaseの情報を使用します。

さらに、一部のツールでは、提案された解決策を適用するためのソフトウェアパッチが含まれる場合があります。そのような場合、脆弱性ページのその他のアクションドロップダウンリストには、スキャナーの提案で解決するアクションが含まれています。

この機能は次のスキャナーをサポートしています:

脆弱性を解決するには、次のいずれかの方法があります:

マージリクエストで脆弱性を解決する

マージリクエストで脆弱性を解決するには:

  1. 上部のバーで、検索または移動先を選択して、プロジェクトを見つけます。
  2. 左側のサイドバーで、セキュリティ > 脆弱性レポートを選択します。
  3. 脆弱性の説明を選択します。
  4. 右上隅にあるその他のアクションを選択し、次にスキャナーの提案で解決するを選択します。

脆弱性の解決に必要なパッチを適用するマージリクエストが作成されます。標準のワークフローに従ってマージリクエストを処理します。

手動で脆弱性を解決する

脆弱性に対してGitLabが生成したパッチを手動で適用するには:

  1. 上部のバーで、検索または移動先を選択して、プロジェクトを見つけます。
  2. 左側のサイドバーで、セキュリティ > 脆弱性レポートを選択します。
  3. 脆弱性の説明を選択します。
  4. 右上隅にあるその他のアクションを選択し、次にパッチのダウンロードを選択します。
  5. ローカルプロジェクトで、パッチの生成に使用されたものと同じコミットがチェックアウトされていることを確認します。
  6. git apply remediation.patchを実行します。
  7. 変更を確認し、ブランチにコミットします。
  8. 変更をmainブランチに適用するためのマージリクエストを作成します。
  9. 標準のワークフローに従ってマージリクエストを処理します。

脆弱性に関するセキュリティトレーニングを有効にする

オフライン環境、つまりセキュリティ対策としてパブリックインターネットから切り離しているコンピューターでは、セキュリティトレーニングにアクセスできません。具体的には、GitLabサーバーが、有効にする各トレーニングプロバイダーのAPIエンドポイントにクエリを送信できる必要があります。一部のサードパーティトレーニングベンダーでは、無料アカウントの登録が必要になる場合があります。Secure Code WarriorKontra、またはSecureFlagのいずれかにアクセスして、アカウントを登録してください。GitLabは、これらのサードパーティベンダーにユーザー情報を送信しません。ただし、CWEまたはOWASPの識別子と、ファイル拡張子から判別される言語名を送信します。

セキュリティトレーニングは、デベロッパーが脆弱性を修正する方法を学ぶのに役立ちます。デベロッパーは、検出された脆弱性に関連する、選択した教育プロバイダーのセキュリティトレーニングを表示できます。

プロジェクトで脆弱性に関するセキュリティトレーニングを有効にするには:

  1. 上部のバーで、検索または移動先を選択して、プロジェクトを見つけます。
  2. 左側のサイドバーで、セキュリティ > セキュリティ設定を選択します。
  3. タブバーで、脆弱性管理を選択します。
  4. セキュリティトレーニングプロバイダーを有効にするには、切替をオンにします。

各インテグレーションは、脆弱性識別子(たとえば、CWEやOWASP)と言語をセキュリティトレーニングベンダーに送信します。GitLabの脆弱性に表示されるのは、ベンダートレーニングへのリンクです。

脆弱性に関するセキュリティトレーニングを表示する

セキュリティトレーニングが有効になっている場合、脆弱性ページに、検出された脆弱性に関連するトレーニングへのリンクが表示されることがあります。トレーニングを利用できるかどうかは、有効になっているトレーニングベンダーに、その脆弱性に該当するコンテンツがあるかどうかによって異なります。トレーニングコンテンツは、脆弱性識別子に基づいてリクエストされます。与えられた識別子は、脆弱性ごとに異なり、利用可能なトレーニングコンテンツもベンダーによって異なります。一部の脆弱性では、トレーニングコンテンツが表示されません。CWE識別子がある脆弱性は、該当するトレーニングコンテンツが表示される可能性が最も高くなります。

脆弱性に関するセキュリティトレーニングを表示するには:

  1. 上部のバーで、検索または移動先を選択して、プロジェクトを見つけます。
  2. 左側のサイドバーで、セキュリティ > 脆弱性レポートを選択します。
  3. セキュリティトレーニングを表示する脆弱性を選択します。
  4. 補足情報セクションで、トレーニングの下にあるトレーニングを表示を選択します。

推移的依存関係にある脆弱性の場所を表示する

この機能の利用可否は、機能フラグによって制御されます。詳細については、履歴を参照してください。

依存関係内で見つかった脆弱性を管理する場合、脆弱性ページの詳細セクションに以下が表示されます:

  • 脆弱性が検出された直接の依存関係の場所。
  • 利用可能な場合、脆弱性が存在する具体的な行番号。

脆弱性が1つ以上の推移的依存関係に存在する場合、直接の依存関係だけを把握しても十分ではないことがあります。推移的依存関係とは、直接の依存関係を祖先として持つ間接依存関係です。

推移的依存関係が存在する場合、脆弱性を含む推移的依存関係を含め、すべての依存関係へのパスを表示できます。

  • 脆弱性ページの詳細セクションで、依存関係パスを表示を選択します。依存関係パスを表示が表示されない場合、推移的依存関係はありません。