オープンソースソフトウェアを認証するための新しい方法。 AssureMOSSプロジェクトの挑戦

(へ マッテオマウリ)
04/08/21

ヨーロッパはソフトウェアに大きく依存しています オープンソースの 主に海外で設計されています。 欧州のデジタル単一市場では、ほとんどのソフトウェアがオンラインで組み立てられており、半分以上がソフトウェア(リポジトリ)からのものです。 オープンソースの 国境を越えて作られました。

一部の大学、中小企業、大企業、専門利益団体、およびソフトウェアの分野で重要な能力を備えた諮問委員会 オープンソースのは、より効率的で安全なソフトウェアの開発を加速するための新しい方法とアプローチを作成するために、戦略的パートナーシップに結集しました。

この記事では、AssureMOSSプロジェクトの試みについて簡単に説明します(安全なマルチパーティオープンソフトウェアおよびサービスにおける保証と認証- https://assuremoss.eu)ソフトウェアの課題に直面する オープンソースの 「どこでも設計されていますが、ヨーロッパでは保証されています」。 2020年間のプロジェクト(2023年2020月から1年XNUMX月)は、HORIZONXNUMXプログラム[XNUMX]の下で欧州委員会によって資金提供されています。

組み立てられたソフトウェアとMOSSパラダイムへの急いで

過去2年間で、多くの革新の中で、特に3つの主な特徴が根本的に変化し、ソフトウェア開発プロジェクトを調整しました[4]。 まず、開発チーム間のフィードバックループの短縮と、これらのチームがリリースする製品への応答(A / Bテスト、DevOpsなど)により、製品の変更がより迅速になり、必死の開発が行われました。 第二に、開発者は最終製品の機能の差別化にますます焦点を合わせていますが、他のすべて(クラウドの実装、OpenSSL [5]やNode.js [XNUMX]などのオープンフレームワークの広範な使用、またはその他の使用)についてはサードパーティにますます依存しています。制限された製品ですが、とにかくプロトコル、手順、ライブラリ、API [XNUMX]があります オープンソースの)。 これらすべてが、さまざまな関係者(英語では複数の利害関係者と呼ばれる:複数の利害関係者)が関与する開発につながりました。その結果、それぞれが独自のセキュリティとプライバシーの慣行/ポリシーを持つさまざまな関係者によって運営されるアセンブリが作成されます。

記事の残りの部分で使用する頭字語をここですでに紹介できます。 最新のソフトウェアは、Multi-party Open Software and Services(MOSS)と呼ばれるパラダイムに基づいています。 したがって、製品を開発するソフトウェア会社は、同じ製品のソフトウェアセキュリティを保証するプロセスに関与する主人公のXNUMX人にすぎません。

これらの関係者には、たとえばセキュリティ更新プログラムの作成に関与するOS開発コミュニティ、または新しいセキュリティサービスや既存のインターフェイスの更新を提供する企業が含まれます。 MOSSパラダイムは確かに大企業の場合に当てはまりますが、中小企業や新興企業などの中小企業は、主にフリーでオープンソースのソフトウェア(FOSS-フリーでオープンソースのソフトウェア)に基づくサプライチェーンが短い場合があります。

後者はソフトウェア業界のバックボーンです。今日の商用製品のほぼ80%には、欧州議会がその重要な役割を正式に認めているところまで、少なくとも90つのFOSSコンポーネントが含まれています。 ソフトウェア開発会社によって内部で生成されるコードの部分を減らすという進歩的な傾向に注目することも興味深いです。 95年代後半、ソフトウェアスタックの2019%以上が自己開発コードで構成されていました。 データベースとオペレーティングシステムのみが、ライセンスを受けたクローズドソースベンダーから提供されました。 一方、現在の傾向を観察すると、5年には、内部で生成されたコードの部分が大幅に減少し、パイのXNUMX%にすぎないことがわかります:ブラウザー、UIフレームワーク、パッケージマネージャー、アプリケーションサーバー、マイクロサービスプラットフォーム、コンテナ、コンテナ化されて動作するシステム、それらはすべて一般的にサードパーティのソフトウェアコンポーネントです(ほとんどは オープンソースの)ソフトウェア会社が日常的に使用している[6-7-8]。

