当ブログは YAMDAS Project の更新履歴ページです。2019年よりはてなブログに移転しました。

Twitter はてなアンテナに追加 Feedlyに登録 RSS

オープンソースのセキュリティ:デジタルインフラは砂上の楼閣に築かれている?

www.lawfareblog.com

ブルース・シュナイアー先生のブログ経由で知った記事だが、これが掲載されている Lawfare の名前は以前取り上げていた

この記事が論じるのはオープンソースが抱えるセキュリティの問題であり、ワタシもこれについては「Apache Log4jの脆弱性とともに浮かび上がったオープンソースのメンテナの責任範囲の問題」などで取り上げている。この記事の著者の Chinmayi Sharma は、オープンソースの主な受益者であるソフトウェアベンダーの多くが、自分たちが利用する OSS プロジェクトに貢献するインセンティブがないフリーライダーであることをまず挙げる。このインセンティブの問題に対する制度的な対応が必要というわけですね。

ここで引き合いに出されるのはやはり、Apache Log4j脆弱性「Log4Shell」だが、脆弱性の発見から半年以上を経ても、Log4Shell の影響を受ける約30億台のデバイスのうち60%がパッチ未適用のままらしい。他にも Apache Struts の脆弱性に起因する Equifax の情報流出Atlassian Confluence のゼロデイ脆弱性といった例を引きながら、オープンソースは遍在し、もはや公共政策上でも欠かせないデジタルインフラだが、それに脆弱性があれば(プロプライエタリソフトウェアのようにその顧客だけにとどまらず)広範囲に影響を及ぼしてしまうことを指摘する。

その上で著者は、問題はコードの品質ではなく(それについてはプロプライエタリなコードと同等以上の品質は高く、米国が技術革新において優位に立つことができたのはオープンソースのコードのおかげとまで著者は認めている)、コードを保護する機関がないことだと書く。

やはりここで問題になるのは、上でも挙げたフリーライダー問題。著者は道路や橋といった公共財が使いすぎに弱いことをオープンソースに当てはめてて、ちょっとうーんと思ってしまうが、OSS プロジェクトの人気が高まるほどそのサポートは強化されなければならないのに実際はそうでないというのはそうなのだろう。

オープンソースプロジェクトの30%はメンテナが一人しかいないが、それを利用する企業にはオープンソースを改善するインセンティブがないという「傍観者効果」が起きている。オープンソースプロジェクトは、上流への貢献と持続的なメンテナンスのためのリソースを希求しているが、道路や橋に税金が投入されているようにオープンソースも支援されるに値すると著者は主張している。

ソフトウェアのサプライチェーンで最も弱いところは無責任なソフトウェアベンダーになるが、なんでベンダーはオープンソースのセキュリティ対策を本腰を入れないのか? その理由というか構図についてもこの記事ではいろいろ書かれているが、上で書いたインセンティブの問題があるのは間違いない。

これに対し、最近では連邦取引委員会が Log4Shell の対応パッチの適用が遅い企業を強制措置をかますなど、政府がオープンソースのセキュリティ問題に介入する姿勢を見せつつある。著者はその一環としての SBOM(Software Bill Of Materials:ソフトウェア部品表)を評価するが、それだけでは不十分と断じる。SBOM 自体は脆弱性情報と直接的にリンクするものではないので、その運用にはそれを読み解く能力が必要になるが、標準フォーマットも決まってないじゃないかというわけ。

オープンソースコミュニティも当然セキュリティの問題は把握しており、Open Source Security Foundation(OpenSSF)は、既に米国政府とミーティングの機会を持つなど連携しながらオープンソースのエコシステムの保護に注力しているし、オープンソースプロジェクトに無料のセキュリティ監査サービスを提供する Open Source Technology Improvement Fund(OSTIF) も成長を続けている。

しかし、オープンソースコミュニティ自体、必要なリソースと最低限のセキュリティ対策を要求する影響力を持っていない。最近、PyPI が重要なプロジェクトに対し、二要素認証を義務化をアナウンスしたが大きな反発をくらった。つまり、善意であれオープンソースコミュニティ単独でセキュリティ基準の引き上げを達成するのは難しい。

著者は、もはや公共財の性質を持つオープンソースを維持する制度的構造を構築する必要があると訴える。そして、それ自体は目新しい主張ではない。それには効率的な資源配分を確保し、最低基準を課すことが必要になるが、果たしてそれをオープンソースプロジェクトに適用するのはうまくいくかねというのがワタシの感想になる。

あとオープンソースソフトウェアと一言で言っても、開発や利用のされ方はそれぞれなのに、この文章はあまりにひとまとめにしすぎではないかいう不満もある。が、OpenSSF や OSTIF の話はこの文章を読んで初めて知ったので、そうした意味では有益だった。

あと、今年春に「デジタル世界における信頼構築のために今考えるべき「新たなサイバー社会契約」」というエントリをワタシも書いているが、サイバーセキュリティのため官民はもっと密接に連携にしなければならないというクリス・イングリス国家サイバー局長の主張の射程にもこの話は含まれるよな、と思った次第。

[YAMDAS Projectトップページ]


クリエイティブ・コモンズ・ライセンス
YAMDAS現更新履歴のテキストは、クリエイティブ・コモンズ 表示 - 非営利 - 継承 4.0 国際 ライセンスの下に提供されています。

Copyright (c) 2003-2022 yomoyomo (E-mail: ymgrtq at yamdas dot org)