支持し、オープンソースソフトウェアの使用を推奨している者として、タイトルにある質問に対して「イエス」と答えることを期待するかもしれません。
とはいえ、オープンソースソフトウェアの良さを語るだけにとどまるつもりはありません。より多くのアイデアを一緒に探求していきましょう!
この記事では、オープンソースソフトウェアが安全かどうか、またオープンソースソフトウェアのセキュリティにはどのようなことが関係するのかについて、私の考えをお話しする予定です。
オープンソースソフトウェアが安全かどうかを心配する必要がある理由
Linuxや 他の種類のオペレーティング・システムを使っているかどうかにかかわらず、あなたはある程度オープンソース・ソフトウェアに囲まれています。
例えば、ほとんどのプロプライエタリ・ソフトウェア・ツールは、正常に動作し続けるために何らかのオープンソース・ライブラリに依存しています。
さらに、あらゆる規模の企業がオープンソースソフトウェアに依存したり、何らかの形でオープンソースコミュニティにリソースを提供しているのには理由があります。
したがって、オープンソースソフトウェアのセキュリティを理解する必要があります。
オープンソースソフトウェアのセキュリティに関する神話
オープンソースソフトウェアの欠陥をセキュリティの観点から正当化する理由は複数ありますが、そのうちのいくつかは事実上無意味です。
誰でもオープンソースソフトウェアのコードを閲覧し、悪意を持って悪用することができます。
そう、オープンソースソフトウェアのコードは誰でもアクセスできるのです。しかし、コードを閲覧できるからといって、それを悪用できるわけではありません。
非現実的。
通常、プロジェクトのメンテナーはコード・リポジトリを管理し、貢献者からのコミットを受け入れます。オープンソースソフトウェアのコードは、受け入れ時にレビューされます。誰もコードを乗っ取ることはできません。
ソフトウェアがオープンソースであろうとクローズドソースであろうと、攻撃者はコードの脆弱性を突いたり、ソフトウェアに悪意のあるコードを追加したりするために労力を費やす必要があります。
専任チームがいなければ、セキュリティについて語ることはできません。
多くの人は、オープンソースソフトウェアに専門のスタッフやチームがいなければ、ソフトウェアのセキュリティを維持することは難しいと考えています。
それどころか、オープンソースソフトウェアは、さまざまなタイプの貢献者が参加したり離脱したりした結果、より幅広い開発者から注目されるようになりました。
彼らは、プロプライエタリ・ソフトウェアに雇われている数少ない開発者よりも、セキュリティ上の問題を発見する能力に長けているかもしれません。
Mozillaのような同じような企業のプロジェクトには、セキュリティを効率的に扱うための独自の専門チームがあります。同様に、成功しているオープンソースプロジェクトのほとんどは、セキュリティに特化した重要なリソースを持っています。
このように、オープンソースソフトウェアのエコシステムは、セキュリティのコンボパックです。専門チームがなくても、オープンソースプロジェクトはあらゆる種類の貢献者から支援を受けることができます。
オープンソースソフトウェアは安全です。
さて、オープンソース・ソフトウェアのセキュリティに関するこれらの神話が一掃されたところで、オープンソース・ソフトウェアがセキュリティをどのように扱っているかを示すことに焦点を当てたいと思います。
つまり、オープンソースソフトウェアはセキュリティの面で優れているのです。
オープンソースソフトウェアの利点は、 Linux 理由の一部でもあることを忘れてはいけません。
オープンソース・ソフトウェア・コードへの視線
プロプライエタリ・ソフトウェアとは異なり、コードへのアクセスは一部の開発者に限定されません。
オープンソースのプロジェクトによっては、何万人もの開発者がコードを見て、レビューし、セキュリティ上の問題にフラグを立てて修正することもあります。
このため、オープンソースプロジェクトは、クローズドソースソフトウェアと比較して、問題を迅速に特定し、可能な限り迅速に修正できるという利点があります。
単に開発者を増やすだけでなく、企業はしばしば自分たちが利用するオープンソースプロジェクトに参加します。その場合、彼らはコードにアクセスし、それをレビューします。
これは、外部レビューのための別の手段を提供し、ひいてはオープンソースソフトウェアのセキュリティを向上させるのに役立つかもしれません。
逆に、クローズド・ソース・ソフトウェアの場合、限られた数の開発者しか、あらゆる種類のセキュリティ問題を特定できないかもしれません。また、発見した問題を一つずつ修正するのに時間がかかるかもしれません。
地域社会が安全保障問題の優先順位を決定
クローズドソースソフトウェアの開発者は、どの問題にいつ対処するかという点で、一定の制限や優先順位を持っているかもしれません。
一方、オープンソースプロジェクトの場合、貢献者コミュニティは、自分たちで適切な修正方法を決定するだけでなく、対処したい問題に優先順位をつけたり、スケジュールを立てたりすることができます。セキュリティ問題を修正するために、ベンダーの決定に依存したり、ベンダーの指示に従ったりする必要はありません。
オープンソースソフトウェアのプロジェクトでは、セキュリティ問題の進行と修正の決定が、より透明で柔軟なものとなります。その結果、より効果的であることが証明され、次の3つの利点が得られます:
- 透明性
- サプライヤーへの非依存
- より迅速なセキュリティアップデート
オープンソースソフトウェアは弾丸ではありません。
オープンソースソフトウェアは、場合によってはセキュリティの面で有利になることもありますが、それでも影響を及ぼす要因は数多くあります。
このような問題が存在することを認識することは重要であり、それによって企業や個人はオープンソースソフトウェアのセキュリティについてより良い判断を下すことができます。
コードと不確実性をレビューする目が不十分
オープンソースソフトウェアのコードが世界中の開発者が自由にアクセスできるものであったとしても、そのオープンソースコードを徹底的にレビューできるほどの貢献者/開発者がプロジェクトにいない可能性は依然として存在します。
そうであるならば、オープンソースソフトウェアのピアレビューがたまたまなかったからといって、それに対して非常に高い信頼性を持つことはできません。
オープンソースソフトウェアは、オープンソースであるため、最高のセキュリティを持っていると "主張 "するかもしれません。これは、プロジェクトに十分な開発者がコミットしていない場合には誤解を招きます。
繰り返しますが、何人の開発者がコードを見たりチェックしたりしているのか、コードのチェックがどこまで進んでいるのかを知る方法はありません。
例えば、広く使われているプログラムに導入されてから2年後に発見されました。
ソフトウェアの責任と説明責任
個々のユーザーにとっては、これは問題ではないかもしれませんが、オープンソースプロジェクトには通常、保証はありません。
したがって、企業がこれを使用した場合、そのソフトウェアの使用によって生じたデータの損失や損害については、企業が責任を負うことになります。
このことからわかるのは、100%安全で脆弱性のないものはないということです。どれだけ多くの人の目がコードに注がれていても、どれだけ熟練した貢献者がいたとしても、セキュリティリスクであれ、データ損失であれ、何らかのリスクは常に存在するのです。
これは現実を物語っています。オープンソースソフトウェアは弾丸ではありません。
オープンソースソフトウェアはセキュリティが高いという利点がありますが...
セキュリティに関しては、勝者はいません。クローズドソースであろうとオープンソースであろうと、セキュリティに関しては同じ原則が適用されます。
ソフトウェアのセキュリティに影響を与える外部要因は数多くあり、その多くはソースコードに依存しません。
セキュリティを確保するためには、コードを何らかの形で監視する必要があります。
たしかに、オープンソースの道は、クローズドソースのソフトウェアにはない利点がありますが、だからといって、オープンソースのソフトウェアが弾丸のように強いというわけではありません。