ソフトウェアの認証と再認証

急速で断片化されたサイクルでのソフトウェア開発プロセスのこの進化は、セキュリティとプライバシーに影響を与える多数の変更のために、ソフトウェアセキュリティの認証と保証のプロセス/サイクルが同じであることを意味します(たとえば、新しい脆弱性は、使用によって導入される可能性があります)個人データにアクセスし、場合によってはそれらを送信できる新しいライブラリの)。 したがって、セキュリティを保証するための新しいパラダイムは、以前の「厳格で固定された」パラダイムと比較して「軽くて継続的」である必要があります。 したがって、認証について話すのではなく、認証、再認証、およびリスク評価について話す必要があります。

ソフトウェア開発が事実上、複数の利害関係者の活動(一部の利害関係者がサードパーティライブラリのサブサブ依存関係に隠されている)であるという事実は、保証技術が複数のアーティファクトのソースを持つ断片化されたエコシステムで機能する必要があることを意味します(例:コミュニティから オープンソースの)、さまざまなテクノロジーと言語、さまざまな意思決定ドメイン。 その結果、セキュリティを確保するための新しいパラダイムには、「スマートで柔軟な」アプローチが含まれます。これは、新しいデータと追加のフィードバックを利用できるようになることで、時間をかけて学習、適応、改善できるアプローチです。

複数の利害関係者やペースの速い開発者と統合できる革新的で軽量でインテリジェントなセキュリティ保証技術が作成されない限り、セキュリティは開発チームの生産性競争によって引き続き不利益を被ります[9]。毎日新しい機能を展開するように促されます。基礎。

迅速な複数の利害関係者の開発も、ソフトウェア認証を保護するための課題をもたらします。 プロジェクト用のものを含む、既存のセキュリティ認証スキーム オープンソースのコアインフラストラクチャイニシアチブ(CII)バッジプログラム[10]などは、ソフトウェアプロジェクトが特定のセキュリティのベストプラクティスに従っていることを証明することに重点を置いています。 基本的に、これらの概略図はソフトウェア開発プロセスに焦点を合わせています。 ただし、最近のソフトウェアプロジェクトでは、開発プロセスがよりスムーズになり、開発者によって継続的に適応されています(厳格で集中的に実施されるのとは対照的です)。 その結果、各フェーズに関係する施設には、これらの認証を取得および維持するために必要なリソースがない可能性があります。

AssureMOSSプロジェクトの挑戦

言われていることから、欧州連合側の見方を変える必要性は確かに認識されており、それはAssureMOSSプロジェクトに資金を提供することによって新しいアプローチを引き起こそうとしました。 このプロジェクトには、4つの大学(Delft、Gotheborg、Trento、Vienna)、3つの革新的なSME(Pluribus One、FrontEndArt、Search-Lab)、2つの大企業(SAP、Thales)、EU-VRi組織、およびアドバイザリーで構成されるチームが含まれます。業界の世界からの戦略的人物とオープンソースソフトウェア(OSS)で構成されるボード。

具体的には、AssureMOSSは、プロセスベースからアーティファクトベースのセキュリティ評価(モデル、ソースコード、コンテナイメージ、サービス)への移行を実装し、継続的なソフトウェアライフサイクルのすべてのフェーズ(設計、開発、実装、評価、バックアップ)をサポートすることを提案します。 。

したがって、AssureMOSSは、セキュリティの保証と再認証に包括的なアプローチを採用し、ソフトウェア会社がセキュリティとプライバシーを評価、管理、再認証できるようにする一連の一貫した自動化された軽量技術のおかげで、ソフトウェア開発プロセスのすべての段階に貢献するという野心を持っています。マルチパーティのオープンソフトウェアおよびサービスの迅速な開発と継続的な提供に関連するリスク。 最終的に、このプロジェクトは、より安全なMOSSソフトウェアの作成をサポートすることを目的としています。

重要なアイデアは、次の方法でソフトウェアコンポーネントの母集団全体に自動的に適用できる軽量でスケーラブルなスクリーニングメカニズムをサポートすることです。

•アーティファクト間のセキュリティ問題をインテリジェントに識別するための機械学習の使用。

•プライバシーとセキュリティへの副作用を継続的に追跡することによる変更の分析と検証。

•継続的なリスク分析とソフトウェアセキュリティ評価(潜在的に脆弱な製品によって引き起こされるビジネスへの潜在的な影響に特に注意を払う)。

このプロジェクトは、多くの革新的な方法とオープンソースツールを生成するだけでなく、他の研究者が使用できる何千もの脆弱性とコードを含むベンチマークデータセットも生成します。

AssureMOSSツールは、たとえば、コードリポジトリの追加、削除、変更を半自動でスクリーニングすることでバグや脆弱性の検索にかかる時間を節約し(コミット分析[11])、評価をスピードアップし、ソフトウェアの分析プロセス。

したがって、視点の変更(アーティファクトとプロセス)および開発されたソフトウェアの継続的な再認証の概念は、非常に野心的な課題の基礎になっています。たとえば、認証および標準化機関がMOSSソフトウェアのアーティファクトに焦点を当てた認証スキーム。

基本的な直感は、医療健康分野でよく知られている慣行[12]によって十分に要約されており、ここでは次の目的に適合させます。 (ソフトウェアコンポーネントの)テスト、検査、または対象集団に迅速かつ簡単に適用できるその他の手順。 [...]スクリーニングプログラムをサポートする際には、高度な医療システムと高度で高価な(安全)検証スキームを備えた非常に効率的な環境から派生したモデルを、企業、プロセス、(開発者およびユーザー)に押し付けないようにすることが重要です。人口の適切な予防を得るために必要なインフラと資源を持っていない」。

1 AssureMOSSプロジェクトは、助成金契約n°952647によって規制されており、合計4.689.425ユーロの資金が提供されています。 www.pluribus-one.it/it/ricerca/progetti/assuremoss

2 Jan Bosch、Speed、Data、およびEcosystems:Excelling in a Software-Driven World、CRC Press、2016年

3 OpenSSLは、SSLおよびTLSプロトコルのオープンソース実装であり、GNU / LinuxやmacOSなどのほとんどのUnixライクなオペレーティングシステム、およびMicrosoftWindowsで利用できます。 www.openssl.org

4 Node.jsは、JavaScriptコードを実行するためのイベント指向のクロスプラットフォームオープンソースランタイムシステムであり、GoogleChromeのV8JavaScriptエンジン上に構築されています。 そのコアモジュールの多くはJavaScriptで記述されており、開発者はJavaScriptで新しいモジュールを記述できます。 https://nodejs.org/it/

5 API、Application Programming Interfaceの頭字語、 www.redhat.com/en/topics/api/what-are-application-programming-interfaces

6 Black Duckのオープンソース調査の将来、2015年

7 Holger Mack、TomSchröer、Security Midlife Crisis、SAP Product Security Summit 2019

http://www.europarl.europa.eu/oeil/popups/ficheprocedure.do?lang=en&refe...

9 CVE Detailsによると、2017年は過去数年間の脆弱性の記録を打ち破りました(14714年の2017対7946年の2014の以前の記録)。 残念ながら、2018年はさらに悪化しました(16555の脆弱性)。 https://www.cvedetails.com/browse-by-date.php

10 https://www.coreinfrastructure.org

11 https://wiki.ubuntu-it.org/Programmazione/Git/Commit

12 https://www.who.int/cancer/prevention/diagnosis-screening/screening/en/

13 Eoin Woods、Democratizing Software Architecture、Keynote at ICSA 2019、online at https://speakerdeck.com/eoinwoods/democratising-software-architecture

14 www.pluribus-one.it/it/chi-siamo/blog/88-cybersecomics/111-bug