オープンソース管理ツールの比較

以下は、利用可能なさまざまなソリューションとテクノロジーの比較を示しています。
関連するセクションに移動するには、以下のリンクをクリックしてください。

インベントリ作成

Move Up

オープンソースのセキュリティ脆弱性とライセンスコンプライアンスの問題を監視するための第一歩はソフトウェアに含まれるオープンソースコンポーネントを検出することです。
したがって、すべての依存性を含め、ソフトウェア内のオープンソースコンポーネントの正確なレポートを取得することが不可欠です。

WhiteSource

数分でビルドと統合し、顕在化したものではなく、実際の使用状況に基づいて推移的な依存性を含むすべてのオープンソースコンポーネントを検出します。
バイナリとソースコードの両方を検出し、20以上のバイナリとソース言語をカバーします。
3M以上のオープンソースコンポーネントと7,000,000以上のオープンソースファイルのデータベースを継続的に更新します。
オンプレミス、ホステッド(クラウド)またはSAAS(サービス)で提供されます。

コードスキャナ

コードをスキャンして、データベースに含まれるオープンソーススニペットに一致するコードスニペットを検出します。
大量の誤検出を排除するために、手動によるレビューが必要になることがよくあります。これには数日から数週間かかることがあります。
コードスキャンは定期的に、通常メジャーリリースの前に行われます。したがって最後のスキャン後に統合されたコンポーネントは、全く検出されません。
オンプレミスでの提供のみとなっています。

その他の継続的インテグレーション

すべてのツールは実際の使用状況に基づいて、ビルド内のオープンソースコンポーネントを検出します。リポジトリ内のオープンソースコンポーネントも検出します。
ほとんどのツールがサポートしています。
オンプレミスまたはホステッド(クラウド)のみとなっています。

Manual

Inaccurate due to the complexity of dependencies tracking and human error.

A waste fo your developers' valuable time on processes that can be easily and inxepensively automated.

Read More

脆弱性の識別

Move Up

何百ものオープンソースのセキュリティ脆弱性が毎年報告されています。ありがたいことに、オープンソースコミュニティーは、それらの80%以上に対して修復を迅速に対応しています。
オープンソースコミュニティーは、善意で成り立っており、脆弱性がさまざまなソースに報告されています。したがって、ソフトウェア内の脆弱性とオープンソースコンポーネントとのマッチングは難題です。
ハッカーが、ある一つのオープンソースの脆弱性が、より多くの被害をもたらすことを理解し始めているため、セキュリティの脆弱性を迅速に見つけて修正する能力はこれまでになく重要なものになってきています。

WhiteSource

NVD(National Vulnerability Database)、12ものセキュリティ勧告、GitHubのイシュートラッカー、オープンソースプロジェクトのバグトラッカーなど、複数のデータベースから脆弱性を発見しています。
WhiteSource社のデータベースには、18万以上のセキュリティ上の脆弱性情報が入っています。

影響を受けているコンポーネントの特定のバージョンと脆弱性を突き合わせることにより、誤検出をゼロにする独自のアルゴリズムを持っています。
脆弱なコンポーネントを追加するとき、またはコンポーネントの1つで脆弱性が発見されたときに、リアルタイムで警告します。
製品の最終ビルドのインベントリを継続的に監視し、リリース後のセキュリティ問題を検出できるようにします。
セキュリティの脆弱性を修正する方法に関する修正提案を提供します。

コードスキャナ

ほとんどのソリューションはNVD(National Vulnerability Database)のみを追跡します。
競合他社の脆弱性データベースには最新のレポートに基づいて76,000を超えるセキュリティ上の脆弱性が存在します。
最後のスキャン時に既知の脆弱性のみを検出できます。
あなたのチームの時間を浪費するであろう「誤検出」率が高いです。

その他の継続的インテグレーション

ほとんどのソリューションはNVD(National Vulnerability Database)のみを追跡します。 1つの解決策は今放棄されたOSVDBに基づくVulnDBのソースも提供します。
競合他社の脆弱性データベースには、最新のレポートに基づいて76,000を超えるセキュリティ上の脆弱性が存在します。
誤検出とミスの量はベンダーによって大きく異なります。

Manual

It’s near impossible to manually detect vulnerable components, due to the way vulnerabilities are reported.

OWASP’s dependency checker can help for a limited number of languages, with average accuracy.

Read More

ライセンスリスク管理

Move Up

オープンソースライセンスのリスクアセスメントは、もはやM&AやIPOなどのデューデリジェンスプロセスで必要な工程ではなくなりました。各ソフトウェアリリースの前に行うことが、標準になりつつあります。したがって法律顧問は継続的な展開に合わせて、オープンソースライセンスのコンプライアンス問題を管理するための自動化されたソリューションが必要です。
オープンソースライセンス数の増加、複数のライセンスバージョン、オープンソースライセンスではない公開されたコードの驚異的な量により、開発したソフトウェアにおけるオープンソースライセンスを正確に追跡することがますます困難になってきています。

WhiteSource

組織、アプリケーション、またはプロジェクトごとに、すべてのコンポーネントとその依存性のライセンスを表示します。複数のライセンスが見つかった場合、検出されたすべてのライセンスが表示されます。
ライセンスごとの完全なリスク分析。
最後のビルドに基づいて、数分以内にレポート(ライセンス参照のデューデリジェンスレポート、プロジェクトごとのライセンス配布など)を作成します。
導入に必要な通知の照合と発行を自動化します。

