セキュリティの脆弱性の追跡

このトピックでは、Fortify、SonarQube、またはその他の静的コード分析ツールを使用して、コードで発見されたセキュリティの脆弱性を追跡および分析する方法について説明します。これを設定した後、問題モジュールで脆弱性を追跡および管理できます。

概要

次の統合を使用して、コードのセキュリティの脆弱性を確認できます。

  • Fortify。Fortifyとのセキュリティテスト統合を設定した場合、パイプラインを実行するたびに、アプリケーションのコードのセキュリティ評価がトリガーされます。ALM Octaneは、Jenkinsでのパイプラインの実行が成功し、パイプラインの実行のセキュリティ評価が終了した場合に脆弱性を表示します。設定の詳細については、Fortifyとの統合をセットアップするを参照してください。

  • SonarQube。SonarQubeとのセキュリティテスト統合を設定した場合、ALM Octaneは検出された脆弱性を表示します。設定の詳細については、SonarQubeとの統合をセットアップするを参照してください。

  • その他の静的コード分析ツール。Fortify以外の静的コード分析ツールを使用している場合は、ALM OctaneのRESTAPIを使用して、ツールによって検出されたセキュリティの脆弱性の問題をALM Octaneに挿入できます。詳細については、ALM Octaneに脆弱性の問題を追加するを参照してください。

これにより、コードに持ち込まれたセキュリティ上の脆弱性をすばやく見つけて修正することができます。

ヒント: 脆弱性データが表示されない場合、あなたのロールはこの情報へのアクセスを許可されていない可能性があります。セキュリティ上の理由から、管理者はユーザーが脆弱性データを表示または編集できないようにブロックできます。詳細については、ロールと権限の割り当てを参照してください。

トップに戻る

前提条件

  1. 次のいずれかを実行すると、脆弱性を確認できます。Fortifyとの統合をセットアップするSonarQubeとの統合をセットアップする、またはALM Octaneに脆弱性の問題を追加する

  2. 脆弱性を取得するには、パイプラインタイプがセキュリティである必要があります。パイプラインのタイプは、パイプラインの [詳細] タブで確認できます。

トップに戻る

[問題] タブでのセキュリティ評価結果の表示

ALM Octaneに脆弱性を注入するように上記の統合のいずれかを設定した後、問題モジュールで脆弱性の詳細を確認できます。

脆弱性を選択して、右側のペインに次の詳細を表示することもできます。

  • プレビュー。この脆弱性で開かれた不具合と、脆弱性に関するコメントが含まれています。

  • レポート。脆弱性の解決に役立つ関連詳細を表示します。

  • 関連ユーザー。コミットが脆弱性を引き起こした可能性が高いユーザーと、関連するコミットメッセージ、ファイル、およびリンクされた項目。コミットが同じファイルにアクセスした場合、コミットは脆弱性にリンクされます。

トップに戻る

ALM Octaneの脆弱性の詳細は他にどこで確認できますか?

さらに、ALM Octaneの脆弱性の詳細は、次の領域で確認できます。

  • [パイプライン] > [パイプライン] ページで、最新のパイプラインの実行後に見つかった脆弱性の数を確認できます。数値をクリックすると、そのパイプライン実行の [脆弱性] タブが開きます。

  • 各パイプライン実行の [脆弱性] タブでは、そのパイプライン実行で検出された脆弱性の詳細を確認できます。

  • 脆弱性項目タイプに基づいてサマリーグラフを作成できます。これにより、脆弱性に基づいてリスクの高いリリースまたはコミットを追跡したり、所有者ごとに脆弱性をフィルタリングしたり、重大度ごとにグループ化したりすることができます。

    ヒント: 危険なフィーチャー (またはバックログ内の他の項目) を追跡するには、フィーチャーエンティティに基づいてカスタムグラフを作成します。フィルターで、オープン脆弱性ありフィールドを選択します。

  • バックロググリッドで、オープン脆弱性カラムを追加できます。これは、ステータスが「クローズ」または「問題なし」以外のワーク項目ごとの脆弱性の数を示し、重大な脆弱性に集中するのに役立ちます。ツールチップの値をクリックすると、重大度でフィルタリングされた脆弱性の詳細にアクセスできます。

  • ユーザーストーリー、不具合、または品質ストーリーの詳細ビューで、項目に関連する脆弱性の数を示すオープン脆弱性フィールドを追加できます。

  • チームバックログモジュールなどの コミット タブで、コミットに関連する脆弱性の数を示すオープン脆弱性フィールドを追加できます。コミットの詳細画面で脆弱性の数を確認することもできます。数値をクリックして、関連する脆弱性の詳細にドリルダウンします。

    ヒント: このフィールドを使用してクロスフィルターを作成し、特定の重大度の脆弱性をフィルターに掛けることができます。これにより、便利なウィジェットを作成できます。たとえば、重大度の高い脆弱性を持つすべてのコミットを表示するウィジェットを作成し、それらをフィーチャーごとにグループ化できます。

  • フィーチャーグリッドで、オープン脆弱性ありというカラムを追加できます。これは、フィーチャーに脆弱性のある子孫があるかどうかを示します。ツールチップをクリックして、すべての脆弱性、または特定の重大度の脆弱性の詳細を表示します。

