ソフトウェア

ソフトウェアについて

ソフトウェアには、サーバのパッケージや登録したCPEが含まれます。
FutureVulsで表示しているソフトウェアはすべてサーバに紐付いている情報となっています。 また、LockfileやJarなどのアプリケーション依存ライブラリのOSSライセンスを検知し、一覧に表示します。

ソフトウェア(OS Package, CPE, Library Package, Github Package)

検知したソフトウェアは脆弱性の有る無しに関わらず、すべてFutureVulsで確認できます。
また、 fast-root を使ってスキャンした場合、ソフトウェアのNew Versionの確認もできます。

CPE

CPEはFutureVulsの画面で、手動で登録することにより管理できます。
FutureVulsでは基本的にCPEをURI形式で表示しています(登録は2.3 format string形式でも可能です)。

CPEを登録する際には必ずサーバを選択する必要があります。
新しくCPE専用のサーバが欲しい場合は、擬似サーバを作成することでCPEを登録できます。

CPEについてはこちらをご覧ください。

ソフトウェア一覧

ソフトウェア一覧はサーバ、ロール、脆弱性の第2ペインから表示できます。

  • サーバ一覧 > ソフトウェア
    • 指定したサーバに関連するソフトウェアのみ表示されます。
  • ロール一覧 > ソフトウェア
    • 指定したロールに所属するサーバが関連するソフトウェアのみ表示されます。
  • 脆弱性一覧 > ソフトウェア
    • 指定した脆弱性に関連するソフトウェアのみ表示されます。

ソフトウェア一覧

項目 詳細
ソフトウェア名 ソフトウェアの名称、またはCPEを表示
バージョン ソフトウェア、CPEのバージョン
最新バージョン Vulsスキャナを用いて fast-root スキャンモードでスキャンするとすべてのLinuxでアップデート可能な最新バージョンが表示される。fast スキャンモードの場合は、一部のOS( CentOS、AlmaLinux, Rockey Linuxなど)ではroot権限なしで最新バージョンを取得できるため表示される。なお、CPEの場合や ペーストスキャンオフライン スキャンモード 、trivy、スキャン対象がWindowsの場合は表示されない
OSSライセンス アプリケーション依存ライブラリのOSSライセンス
サーバ名 ソフトウェアが登録されているサーバ名を表示
リポジトリ ソフトウェアを管理しているリポジトリを表示
パッチ提供済み 脆弱性に関連するソフトウェアのパッチが提供されているかどうかを表示(脆弱性一覧から開いた場合のみ表示される)。
✓:関連するすべてのソフトウェアにパッチが提供済み
△:関連するソフトウェアの内一部のみパッチ提供済み
✖:関連するすべてのソフトウェアにパッチ提供がない
❔:関連するソフトウェアにパッチの提供状況が不明なものがある
-:関連するすべてのソフトウェアにパッチが適用され脆弱性が解決済み
path 該当ライブラリが含まれるLockfileなどのpath
管理対象外 ソフトウェアが管理対象外かどうかを表示。管理対象外の場合は、新規タスクがすべて非表示設定で作成される。
プロセス再起動 ソフトウェアのプロセスが再起動する必要があるかどうかを表示
未対策タスク数 ソフトウェアに関連するタスクの中で、ステータスがNEWで、かつ非表示設定になっていないタスクの数を表示
全タスク数 ソフトウェアに関連するすべてのタスクの数を表示
OSSライセンス ソフトウェアのライセンス形式(ソフトウェア種別がlibraryの場合表示)
EOL期限切れ EOL期限を過ぎているかどうかを表示
EOL期限を過ぎている:✓、EOL期限を過ぎていない:✖、EOL期限情報がない:-
EOL(標準サポート期限) EOLの日付を表示。
日付情報がなく、EOL期限切れ情報のみ存在する場合がある。
マリシャスパッケージ マリシャスパッケージかどうかを表示
マリシャスパッケージである:ウイルスアイコン、不明:-
追加日時 ソフトウェアが最初に登録された日時を表示
更新日時 ソフトウェアが更新された日時を表示

ソフトウェアに関連するタスクを一括更新

ソフトウェアを複数選択して、そのソフトウェアに関連するタスクの一括更新を行うことができます。

サーバ配下のソフトウェアと脆弱性配下のソフトウェアでは一括更新時のオプションが異なります。

サーバ一覧・ロール一覧の第2ペインからソフトウェアを開いた場合

指定したサーバの、指定したソフトウェアに関連するタスクのみを更新します。

脆弱性一覧の第2ペインからソフトウェアを開いた場合

以下のオプションを選択可能です。

  • 指定したソフトウェアのタスクのうち、選択した脆弱性に関係するタスクのみを更新する
  • 指定したソフトウェアに関係するすべてのタスクを更新する

image.png

ソフトウェア詳細

