オープンソースソフトのつまみ食いがまずい理由とは
GitHubなどに置かれたソースコードを狙うサイバー攻撃が目立ってきた。もしソースコードに欠陥があれば、そのソースコードを使ったアプリケーションソフトウェアにも同じ欠陥が伝染するからだ。オープンソースソフトウェアを使う際にどうすればサイバー攻撃に遭う確率を下げられるのだろうか。
オープンソースソフトウェアの開発で広く利用されているGitHubのリポジトリ(保管場所)には、脆弱(ぜいじゃく)性や未発見の欠陥が多数存在している。
これはアプリケーションセキュリティに特化したVeracodeが2023年1月10日に公開した調査「State of Software Security」の結論だ。GitHubに依存している組織にはリスクがある。
GitHubは安全ではなかったのか
GitHubはコードの安全性を高める取り組みを進めている。それにもかかわらず、このような結論が出るのはなぜだろうか。
リポジトリが作られてから時間が経過するとコードの一貫性が次第に失われ、コミット(コードの修正)が遅れ、コードに問題がないかどうかを確認するスキャンのプロセスがなおざりになっていく。これが脆弱性につながり、リスクを引き起こすのだという。
多くの攻撃者がターゲットとして狙っているソースコードがGitHubなどのオープンソースリポジトリに保存されている場合、ソースコード自体の脆弱性とは別に、攻撃されるリスクが高くなる。アイデンティティーとアクセス管理プラットフォームを提供するOktaは、2022年12月にGitHubに置いていた同社のソースコードリポジトリが攻撃者によって不正アクセスされ、内容をコピーされたと発表した。
パスワード管理ソフトウェアを提供するLastPassも、コードベースへの不正アクセスを受けた。その結果、攻撃者が顧客の保管庫データのバックアップをコピーし、3300万人以上の登録ユーザーが危険にさらされる可能性があるという。LastPassは攻撃されたコードリポジトリを明示していない。
オープンソースコードの盗難は、必ずしも顧客アカウントの侵害に直接つながるわけではないが、悪意のある攻撃者は攻撃手段を改善するためにコードをスキャンして脆弱性を探すことがある。
新しいリポジトリが危険なのか、それとも使い古されたものが危険なのか
Veracodeによると、GitHubにある各オープンソースリポジトリの脆弱性の数はコードベースに対してどのぐらいの期間にコミットがあったか、コミットの数はどの程度だったのかと相関関係がある。
「開発者が自分のアプリケーションにオープンソースライブラリを追加した場合、79%の場合はそのオープンソースライブラリを二度と更新しない。つまり、欠陥が蓄積され続けることになる」(Veracodeの最高研究責任者クリス・エン氏)
正規のパッケージの脆弱性を測定するために、VeracodeはGitHubで公開されていて、Veracodeの顧客が活発に使用している約3万件のオープンソースリポジトリを特定した。これらのリポジトリのうち、約10カ所に1つは開発者が1人しかいなかった。
リポジトリのコミット期間が問題を引き起こす例はこうだ。Veracodeが調査したリポジトリの大半は、4~10年の間に作られたものだ。約5カ所に1つは過去1カ月に新しいコミットがあり、半数は過去1年にコミットがなかった。
「長い間コミットがなかったリポジトリに含まれる脆弱性やコードの欠陥がなぜ多いのかはまだ調査していないものの、このようなリポジトリに過度に依存することはアプリケーション全体の脆弱性を高める可能性があるだろう」(エン氏)
Veracodeが調査したアプリケーションの3分の1近くは、最初のスキャンで欠陥が見つかり、3分の2以上は5年間運用した後で少なくとも1つのセキュリティ欠陥を含んでいた。
APIセキュリティテストを手掛けるStackHawkのスコット・ガーラック氏(共同設立者兼CSO《最高セキュリティ責任者》)はオープンソースソフトウェアにおけるセキュリティの懸念が解決されない根本的な原因があるという。企業がコーディングとコードのスキャン、テストに対して、どのような優先順位で限られた時間とリソースを投じればよいのか分かっていないことだ。
「リポジトリを狙うという攻撃戦略は、比較的侵入コストが低く、有効であるために悪用されている。リポジトリにあるライブラリをつまみ食いして顧みないのであれば、攻撃者に対抗することはますます難しくなるだろう」(ガーラック氏)
出典:Open-source repository risk amplified on GitHub(Cybersecurity Dive)
注1:Annual Report on the State of Application Security(PDF)
注2:Okta’s GitHub source code stolen, company downplays impact(Cybersecurity Dive)
注3:After LastPass hack, only its master passwords remain uncompromised(Cybersecurity Dive)
注4:What’s at stake for 33M compromised LastPass users?(Cybersecurity Dive)
© Industry Dive. All rights reserved.
Cybersecurity Dive
米国でビジネスジャーナリズムに特化した記事を掲載するIndustry Diveの、セキュリティ系連載「Cybersecurity Dive」の記事一覧です。
この記事の著者
関連記事
こんなメディアも見られています
キーマンズネットに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
SpecialPR
アクセスランキング
-
1
Javaアプレットは、なぜ今も情シスを悩ませる? 残った業務システムの“延命”問題
-
2
「Claude」3倍高速化の裏で、Anthropic開発者が「あえてしなかったこと」:899th Lap
-
3
AIエージェントでサイバー攻撃は100倍速に 2026年最新事例から見る防御策とは
-
4
CodexやClaude Codeが作ったアプリ、実は「未完成」かも 本当に「完成」させる“5つの条件”
-
5
資料を食わせるだけで自動化できる、「NotebookLM」の"ズルい"使いこなし術
-
6
自治体、企業で進む「Google回帰」 事例で分かる「Gemini Notebook」の活用アイデア
-
7
Excelの10万行データを3分でAIに処理させる、M365 Copilotの使い方
-
8
なぜ、Microsoft 365 Copilotは「会社の仕事を理解する」のがうまいのか?
-
9
「閉じた環境」で生成AIをどう使うか 大分市が「庁内だけで使える環境」を構築
-
10
今日から始める「AIエージェント」入門 ~Gemini Enterprise編~
キーマンズネット SNS
インフォメーション
注目情報をチェック
キーマンズネットをフォロー