効果的で厳密なオープンソースコンプライアンスおよびセキュリティのカギは、広範なナレッジベースに基づく強力なソフトウェア解析ツールです。FossIDのナレッジベースは、オープンソースソフトウェアの最新のイノベーションを収集した商用のカタログのようなものであり、何十億というオープンソースプロジェクト、ファイル、スニペット、脆弱性を参照します。
完全自動化されたナレッジベースの構築
ソフトウェアは世界を侵食しています。家電製品からインテリジェントカーまで、ソフトウェアはあらゆるところに存在し、圧倒的多数がオープンソースを基にしています。オープンソースを利用することで、開発のスピードが大幅に短縮され、差別化要因とならない機能の標準化が進み、結果として差別化とニッチなイノベーションが促進されます。
オープンソースソフトウェアは指数関数的に増大しており、毎分のように新しいプロジェクトが作成されています。数兆行のオープンソースコード、数十億のコードスニペットがあり、すべてにライセンスと順守すべきライセンス義務が伴います。
しかし、このような膨大なコードを追跡し、最新のセキュリティ脆弱性情報で更新することなどできるのでしょうか?そのような疑問に答えるのがデータの自動収集です。
常に変化するオープンソースの状況に追随するため、FossIDは自動化された仕組みを開発し、100近い公開ソースコードリポジトリからデータを探して収集し、暗号化されたハッシュ値としてFossIDのナレッジベースに格納します。GitHub、Maven、GooglesourceからGnu、Kernel、Pypiまで、FossIDは考えられるあらゆる系統とあらゆるユースケースを収集します。ソースのリストは常に拡張されており、StackOverflowやその他のユーザー投稿型フォーラムにも及んでいます。
特許出願中のテクノロジー
スピードと圧縮率を目的に設計された新しいデータベーステクノロジー
ソフトウェアが新しい流行である状況で、従来のナレッジベース構築方法は圧縮機能とパフォーマンスという点で明らかに十分ではありませんでした。そこでFossIDは、独自のデータベースを一から構築しました。登場から数世代を重ねて成熟した現在では、4つの関連特許が出願中です。
軽量デプロイメントを可能にする高い圧縮率
FossIDは2PBに相当するオープンソース参照情報をナレッジベースに組み込み、独自の特許技術で6TBにまで圧縮しています。このナレッジベースのフォーマットは、平均で70ファイル/秒の高速スキャンを可能にします。
「去年の夏に何をコピー&ペーストしたかもわかる」
オープンソースコンプライアンスとセキュリティ脆弱性検出は、何よりもリスク管理の実践だといえます。製品やサービスに含まれるすべてのソースコードについて、適用されるライセンスに準拠し、セキュリティ脆弱性を避けることが望まれます。
いっぽうで、開発者がオープンソースプロジェクトからコンポーネント全体でも、ファイルや部分的なコードスニペットでも再利用できる柔軟性が望ましいでしょう。FossIDは最小で6行単位のスニペットを検出し、識別します。
革新的なセキュリティ脆弱性検出でスニペットレベルまで検出
FossIDはまったく新しいレベルでオープンソースのセキュリティ脆弱性に対処します。National Vulnerability Database (NVD)、Bugzilla、Android Securityなどのソースを利用して、既知のセキュリティ脆弱性があるコンポーネントやファイルだけでなく実際のコード行まで検出します。これにより、スニペットごとに該当する脆弱性だけがリストされ、不正確な結果リストや誤検出でユーザーを惑わせることがないので、解析が容易になります。ヒットごとにソースの起源、バージョン番号、ライセンス名が表示され、追加情報や修正方法などへのリンクが示されます。
頻繁なアップデートで最新のオープンソースの展開にアクセス
FossIDクラウドのナレッジベースを使用するレギュラーデプロイメントでは、データベースは常にオープンソース界の展開に合わせて最新の状態を保っており、顧客は最新の変更にアクセスできます。顧客がオンプレミスでナレッジベースをホストする「オフライン」デプロイメントでは、ネットワーク経由でのダウンロードまたは容量の小さなサーバーには物理的な送信によって定期的なアップデートが行われます。
この記事は、FOSSID Blog 「The top reasons why knowledge base size matters」2020年6月25日 Fredrik Ehrenstrale 投稿記事をFOSSID社の許可を得て翻訳したものです。)