ソフトウェア詳細ではソフトウェアの詳細の確認、更新ができます。ソフトウェアの種類によって表示される項目が異なります。

ソフトウェア詳細

ソフトウェア詳細では、以下の項目が表示されます。

項目 詳細
再起動が必要なプロセス 再起動が必要なプロセスのプロセスID、PATHなどを表示
影響を受けるプロセス 影響を受けるプロセスを表示
ソフトウェアに関連する脆弱性・タスク ソフトウェアに関連するCVE-IDとタスクを表示

ソフトウェア詳細 > OSSライセンス

ソフトウェア詳細ではOSSライセンスの情報を確認できます。

image.png

ソフトウェア種別がlibraryの場合、OSSライセンスの情報を収集します。

OSSライセンス情報は定期的にデータの更新を行います、サーバのスキャン後に、ライセンス情報が表示されるまでは最大で1時間程度の時間がかかります。

ライセンスの情報ソース、信頼性

OSSライセンスの情報は、ライブラリの配布元に応じたデータソースから収集します。

データソースは下記の通りです。

ライブラリ種別 データソース
Java https://repo1.maven.org
Ruby https://rubygems.org
Python https://pypi.org
Nodejs https://registry.npmjs.org
Go https://pkg.go.dev
Rust https://crates.io
  • ライセンス情報の収集を行ったものの、情報ソースが取得できなかった場合は unknown と表示されます。

  • 情報ソースの状態によってはライセンス情報の信頼性を担保できない場合があります、信頼性が100%でない場合はヘルプページへのリンクを表示します。

image.png

  • 信頼性が100%とならない場合は下記の2通りです。
    • 特定のバージョン単位での情報ソースが取得できず、最新バージョンのライセンスを取得した
    • 情報ソースが定まった形式でなく、github.com/google/licenseclassifierで抽象的に解析した(Javaの場合このようなケースがあり得ます)

AGPL、GPLライセンス

  • ライセンス情報がAGPL、GPLに分類される場合はヘルプページへのリンクを表示します。
  • ソースコードの公開が難しいサービス、アプリケーションの開発を行う際は、これらのライセンスを適用したライブラリを用いる場合注意が必要です。

image.png

  • AGPL、GPLに分類されるライセンスは、ライブラリを利用する二次的著作物に関しても同じライセンスの適用を要求するコピーレフトと呼ばれる性質があります。
  • また、下記の行動を許可することがライセンス条項に含まれています
    • プログラムの動作を調べ、それを改変すること、そのためのソースコードへのアクセス
    • 複製物の再頒布
    • プログラムを改良し、改良を公衆にリリースする権利
  • AGPLとGPLの主な違いは、コピーレフト及び制約事項の適用条件です。
    • AGPL系: ネットワークを介したソフトウェアサービスの提供でも、ライセンス条項の適用を要求する
    • GPL系: ソフトウェアを頒布する場合は、ライセンス条項の適用を要求する。
  • 各ライセンスの詳細、ライセンス条文はwww.gnu.orgで公開されています。

管理対象設定

ソフトウェアには管理対象設定ができます。

image.png

「管理対象を設定」で、特定のソフトウェアを管理設定外として設定できます。

管理対象外に設定されているソフトウェアに新たな脆弱性が検知された場合、非表示済み(常に非表示)のタスクとして作成されます。 既に作成済みのタスクには影響しません。非表示のタスクは、タスクの詳細画面からの解除が可能です。

脆弱性が見つかっても対応しない、かつアンインストールもできないソフトウェアがある場合、管理対象外に設定して、常に非表示にできます。

ソフトウェア詳細 > EOL

ソフトウェア詳細ではEOL情報を確認できます。

image.png

ソフトウェア種別がlibraryの場合、EOLの情報を確認できます。

EOL情報は定期的にデータの更新を行っているため、サーバのスキャン実施からEOL情報が表示されるまでは最大で1時間程度の時間がかかります。

ライブラリEOLの情報ソース

主要なソフトウェア・ライブラリのEOL情報を管理しているendoflife.dateが提供するAPIを情報源としています。

  • ライブラリEOLの情報収集を行ったものの、取得できなかった場合は-と表示されます。

ソフトウェア詳細 > マリシャスパッケージ

「マリシャスパッケージ」ではOSV(Open Source Vulnerability)が提供するマリシャスパッケージの情報をURL経由で確認することができます。

image.png

image.png

ソフトウェア種別がlibraryの場合、マリシャスパッケージの情報を確認できます。

マリシャスパッケージかどうかは定期実行でチェックしているため、サーバのスキャン実施からマリシャスパッケージかどうか判定されるまでに最大で1時間程度の時間がかかります。

マリシャスパッケージの情報ソース

マリシャスパッケージ情報を管理しているOpenSSF(OpenSourceSecurity Foundation) の「ossf / malicious-packages」やOSVが提供する「API」を情報源としています。