コンテンツにスキップ

チケットの集約: 効率的な管理のための脆弱性のグループ化

このセクションでは、チケット集約設定を使用して、複数のスキャンやアセット間で脆弱性をグループ化する方法について説明します。

チケットの集約を使用すると、類似の脆弱性を単一のチケットにグループ化することでワークフローを合理化し、セキュリティ問題の追跡と解決を容易にすることができます。 これは、複数のアプリケーション、プラットフォーム、環境(本番環境やテスト環境など)を扱う場合に特に役立ちます。

チケット集約の利点:

  • 複数のスキャン、アプリケーションのバージョン、プラットフォームにわたって脆弱性のステータスを追跡できます。
  • 重複や新規項目を特定したり、問題を例外や誤検知(フォールスポジティブ)として再マークしたりする手作業が不要になります。
  • チケット管理システムとのシームレスな統合が可能です。

チケットをグループ化する主なモードには、次の2つがあります。

  • プラットフォームグループ:このオプションを使用すると、「Android File」と「Android Store」を単一の「Android」集約グループに結合するなど、プラットフォームのグループを定義できます。これは、特定のプラットフォームにデプロイされているすべてのアプリケーションに影響する脆弱性を管理するのに最適です。

  • アプリケーショングループ:このオプションを使用すると、「android:com.myapp.prod」や「android:com.myapp.test」などの特定のアプリケーション識別子(ID)に基づいてグループを定義できます。これは、同じアプリケーションの異なるバージョンや環境にまたがる脆弱性をグループ化するのに適しています。

AndroidとiOSの両方で利用できるモバイルアプリケーションがあるとします。 Android版の場合、Androidストア(「PlayStore」)からアプリケーションをスキャンし、開発中の内容を検証するために「Android File」(APKファイル)をスキャンする必要があります。 iOS版の場合、iOSストア(「AppStore」)からアプリケーションをスキャンし、開発中の内容を検証するために「iOS File」(IPAファイル)をスキャンする必要があります。

ここで、アプリケーション(AndroidとiOSの両方)に「Insecure Data Storage(安全でないデータ保存)」という同じ脆弱性がある場合を想定します。

オプション 1: 各プラットフォームのチケットを個別に集約したい場合。これは、Androidファイル、Androidストア、iOSファイル、およびiOSストアの4つのチケットが作成されることを意味します。

これを行うには、プラットフォームグループ化オプションを使用できます。4つのグループを定義する必要があります。 グループ1にはandroid、グループ2にはandroid_store、グループ3にはios、グループ4にはios_storeを含めます。

プラットフォームごとの集約チケットの設定方法を参照してください。 ファイルバージョンで問題を修正してスキャンすると、Ostorlabプラットフォームは問題が修正されたことを自動的に検出し、2つのチケットをFixed_verifiedとしてマークします。 その後、ファイルをストアにアップロードしてスキャンを実行すると、ストアのチケットも更新され、修正および検証済みとしてマークされます。

アプリケーション ID プラットフォーム 脆弱性 チケット ID
android:com.myapp Android Store (PlayStore) Insecure Data Storage Ticket #001
android:com.myapp Android File (APK) Insecure Data Storage Ticket #002
ios:com.myapp iOS Store (AppStore) Insecure Data Storage Ticket #003
ios:com.myapp iOS File (IPA) Insecure Data Storage Ticket #004

オプション 2: ファイルまたはストアのどちらのものであるかに関係なく、Androidのスキャンを一緒に集約したい場合。また、ファイル、ストア、またはTestFlightのいずれからのものであるかに関係なく、iOSのチケットも集約したい場合。

これには、プラットフォームのグループ化オプションを使用できます。2つのグループを定義する必要があります。 グループ1にはandroidおよびandroid_storeを含め、グループ2にはiosios_store、およびios_testflightを含めます。

異なるソースからアプリケーションをスキャンした場合、チケットは2つだけになります。Androidの1つのチケットは、ファイルとストアからの2つのスキャンを参照します。iOSのチケットについても同様です。

アプリケーション ID プラットフォーム 脆弱性 チケット ID
android:com.myapp Android Store (PlayStore) Insecure Data Storage Ticket #001
android:com.myapp Android File (APK) Insecure Data Storage Ticket #001
ios:com.myapp iOS Store (AppStore) Insecure Data Storage Ticket #002
ios:com.myapp iOS File (IPA) Insecure Data Storage Ticket #002

APKファイルの問題を修正してスキャンした時点では、ファイルをストアにアップロードしてスキャンするまでチケットは開いたままになります。

ただし、ファイルよりも新しいバージョンでストアを直接スキャンした場合、プラットフォームはファイルを修正してより新しいバージョンをアップロードしたと解釈します。以前にファイルのスキャンを実行していなかった場合でも、チケットはfixed_verifiedとマークされます。

オプション 3: プラットフォームと環境ごとにモバイルアプリケーションを集約したい場合。

アプリケーションIDがそれぞれcom.company.myapp.prodおよびcom.company.myapp.testであるAndroidアプリの本番バージョンとテストバージョンがあるとします。 本番バージョンとテストバージョンのどちらをスキャンしても、またファイルとストアのどちらからスキャンしても、「Insecure Data Storage」の脆弱性に対して1つのチケットを用意したいとします。

このためには、アプリケーションIDのグループ化を使用する必要があります。次の項目を使用して1つのグループを定義できます:android:com.company.myapp.prodandroid:com.company.myapp.test、およびandroid_store:com.company.myapp.prod。 正規表現を使用してさまざまな環境を定義することもできます:android:com.company.myapp.*およびandroid_store:com.company.myapp.*

アプリケーションIDによる集約チケットの設定方法を参照してください

この構成では、Androidファイルcom.company.myapp.prodcom.company.myapp.testing、またはAndroid Store com.company.myapp.prodの3つのスキャンに対して1つのチケットが作成されます。

アプリケーション ID プラットフォーム 脆弱性 チケット ID
android:com.myapp.prod Android Store (PlayStore) Insecure Data Storage Ticket #001
android:com.myapp.prod Android File (APK) Insecure Data Storage Ticket #001
android:com.myapp.test Android File (APK) Insecure Data Storage Ticket #001

チケットが修正および検証済みになるには、両方の環境で問題を修正する必要があります。

重要な考慮事項:

「プラットフォームグループ」と「アプリケーショングループ」のどちらを選択するかは、組織の特定の構造と、脆弱性をどのように管理したいかによって異なります。

ある構成から別の構成に変更することは可能ですが、構成を変更するたびに古いチケットは閉じられ、新しい構成に一致する新しいチケットが作成されます。