[論文レビュー] Unpacking Security Scanners for GitHub Actions Workflows
要約: 9つの最先端静的解析ツールをGitHub Actionsワークフローで体系的に比較し、10個の弱点の共通分類に rules をマッピングし、596件の実世界ワークフローのデータセット上でカバレッジ、整合性、パフォーマンスを評価する。
GitHub Actions is a widely used platform to automate the build and deployment of software projects through configurable workflows. As the platform's popularity grows, it also becomes a target of choice for software supply chain attacks. These attacks exploit excessive permissions, ambiguous versions or the absence of artifact integrity checks to compromise the workflows. In response to these attacks, several security scanners have emerged to help developers harden their workflows. In this paper, we perform the first systematic comparison of 9 GitHub Actions Workflows security scanners. We compare them regarding scope (which security weaknesses they target), detection capabilities (how many weaknesses they detect), and performance (how long they take to scan a workflow). In order to compare the scanners on a common ground, we first establish a classification of 10 common security weaknesses that can be found in GitHub Actions Workflows. Then, we run the scanners against a curated set of 2722 workflows. Our study reveals that the landscape of GitHub Actions Workflows security scanners is very diverse, with both general purpose and focused scanners. More importantly, we provide evidence that these scanners implement fundamentally different analysis strategies, leading to major gaps regarding the nature and the number of reported security weaknesses. Based on these empirical evidence we make actionable recommendations for developers to harden their GitHub Actions Workflows.
研究の動機と目的
- GitHub Actionsワークフローのための10個の高レベルのセキュリティ弱点の分類を定義し、公正なツール間比較を可能にする。
- ベンチマーク用に積極的に保守され、ローカルで実行可能なスキャナのセットをキュレーションする。
- 大規模な実世界ワークフロー データセットを用いて、カバレッジ、整合性、実行時間の観点でスキャナを経験的に比較する。
- GitHub Actionsワークフローを強化するための開発者への実用的ガイダンスを提供する。
提案手法
- 初期候補30件から9つの最先端かつローカル実行可能なGitHub Actionsワークフロースキャナをキュレーションする。
- ツール間で84のルールを統合・クラスタリングして10項目の弱点分類を作成する。
- 各ツールの検出ルールを分類にマッピングし、弱点クラスのカバレッジを評価する。
- 77リポジトリの596件の実ワークフローをベンチマークに用いて検知の一貫性と実行時間を検討する。
- 安定性のためにワークフローごとにUnix時間を用いて実行時間を測定し、2回繰り返して測定する。
実験結果
リサーチクエスチョン
- RQ1RQ1: ツール間で同じワークフローの弱点クラスをどれだけ似たようにカバーしているか?
- RQ2RQ2: 同じワークフローでスキャナはどれだけ一貫して弱点を検出するか?
- RQ3RQ3: スキャナの実行時間特性とレポート機能はどうなっているか?
主な発見
- いかなる単一のスキャナも特定された弱点クラスすべてをカバーしない。いくつかは高度に特化しており、他は広範である。
- 特化型と汎用型のスキャナは、総合的なセキュリティカバレッジのために補完的である。
- ほとんどのスキャナはCI統合に十分高速だが、いくつかは遅延を modest に追加するアウトライヤーである。
- Zizmorとpoutineは評価対象ツールの中で広範な弱点カバレッジを提供する。
- スキャナの出力は弱点の解釈でばらつきがあり、報告される発見に相違を生む。
- オープンサイエンスリポジトリがデータと結果の全てのアクセスを提供する。
より良い研究を、今すぐ始めましょう
論文設計から論文執筆まで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。