close search bar

Sorry, not available in this language yet

close language selection
 

シノプシスは、最も広く使用されているオープンソース アプリケーション ライブラリの Linux Foundation Census II に貢献しています。

Census II は、無料のオープンソース・ソフトウェアで最も人気のあるコンポーネントを調査し、これらのライブラリがセキュリティに影響を与える問題を明らかにしました。

census-2-header-1000x440.jpg

2022年1月、Linux Foundation とハーバード大学のイノベーション科学研究所は、無料のオープンソース・ソフトウェアのアプリケーション ライブラリの調査レポートCensus II を発表しました。このレポートでは、最も広く導入されている 1,000 以上のオープン ソース アプリケーション ライブラリを特定します。 シノプシスのCybersecurity Research Center (CyRC) は、無料のオープンソース・ソフトウェア(FOSS)の状況をより完全に把握できるデータとして、数千社のコードベースのスキャンに基づく匿名化された使用状況データを提供しました。

レポートの作成者は、「FOSS は非集中的かつ分散的な方法で作成されるため、FOSS の健全性、経済的価値、セキュリティを完全に理解することは困難です」と述べています。ソフトウェア・コンポーネントのパッケージ化方法、およびバージョンのカタログ化と識別方法には非常に多様な方法があるため、レポートではそれらを8つの上位500までのリストとして整理しました。シノプシスのSoftware Integrity Group のセキュリティ・ソリューション・マネージャーのMike McGuireは、パッケージとバージョンは車のモデル、年式、装備の関係と似ていると説明しています。「私がトヨタのカムリに乗っていると言ったとします、でも、あなたはまだ私が何を運転しているのか正確には知りません。1999 年式か、それとも2022年式なのか。部品の注文や車両の整備、リコールの追跡などの際にはモデル、年式、装備について理解しておく必要があるからです。」

Census IIの目的

Census II の目的は「FOSSの長期的な安全性と健全性を維持するためのアクションを知らせること」です。 この調査は、『どのFOSSパッケージが、さまざまなアプリケーションで最も広く使用されているかに関する最良の推定値』を表していますが、そのソフトウェアのリスク・プロファイルを測定しようとするものではありません。リスクを示唆するために使用できる指標は数多くあり、組織によって要素の重み付けの仕方が異なる可能性があります」と書いてあります。

しかし、「多くのアプリが特定の Java GUI フレームワークを使用しているため、非常に人気がありますが、何かが起こった場合にはソフトウェアの重要な部分として機能しない可能性があります。」 と、広く使用されているということは、重要であるということと同じではないと述べています。また、何が重要とみなされるかは、「アプリケーションの構築方法に基づいて、各組織に固有のものになります」と付け加えています。そしてCensus IIのレポートには「最も広く使用されているソフトウェアが特定されれば、リスク・プロファイルの測定はより簡単になる」と書かれているのです。

オープンソース管理の課題

レポートでは、ソフトウェアの識別、カタログ化、保守の方法を改善するためのいくつかの「超えなければならないハードル」があると説明されており、業界がソフトウェア部品表(SBOM)の広範な標準化と採用に向けて移行において重要であるとしています。そして、これらの課題には以下が含まれます:

  • アプリケーション・ライブラリを一意に識別できるように、ソフトウェア・コンポーネントの標準化された命名スキーマが必要である:
    レポートによれば、そのようなスキーマが欠如しているということは、「組織は、そのような情報を共有するために必要な、大規模な、特にグローバルなコミュニケーションが致命的に不可能になる」ことを意味している。

The need for a standardized naming schema for software components so that application libraries can be uniquely identified. | Synopsys

  • パッケージのバージョン管理に伴う複雑さ:
    レポートの作成者は予期せぬ問題に遭遇しました。企業は「パッケージの内部バージョンを保守していたが、保守における変更を公式リポジトリにコントリビュートしていなかった。」ある例では、パッケージのバージョン2.87が複数発見したものの、公式リポジトリではバージョン2.26 までしか更新されませんでした。」とレポートに記載しています。そして、SBOM が「『メイン』と『派生』のバージョンを区別できない場合、新たに発見された脆弱性に対して脆弱かどうか、そのソフトウェアの購入者が知ることは困難になります。」

Companies maintain internal versions of a package and don't contribute their changes back to the official repository. | Synopsys

無料のオープンソース・ソフトウェアの長期的なセキュリティに影響のある課題

このレポートでは、FOSSの長期的なセキュリティに影響を与えるいくつかの問題も特定しました。これらには以下が含まれます:

  • 広く使用されているFOSSの多くは、ほんのひと握りのコントリビュータによって開発されています。あるデータによると、上位50のパッケージに追加されたコード行の80%以上を136人の開発者が担当していました。2023年の「オープンソース・セキュリティ&リスク分析」(OSSRA)レポートは、次のように警告しています。「重要なプロジェクトでは健全なサポートが行われていることがほとんどですが、ごくわずかな人数によってメンテナンスされているプロジェクトも多く存在します。」 そして、プロジェクトが放棄されれば、バグは修正されません。

Much of the most widely used FOSS is developed by only a handful of contributors | Synopsys

  • 個人の開発者アカウントのセキュリティの重要性が高まっています。 一般に、個人のアカウントは組織のアカウントほど十分に保護されておらず、「これらの個々の開発者アカウントの制御下にあるコードへの変更が、非常に簡単に行われ、検出されることなく行われることを意味します」とレポートに書かれています。さらに、個々の開発者が長期休暇に入ったり、なんらかの事情でコードの更新ができなくなったりすれば、問題が発生する可能性があります。」リスクはそれだけではありません。 たとえば、個人の開発者が自分のプロジェクトを削除または削除した場合、それに依存する数百から数百万のパッケージが使えなくなってしまう可能性があります。
  • オープンソースの世界におけるレガシー・ソフトウェアの永続性。 企業が古いバージョンのオペレーティング・システムやアプリケーションのサポートを終了すると宣言したという話を聞いたことがあるはずです。しかし、誰もが古いバージョンの使用をやめるわけではありません。「追加のメリットが保証されない場合、新しいソフトウェアに切り替えるには金銭的および時間的なコストがかかるため、多くの組織は別のパッケージに切り替えることを正当化するのが難しいと感じるでしょう」と書かれています。OSSRAレポートによると、2022年に調査されたコードベースの89%には、利用可能な新しいバージョン(場合によっては多数の新しいバージョン)があったにもかかわらず、4年以上前のオープンソースへの依存関係があったことが判明しました。そして、それは危険なこともあります。新しいバージョンを作成する理由の1つは、古いバージョンのバグや脆弱性を修正することです。ハッカーが古いバージョンを使用しているユーザーを探して攻撃を仕掛けるのは容易なことです。

Census II は「一般的なFOSSの見解と、相対的な複雑さに関するいくつかの観察を提供する」ものです。これは規範的なものではありませんが、Census II は組織やユーザーがFOSS開発にもっと積極的に関与する必要性を指摘しており、これまで開発を主導してきた少数の開発者グループだけに任せるのでは不十分だと言っているのです。このレポートでは、オープンソースにおいてレガシー・ソフトウェアを検出するためにソフトウェア・コンポジション解析(SCA)ツールがいかに重要であるか、またSBOM分野における標準化の継続的な必要性も示しています。

 
Synopsys Editorial Team

投稿者

Synopsys Editorial Team


More from オープンソースとソフトウェア・サプライ・チェーンのリスク