トップに戻る

検出された脆弱性の管理

脆弱性には、迅速に対処する必要があります。脆弱性を確認した後、関連する不具合を作成してコードを修正するか、問題を破棄して閉じます。

脆弱性への対応

  • ビルドまたはCIの所有者:

    セキュリティ問題の調査または修正を担当するユーザーを割り当てます。

  • パイプライン実行のコミット実施者:

    [自分に関連する脆弱性] をクリックし、自分がコミットした変更が原因で発生した可能性のあるセキュリティ上の問題を確認します。このフィルターでは、自分のコミットに含まれているファイルで検出された脆弱性のみが表示されます。検出された問題を自分に割り当て、調査することができます。

  • 脆弱性を調査するユーザー:  

    脆弱性IDをクリックして脆弱性を開き、詳細を確認します。

    Fortifyを使用していて、Fortifyサーバーが使用可能な場合、ALM Octaneは、問題の修正に役立つセキュリティ評価からの追加情報を表示します。たとえば、問題の説明、推奨事項などが表示されます。

  • 脆弱性を調査したユーザー:

    対処が必要な問題が見つかった場合は、[不具合のレポート] ボタンをクリックし、選択した脆弱性から不具合を作成します。作成した不具合には、脆弱性の重要な詳細情報が自動的に追加されます。

  • 脆弱性に対処するユーザー:  

    各脆弱性のステータス (リモート)フィールドと分析 (リモート)フィールドには、静的コード分析ツールからALM Octaneが受信したステータスと分析データが表示されます。これらのフィールドは読み取り専用です。

    ステータス (ローカル)フィールドと分析 (ローカル)フィールドを更新して、ALM Octaneの脆弱性に関する作業を追跡できます。これらの値はステータス分析ツールと同期されませんが、ALM Octaneにのみ残ることに注意してください。

    注: [ステータス (ローカル) ] フィールドと [分析 (ローカル) ] フィールドは、[バックログ] タブと [フィーチャー] タブのオープン脆弱性フィールドには影響しません。オープン脆弱性は、リモートフィールドのみに基づいて計算されます。

トップに戻る

更新され、見逃された脆弱性

脆弱性が更新されるとどうなりますか?

FortifyまたはRest APIを使用して脆弱性をALM Octaneに注入している場合、ALM Octaneは脆弱性の更新を示します。

たとえば、Fortifyで脆弱性のステータスが変更された場合、ALM Octaneは更新されたステータスを表示します。SSCで分析を設定してパイプラインを再実行すると、この分析はALM Octaneに分析 (リモート) として表示されます。

パイプラインが脆弱性を見逃すとどうなりますか?

ALM Octaneは、パイプラインジョブを介して発見された脆弱性を示しています。これは、Jenkinsから直接サブジョブを実行し、脆弱性がSSCに追加された場合、ALM Octaneのメインパイプラインによって検出されないことを意味します。ただし、コードを更新してからパイプラインを実行すると、この欠落した脆弱性が検出され、ALM Octaneはそれを見逃された脆弱性としてラベル付けします。

これらの脆弱性は、中に潜在的な問題を見落とす彼らは作成時に検出されなかったため、ALM Octaneで詳細をコミット含まれていませんが、あなたがそれらを認識することになるので、それらはALM Octaneで表示されませんあなたのコード。

トップに戻る

参照情報: