ソフトウェア#
ソフトウェアには、サーバのパッケージや登録したCPEが含まれます。 FutureVulsで表示しているソフトウェアはすべてサーバに紐付いている情報となっています。 また、LockfileやJarなどのアプリケーション依存ライブラリのOSSライセンスを検知し、一覧に表示します。
ソフトウェア種別#
ソフトウェア(OS Package, CPE, Library Package, Github Package)#
検知したソフトウェアは脆弱性の有無に関わらず、すべてFutureVulsで確認できます。
また、 fast-root
スキャンモード(デフォルト)でスキャンした場合、ソフトウェアの最新バージョンの確認もできます。
スキャンモードについてはこちらをご覧ください。
CPE#
CPEはFutureVulsの画面で、手動で登録することにより管理できます。 FutureVulsでは基本的にCPEをFormatted String形式で表示しています(登録はURI形式でも可能です)。
CPEを登録する際には必ずサーバを選択する必要があります。 新しくCPE専用のサーバが欲しい場合は、擬似サーバを作成することでCPEを登録できます。
CPEについてはこちらをご覧ください。
ソフトウェア一覧#
ソフトウェア一覧は脆弱性、サーバ、ロールの第2ペインから表示できます。
脆弱性 > 脆弱なソフトウェア
- 指定した脆弱性に関連するソフトウェアのみ表示されます。
サーバ > ソフトウェア
- 指定したサーバに関連するソフトウェアのみ表示されます。
ロール > ソフトウェア
- 指定したロールに所属するサーバが関連するソフトウェアのみ表示されます。
一覧の項目の順番と、表示、非表示は画面で設定できます。 2022/5現在、OSSライセンスはアプリケーション依存ライブラリのみ検知されます。OSパッケージのOSSライセンスは検知されません。
項目 | 詳細 |
---|---|
パッチ提供 | 関連する脆弱なソフトウェアに、パッチが提供されているかどうか(脆弱性一覧 > 脆弱なソフトウェア のみ表示) |
ソフトウェア | ソフトウェアの名称、またはCPE |
CPE | CPEをFormatted String形式で表示 |
location | 該当ライブラリが含まれるLockfileなどのpath |
ソフトウェア種別 | ソフトウェアの種別 |
アップデート可能 | パッケージの最新バージョンがあるかどうか |
バージョン | ソフトウェア、CPEのバージョン |
最新バージョン | Vulsスキャナを用いて fast-root スキャンモードでスキャンするとすべてのLinuxでアップデート可能な最新バージョンが表示されるfast スキャンモードの場合は、一部のOS(AlmaLinux, Rockey Linuxなど)ではroot権限なしで最新バージョンを取得できるため表示されるCPEの場合や ペーストスキャン や offline スキャンモード 、trivy、スキャン対象がWindowsの場合は表示されない |
OSSライセンス | ソフトウェアのライセンス形式(ソフトウェア種別がlibraryの場合表示) |
サーバ名 | ソフトウェアが登録されているサーバ名 |
未対応タスク数 | ソフトウェアに関連するタスクの中で、「ステータスがNEW 」かつ「非表示設定でない」タスクの数 |
対応中タスク | ソフトウェアに関連するタスクの中で、「ステータスがINVESTIGATING またはONGOING またはDEFER 」かつ「非表示設定でない」タスクの数 |
対応済タスク | ソフトウェアに関連するタスクの中で、「ステータスがNEW またはINVESTIGATING またはONGOING またはDEFER でない」または「非表示設定である」タスクの数 |
全タスク数 | ソフトウェアに関連するすべてのタスクの数 |
ID | ソフトウェアのID |
プロセス再起動 | ソフトウェアのプロセスが再起動する必要があるかどうか |
リポジトリ | ソフトウェアを管理しているリポジトリ |
開放ポート | アクセス可能な状態にしている通信ポートlsof -i -P -n コマンドでポートの情報を取得している |
プロセス実行中 | 関連するプロセスがサーバ上で起動中、ポートを開いてListenしているかどうか スキャン対象がLinux系OSであり、Vulsスキャナを用いてスキャンした場合かつOSパッケージに関連するソフトウェアの場合に、対象のプロセス実行状態が取得できます。 ・ー:プロセスの実行状態が不明 ・再生のアイコン:プロセス実行中、かつListenしているポートがない ・電波のアイコン:プロセス実行中、かつListenしているポートがある |
CPEステータス | 登録されているCPEがNVD上で廃止された場合、Deprecated と表示される |
管理対象外 | ソフトウェアが管理対象外かどうか 管理対象外の場合は、新規タスクがすべて非表示設定で作成される |
脆弱なソフトウェアタグ | 脆弱なソフトウェアに設定されているタグ |
CPE自動更新 | CPEが自動更新されるかどうか |
マリシャスパッケージ | 攻撃者によって作成された悪意のあるコードを含むパッケージであるかどうか |
CPE割り当て日時 | CPEが割り当てられた日時 ※「Windows」かつ「実スキャナで登録されたサーバ」でなければ、CPE割り当てはできない |
EOL期限切れ | EOL期限を過ぎているかどうか ・✓:EOL期限を過ぎている ・✖:EOL期限を過ぎていない ・ー:EOL期限情報がない |
EOL(標準サポート期限) | EOLの日付を表示 日付情報がなく、EOL期限切れ情報のみ存在する場合がある |
初回検知日時 | ソフトウェアが検知された最初の日時 |
最新検知日時 | ソフトウェアが検知された最新の日時 |
関連するタスクを更新#
ソフトウェアを複数選択して、そのソフトウェアに関連するタスクの一括更新できます。 サーバ配下のソフトウェアと脆弱性配下のソフトウェアでは一括更新時のオプションが異なります。
タスクの一括更新の上限は1万件となっています。1万件を超える場合は複数回に分けて更新して下さい。
サーバ一覧・ロール一覧の第2ペインからソフトウェアを開いた場合#
指定したサーバの、指定したソフトウェアに関連するタスクのみを更新します。
脆弱性一覧の第2ペインからソフトウェアを開いた場合#
以下のオプションを選択可能です。
- 指定したソフトウェアのタスクのうち、選択した脆弱性に関係するタスクのみを更新する
- 指定したソフトウェアに関係するすべてのタスクを更新する
ソフトウェア詳細#
ソフトウェア詳細ではソフトウェアの詳細の確認、更新ができます。ソフトウェアの種類によって表示される項目が異なります。
ソフトウェア詳細では、以下の項目が表示されます。
項目 | 詳細 |
---|---|
再起動が必要なプロセス | 再起動が必要なプロセスのプロセスID、PATHなどを表示 |
影響を受けるプロセス | 影響を受けるプロセスを表示 |
ソフトウェアに関連する脆弱性・タスク | ソフトウェアに関連するCVE-IDとタスクを表示 |
ソフトウェア詳細 > OSSライセンス#
ソフトウェア詳細ではOSSライセンスの情報を確認できます。
ソフトウェア種別が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%でない場合はヘルプページへのリンクを表示します。
- 信頼性が100%とならない場合は下記の2通りです。
- 特定のバージョン単位での情報ソースが取得できず、最新バージョンのライセンスを取得した
- 情報ソースが定まった形式でなく、github.com/google/licenseclassifierで抽象的に解析した(Javaの場合このようなケースがあり得ます)
AGPL、GPLライセンス#
- ライセンス情報がAGPL、GPLに分類される場合はヘルプページへのリンクを表示します。
- ソースコードの公開が難しいサービス、アプリケーションを開発する際は、これらのライセンスを適用したライブラリを用いる場合注意が必要です。
- AGPL、GPLに分類されるライセンスは、ライブラリを利用する二次的著作物に関しても同じライセンスの適用を要求するコピーレフトと呼ばれる性質があります。
- また、下記の行動を許可することがライセンス条項に含まれています
- プログラムの動作を調べ、それを改変すること、そのためのソースコードへのアクセス
- 複製物の再頒布
- プログラムを改良し、改良を公衆にリリースする権利
- AGPLとGPLの主な違いは、コピーレフトおよび制約事項の適用条件です。
- AGPL系: ネットワークを介したソフトウェアサービスの提供でも、ライセンス条項の適用を要求する
- GPL系: ソフトウェアを頒布する場合は、ライセンス条項の適用を要求する。
- 各ライセンスの詳細、ライセンス条文はwww.gnu.orgで公開されています。
管理対象設定#
ソフトウェアには管理対象設定ができます。
「管理対象を設定」で、特定のソフトウェアを管理設定外として設定できます。
管理対象外に設定されているソフトウェアに新たな脆弱性が検知された場合、非表示済み(常に非表示
)のタスクとして作成されます。
既に作成済みのタスクには影響しません。非表示のタスクは、タスクの詳細画面からの解除が可能です。
脆弱性が見つかっても対応しない、かつアンインストールもできないソフトウェアがある場合、管理対象外に設定して、常に非表示にできます。
ソフトウェア詳細 > EOL#
ソフトウェア詳細ではEOL情報を確認できます。
ソフトウェア種別がlibraryの場合、EOLの情報を確認できます。
EOL情報は定期的にデータを更新しているため、サーバのスキャン実施からEOL情報が表示されるまでは最大で1時間程度の時間がかかります。
EOL検知に対応している依存ライブラリのスキャン方法
現在EOL検知に対応している依存ライブラリのスキャン方法は、以下の4つのみとなります。
- VulsスキャナによるLockfileを指定したスキャン
- Trivyでファイルシステム上のパスを指定したスキャン
- Lockfileのペーストスキャン
- コンテナイメージ内にインストールされた依存ライブラリをTrivyでスキャン
※以下のスキャン方法は対応していないのでご注意ください。
ライブラリEOLの情報ソース#
主要なソフトウェア・ライブラリのEOL情報を管理しているendoflife.dateが提供するAPIを情報源としています。
- ライブラリEOLの情報を収集しようとしたものの、取得できなかった場合は
-
と表示されます。
ソフトウェア詳細 > マリシャスパッケージ#
「マリシャスパッケージ」ではOSV(Open Source Vulnerability)が提供するマリシャスパッケージの情報をURL経由で確認できます。
ソフトウェア種別がlibraryの場合、マリシャスパッケージの情報を確認できます。
マリシャスパッケージかどうかは定期実行でチェックしているため、サーバのスキャン実施からマリシャスパッケージかどうか判定されるまでに最大で1時間程度の時間がかかります。
マリシャスパッケージの検知に対応している依存ライブラリのスキャン方法
現在、マリシャスパッケージの検知に対応している依存ライブラリのスキャン方法は、以下の4つのみとなります。
- VulsスキャナによるLockfileを指定したスキャン
- Trivyでファイルシステム上のパスを指定したスキャン
- Lockfileのペーストスキャン
- コンテナイメージ内にインストールされた依存ライブラリをTrivyでスキャン
※以下のスキャン方法は対応していないのでご注意ください。
マリシャスパッケージの情報ソース#
マリシャスパッケージ情報を管理しているOpenSSF(OpenSourceSecurity Foundation)の「ossf / malicious-packages」やOSVが提供する「API」を情報源としています。