Found means fixed:GitHubのセキュリティキャンペーンで大規模なセキュリティ負債を削減

Image of tomokota

本日より、GitHub Advanced SecurityとGitHub Code Securityのすべてのお客様がセキュリティキャンペーンをご利用いただけるようになりました。開発者とセキュリティチームのコラボレーションを促進することで、企業がセキュリティ負債をコントロールし、リスクを管理できるようにします。


セキュリティアラートの対応に時間を費やすよりも、機能の出荷に時間を費やしたいとお考えでしょう。そのため、Copilot Autofixのようなツールをプルリクエストに直接組み込み、チームがセキュリティ問題を最大60%速く修正できるようにし、手動での修正と比較して平均修復時間(MTTR)を大幅に短縮しています。Autofixは、脆弱性が本番環境に入る前に検出するのに役立ちます。これにより、バグ修正に費やす時間を減らし、コーディングにより多くの時間を費やすことができます。

しかし、既存のコードにすでに潜んでいる脆弱性についてはどうでしょうか?未解決のセキュリティ上の発見はすべて、無視できない増大するリスクである「セキュリティ負債」を増加させます。実際、私たちのデータによると、チームは通常、セキュリティ負債のわずか10%にしか対処しておらず、脆弱性の90%は優先順位が付けられず、未解決のまま残されています。

私たちのデータは、セキュリティ負債が皆様にとって最大のリスクであることを示しています。歴史的に見て、マージされたコードに残存するセキュリティ負債のうち、対処されるのはわずか10%でした。これは、今日までリスクの90%が優先順位付けされていなかったことを意味します。現在、私たちのデータによると、セキュリティキャンペーンに含まれるセキュリティ負債の55%が修正されました。

セキュリティキャンペーンは、セキュリティ専門家と開発者をつなぎ、脆弱性修正プロセスをワークフロー内で、かつ大規模に効率化することで、このギャップを解消します。Copilot Autofix を使用して、一度に最大 1,000 件のコードスキャンアラートに対するコード修正案を生成することで、セキュリティキャンペーンは、セキュリティチームがトリアージと優先順位付けを行うのを支援し、開発者は Autofix を使用して開発の勢いを損なうことなく問題を迅速に解決できます。

セキュリティキャンペーンの実践

昨年のGitHub Universeでセキュリティキャンペーンがパブリックプレビューとして公開されて以来、セキュリティ対策のさまざまな段階にある組織がキャンペーンを試すのを見てきました。組織全体のセキュリティ負債を減らすために使用された場合でも、重要なリポジトリのアラートを対象とした場合でも、セキュリティキャンペーンは、セキュリティ負債に取り組む開発者とセキュリティチームの両方に価値をもたらしてきました。

セキュリティキャンペーンは、開発者の生活を簡素化してくれます。複数のリポジトリのアラートを簡単にグループ化できるため、トリアージと優先順位付けにかかる時間が短縮され、Copilot Autofixを使用して最も重要な問題を迅速に修正できます。

Lumen社 DevSecOpsエンジニア、Jose Antonio Moreno氏

GitHubセキュリティキャンペーンは、私たちの開発チームにとって画期的なものです。既存の脆弱性について知ることができ、エンジニアが一丸となって修正に取り組めるようになり、修正にかかる時間も大幅に短縮されました。

Alchemy社 セキュリティエンジニア、GP氏

初期のお客様のサンプルでは、セキュリティキャンペーンに含まれるアラートの 55%が修正されたことがわかりました。セキュリティキャンペーン外のセキュリティ負債では約 10%にすぎなかったのと比較して、5.5 倍の改善です。これは、アラートがキャンペーンに含まれている場合、どのアラートに取り組むべきかの優先順位付けがセキュリティチームによって既に行われているため、セキュリティ負債の修正により多くの時間を費やすことができることを示しています。実際、私たちのデータによると、キャンペーンに含まれるアラートは、キャンペーンに含まれないアラートと比較して、開発者のエンゲージメントが約2倍高くなっています。

セキュリティキャンペーン:その仕組み

コードベースにすでに存在するセキュリティ問題のトリアージと優先順位付けは、通常のソフトウェア開発ライフサイクルの一環として行う必要があります。残念ながら、より多くのコードをより速くリリースするというプレッシャーに直面している製品チームは、セキュリティアラートを調べてどれに最初に対処すべきかを決定するのに十分な時間を費やすのに苦労しています。幸いなことに、ほとんどのソフトウェア組織には、これらのリスクを理解する専門家集団、つまりセキュリティチームがすでに存在します。セキュリティキャンペーンでは、開発者とセキュリティチームの異なる強みを生かし、セキュリティ負債に対処するための新しい協調的アプローチを実現します。

  1. セキュリティチームは、セキュリティキャンペーンにおいて、リポジトリ全体でどのリスクに対処する必要があるかを優先順位付けします。セキュリティキャンペーンには、キャンペーンの範囲設定を支援するために、よく使われるテーマ(MITRE Top 10 Known Exploited Vulnerabilitiesなど)に基づいた定義済みのテンプレートが用意されています。GitHub のセキュリティ概要には、全体的なリスク状況をまとめた統計やメトリクスも用意されています。
  2. キャンペーンのアラートが選択され、タイムラインが指定されると、キャンペーンの影響を受ける開発者に通知されます。キャンペーンで定義された作業は、開発者がGitHub上で作業しているところにもたらされ、他の機能作業と同じように計画・管理できます。
  3. Copilot Autofixは、キャンペーン内のすべてのアラートに対する自動修正案と、問題を説明するカスタムヘルプテキストの作成を直ちに開始します。アラートの修正は、差分を確認してプルリクエストを作成するのと同じくらい簡単になります。

重要なことは、セキュリティキャンペーンは単なるアラートのリストではないということです。アラートに加えて、キャンペーンは通知で補完され、開発者は自分(または自分のチーム)が責任を持つアラートを確実に認識できるようにします。開発者とセキュリティチームとのコラボレーションを強化するために、キャンペーンには、キャンペーンの進捗を監督し、開発者を支援する担当マネージャーも任命されます。もちろん、セキュリティマネージャーはGitHub上で組織レベルのビューを持ち、進捗を追跡して必要に応じて開発者と協力することができます。

本日より、キャンペーン関連の作業をより効果的に計画・管理するためのいくつかの新機能もご利用いただけます:

  • ドラフトセキュリティキャンペーン:セキュリティマネジャーは、キャンペーンの範囲を繰り返し検討し、開発者に公開する前にドラフトキャンペーンとして保存できるようになりました。ドラフトキャンペーンを使用することで、セキュリティマネジャーは、作業が本稼働する前に、最も優先順位の高いアラートが含まれていることを確認できます。
  • GitHub Issuesの自動作成:セキュリティマネジャーは、キャンペーンに含まれるアラートを含むリポジトリにGitHub Issuesを作成することができます。これらのIssueは、キャンペーンの進行に合わせて自動的に作成・更新され、チームがキャンペーン関連の作業を追跡・管理・議論するために使用できます。
  • 組織レベルのセキュリティキャンペーン統計:セキュリティマネジャーは、現在アクティブなキャンペーンおよび過去のキャンペーン全体の進捗状況を示す統計情報を集約して表示できるようになりました。
  • セキュリティキャンペーンの使い方については、GitHubドキュメントの「セキュリティキャンペーンについて」を参照してください。