コードスキャナ

組織、アプリケーションまたはプロジェクトごとにオープンソースコンポーネントのライセンスを表示しますが誤検出数は高くなります。
ライセンスの参照を含むデューデリジェンスレポートを作成します。このプロセスは完全に自動化されておらず、最後のスキャンの間だけ正確です。

その他の継続的インテグレーション

限られたライセンスリスクアセスメント機能を提供しながら、セキュリティ面に重点を置く多くのベンダーがあります。
ライセンストラッキングを提供しているすべてのベンダーは、ライセンスの参照でデューデリジェンスレポートを作成できます。
誤検出とミスの量はベンダーによって大きく異なります。
通知の照合と公開を自動化するベンダーはほとんどありませんが、提供される自動化の程度は大きく異なります。

Manual

Manually tracking license usage is complex and contains manually research and report of open source license information, including all dependencies’ licenses.

FOSSology scans file headers and detects text from open source licenses using a variety of heuristics. It’s only able to read source code, and offers limited automation. It provides zero false positives, but many misses.

Read More

自動化とポリシー

Move Up

継続的インテグレーション(CI)/ 継続的デリバリー(CD)の世界では自動化が重要です。したがって自動化されたオープンソース管理ソリューションが不可欠です。結局のところ手動プロセスはセキュリティ、コンプライアンス、品質問題をリアルタイムで検出することができません。
自動化は、開発者が管理手順とは対照的にコーディングに専念できるように、正確性、制御性、効率性を向上させます。

WhiteSource

ポリシー違反によるビルドの失敗を含む、完全な自動化を可能にする幅広いネイティブプラグインを提供します。
ポリシーは、ライセンスタイプ、脆弱性重大度、品質評価などのメタデータパラメータの任意の組み合わせに基づいており、ソフトウェア開発ライフサイクル(SDLC)の複数の段階で自動的に適用されます。
REST APIが利用可能で、ユーザーは特定の要件に従って製品を完全に制御し柔軟に制御できます。

コードスキャナ

継続的インテグレーション(CI)/ 継続的デリバリー(CD)プロセスと統合しません。
一部のベンダーは、システムのポストスキャンを追跡し、インベントリを更新し、問題のあるコンポーネントを検出します。ただし、トラッキングはエラーが発生しやすい手動トラッキングに基づいています。
スキャン後の問題のあるコンポーネントを検出するためのポリシーを定義できますが、自動的にまたは継続的に強制されるわけではありません。

その他の継続的インテグレーション

ほとんどのベンダーは、最も一般的な継続的インテグレーション(CI)サーバーにネイティブプラグインを提供しています。ビルドツールとリポジトリの統合はベンダーによって異なります。
ポリシーは通常ビルド時に強制されますが、実施レベルはベンダーごとに異なります。
ほとんどのソリューションは、コマンドラインツールを提供しているため、オートメーション機能が制限されています。

Manual

Not possible.

Read More

シフトレフト機能

Move Up

シフトレフトとは、ソフトウェア開発プロセスの初期段階にテストを統合することで、問題を簡単に解決して修正するのが簡単な段階で、問題を検出できるようにすることです。研究によると初期の開発で発見された脆弱性と重大なバグは、プレリリースやリリース配布後に発見された問題と比較して、修正するコストが90%少ないとのことです。
問題のあるオープンソースコンポーネントをリポジトリ/ビルドやダウンロードに追加する前に検出することで、ほとんどのオープンソースのセキュリティと品質の問題を回避できます。

WhiteSource

開発者は、オンラインリポジトリ(GitHub、MavenCentralなど)を検索しながら、個々のコンポーネントの完全な分析を見ることができるブラウザのプラグインである選択ツールを提供します。これによりネイティブ環境(インターネットブラウザ)とシームレスに統合されるため、組織のポリシーに適合するコンポーネントを選択し、開発者の採用率を高くすることができます。
開発者が低品質のコンポーネントを使用するのを避けるために、各バージョンの選択ツールで品質スコアを提供します。品質スコアは、バグ評価、修正評価、およびバージョンアクティビティを集計することによって決定されます。
リポジトリへのネイティブプラグイン、ビルドツール、継続的インテグレーション(CI)サーバーは、ソフトウェア開発ライフサイクル(SDLC)に追加されるとすぐに問題のあるコンポーネントの検出を可能にします。プラグインは、会社のポリシーに適合しないコンポーネントのブロックを容易にします。

コードスキャナ

コードスキャナは、継続的インテグレーション(CI)/ 継続的デリバリー(CD)プロセスと統合することはできず、単一の時点(最後のスキャン時)のみを分析することができます。
一部のベンダーは、ライセンス、セキュリティ、品質情報を含むオープンソースプロジェクトのディレクトリを提供しています。これは開発者にコーディング慣行を変更させる必要があるため、採用率が低くなっています。

その他の連続ツール

統合製品はベンダーによって異なります。リポジトリ、ビルドツール、継続的インテグレーション(CI)サーバーに関して、各ベンダーの関連製品を比較する必要があります。
現在、開発段階で問題のあるコンポーネントの使用をブロックできるツールはありません。

Manual

You cannot identify problematic components in real-time with manual processes.

Read More