Skip to main content

SnykとRedhunt Labsによる調査:GitHub上位1,000組織をスキャン

feature open source

2023年6月22日

4 分で読めます

オープンソースコードは、現代の開発に欠かせない要素です。開発者はこれを活用することで、アプリケーションの機能を高めながら、開発全体にかかる時間を短縮できます。しかし、完璧な仕組みではありません。サードパーティ製ソフトウェアとその依存関係の性質上、ライブラリやダウンロードファイルにセキュリティの脆弱性が潜む機会が生じることがよくあります。

この問題を解決する方法の1つが、パッケージマネージャーです。JavaScriptやPythonなど多くの言語には、npm(Node Package Manager)やpip(Preferred Installer Program)などのパッケージマネージャーがあります。これらは、読み込む特定のファイルを基に、ダウンロードすべき依存関係を判断します。依存関係にバージョンが明記されている場合、パッケージマネージャーはそのバージョンをダウンロードします。しかし、こうした依存関係のバージョンは古くなっていることが多く、セキュリティの脆弱性を含んでいる可能性があります。

SnykとRedhunt Labsは最近の調査で、人気の高いGitHubリポジトリのセキュリティ状況を明らかにしようとしました。GitHub上位1,000組織のソースリポジトリをスキャンし、安全でない依存関係を調査しました。依存関係を抽出し、そのバージョンを広く知られているセキュリティ上の欠陥と比較することで、研究者たちはこれらのリポジトリのセキュリティ状況を評価しました。Java、JavaScript、Python、Rubyのリポジトリの調査結果は、レポート内で個別に紹介されています。

影響が懸念されるリポジトリに調査対象を絞るため、スター数と特定のキーワードを基準にリポジトリをフィルタリングしました。合計11,900件のリポジトリを調査し、脆弱な依存関係ファイル15,584件で、1,229,601件の脆弱性が見つかりました。

主な調査結果は次のとおりです。

  • 信頼できないデータのデシリアライゼーションは、最も多く見つかった脆弱性の種類でした。Javaリポジトリでは130,831件に上り、特定された脆弱性全体の40%を占めました。

  • JavaScriptではPrototype Pollutionが最も多く確認された脆弱性で、全体の62%を占めました。リポジトリ内の脆弱性は合計549,566件に上りました。

  • Pythonリポジトリの依存関係ファイル2,602件から見つかった72,082件の脆弱性のうち、16,590件は深刻度が高または重大でした。

  • 最後に、Rubyリポジトリで見つかった脆弱性の50%は、深刻度が重大または高に分類されました。

  • 脆弱性を最も多く報告した上位10名の研究者も、この調査で紹介されています。

RedHunt Labsとのこの注目すべき調査のアプローチ、手法、結果について、ぜひレポートをダウンロードしてご確認ください。

CTFを始めよう

オンデマンドのバーチャル入門ワークショップを視聴して、CTFの課題の解き方を学びましょう。

続きを読む

blog feature ai pink
Blog

PHP2Shellが最後ではない。次の脆弱性が最初に現れる場所

PHP2Shellは、エンジンレベルの欠陥がインターネットに公開されたアプリケーションをいかに速く危険にさらすかを示しました。次の脆弱性が公表される前に、外部からの資産把握、迅速なテスト、繰り返しの確認がなぜ重要なのかをご紹介します。