弊社の商品では多数のオープンソースパッケージを利用しております。
セキュリティの脅威が増加する現代において、オープンソースパッケージの脆弱性を迅速に確認し、対策を講じることは非常に重要です。
この記事では、オープンソースの脆弱性情報を提供する有益なWebサイトとその脆弱性を検出するためのツールについてのご紹介と、
弊社におけるオープンソースの脆弱性対策の取り組みについて記載します。
Webサイト
-
National Vulnerability Database(NVD)
National Vulnerability Database (NVD) は、米国立標準技術研究所 (NIST) によって運営されている脆弱性情報を集約したデータベースです。
NVDは、後述するCVE(Common Vulnerabilities and Exposures)に登録された脆弱性データをもとに、脆弱性の詳細情報や影響範囲の評価、対処方法などを提供しています。 ここで提供される情報は、セキュリティ専門家や開発者が迅速に脆弱性に関する情報を取得し、対策を実施するための重要な役割を果たしています。 -
CVE
CVE(Common Vulnerabilities and Exposures)は、コンピュータセキュリティにおける脆弱性を一意に識別するためのIDを提供しています。
脆弱性情報に一意のIDを付与することにより、情報の共有と識別を容易にし、異なるソフトウェアやサービス間での情報の一貫性を担保することができます。 CVEに登録される情報(CVEエントリー)には脆弱性の概要や影響範囲、対処方法などを含んでおり、脆弱性情報の標準化と一貫性を提供するものとしてセキュリティコミュニティ内で広く利用されています。 -
JVN
JVN(Japan Vulnerability Notes)は、日本の独立行政法人である情報処理推進機構(IPA)と、JPCERT/CCが運営する脆弱性情報に関するデータベースです。
JVNは、日本国内で使用されている様々なソフトウェアの脆弱性情報とその対処方法を日本語で提供しています。 これらは日本の企業や開発者にとって非常に重要な情報であり、国内外の脆弱性情報を収集し迅速に公開することにより、セキュリティ対策の強化を支援しています。
各Webサイトの特徴まとめ
| 名称 | 特徴 |
|---|---|
| National Vulnerability Database(NVD) | ・米国立標準技術研究所 (NIST) が運営する脆弱性データベース ・CVEのデータを基に詳細な脆弱性情報、影響評価、対処方法を提供 |
| CVE | ・脆弱性を一意に識別するIDを提供 ・脆弱性情報の共有と識別を容易にする ・異なるソフトウェアやサービス間での情報の一貫性を担保 |
| JVN | ・情報処理推進機構(IPA)と、JPCERT/CCが運営 ・日本国内で使用されるソフトウェアの脆弱性情報を提供 ・詳細な技術情報や対処方法を日本語で提供 |
ツール類
-
Snyk
Snykは、オープンソース等の脆弱性を自動的に検出・修正するためのセキュリティツールで、開発プロセスに統合しやすいのが特徴です。
GitHubやGitLabなどのリポジトリと統合し、継続的にセキュリティチェックを実施できます。 -
Trivy
Trivyは、コンテナイメージやファイルシステム、各種ソースリポジトリなどの脆弱性をスキャンするためのツールです。
シンプルなコマンドラインインターフェースを持ち、迅速に脆弱性を検出することが可能です。また、CI/CDパイプラインに統合することで継続的なセキュリティチェックを実施できるようになります。 -
DependencyCheck
DependencyCheckは、ソフトウェアプロジェクトの依存関係に含まれる脆弱性を検出するためのツールで、先述のCVEを利用して脆弱性情報を提供します。
OWASP(Open Web Application Security Project)によって開発されており、Maven、Gradle、npmなどのビルドツールと統合して使用できます。 ビルド対象モジュールと依存関係があるパッケージの脆弱性を自動的にスキャンし、レポートを生成することも可能です。
各ツール類の特徴まとめ
| 名称 | 特徴 |
|---|---|
| Snyk | ・オープンソース依存関係の脆弱性を自動的に検出 ・開発プロセスに統合しやすい ・GitHub、GitLabなどのリポジトリと統合し、継続的なセキュリティチェックを実現 |
| Trivy | ・コンテナイメージ、ファイルシステム、各種ソースリポジトリなどの脆弱性をスキャン ・シンプルなコマンドラインインターフェース ・CI/CDパイプラインに統合可能 |
| DependencyCheck | ・OWASPによる開発 ・Maven、Gradle、npmなどのビルドツールと統合可能 ・依存関係のあるパッケージの脆弱性を自動的にスキャンし、レポートを生成 |
Skyでの取り組み
弊社では、前項でご紹介した情報やツールなどを組み合わせ、オープンソースの定期的な脆弱性の検出・対処・評価を実施しております。
かつては、脆弱性情報を公開するWebサイトより手動で情報を取得してオープンソースパッケージを一つずつ確認する、といった非常に時間がかかる作業を行っておりましたが、現在では各種ツールやスクリプト類を駆使して定期的に脆弱性を検出し、対策を行える環境を整えております。
まとめ
オープンソースパッケージの脆弱性を確認するためには、信頼性の高い情報源と効果的なツールの利用が不可欠です。
Skyでは、今回ご紹介したサイトやツールの利用も含め、様々な対策を実施することにより、お客様にご提供する商品のセキュリティ向上に取り組んでいます。

