GitHub バグバウンティプログラムの質向上と責任共有、そして未来
GitHub はセキュリティ研究コミュニティの質を維持するため、バグバウンティプログラムの提出基準を引き上げ、実証可能な証明とスコープ遵守を厳格化すると発表した。
キーポイント
提出ボリューム増加と質の低下への対応
AI ツールの普及によりセキュリティ研究の参入障壁が下がった結果、実害のない理論的な報告や重複する報告が増加しており、これに対する厳格なフィルタリングが必要となった。
強固な提出要件の定義
今後は「動作する証明概念(PoC)」と「具体的なセキュリティインパクトの実証」が必須となり、単なる理論的な可能性の提示は不十分として却下される。
スコープ外項目と検証プロセスの徹底
DMARC/SPF 設定やセキュリティヘッダー欠如など既知のスコープ外項目への報告を禁止し、ツールや AI を使用した場合でも手動での検証(偽陽性の排除)を義務付ける。
AI ツールの積極的な活用方針
GitHub はセキュリティ研究における AI ツールの利用に反対せず、むしろそれを「力率の増幅器」として位置づけ、内部プログラムでも積極的に採用していることを明言した。
AI ツールの使用と検証の重要性
AI ツールはセキュリティ研究の増幅器として歓迎されるが、提出された発見は必ず再現・検証され、実証可能な PoC を伴う必要がある。
報告書の品質と構造化
効果的な報告書には、問題の要約、明確な再現手順(証拠付き)、および攻撃者の達成できる影響の説明という 3 つの要素が必要である。
GitHub の共有責任モデル
プラットフォームは悪意あるコンテンツの検出に注力するが、信頼すべきリポジトリの選択やコードの実行前レビューなど、ユーザー自身のセキュリティ責任も明確にある。
影響分析・編集コメントを表示
影響分析
この発表は、AI ツールの普及に伴うセキュリティ研究の「量」から「質」への転換を象徴する重要な転換点です。開発者コミュニティ全体に対して、ツールを活用することと、その結果を検証・実証する責任を明確に分離するよう求めるメッセージであり、今後のバグバウンティプログラムの運用基準が業界標準として再定義される可能性があります。
編集コメント
AI ツールの普及でセキュリティ研究の裾野が広がった一方で、ノイズが増加している現状に対し、プラットフォーム側が主導して基準を明確化した点は非常に重要です。研究者にとっては「ツールを使うな」ではなく「使った結果を検証せよ」という責任の所在が再定義されたと言えます。
セキュリティ研究コミュニティは、GitHub の最大の資産の一つです。世界中の研究者が毎年、脆弱性の発見と修正を支援し、1 億 8000 万人以上の開発者にとってプラットフォームをより安全なものにしています。バグバウンティプログラムが存在する理由は、外部の研究者との協力がセキュリティを向上させる最も効果的な方法の一つであると信じているからです。私たちはこの取り組みに対して深くコミットし続けています。
しかし、すべてのバグバウンティプログラムと同様に、変化する環境に適応する必要があります。私たちが観察していること、それに対する対応、そして GitHub のようなプラットフォームのセキュリティ境界についてどのように考えているかをお伝えします。
ボリュームの問題
過去 1 年間、業界全体の提出件数は大幅に増加しました。AI を含む新しいツールがセキュリティ研究への参入障壁を下げたことは、多くの点で肯定的な発展です。攻撃対象領域を探求する人が増えることは、実際の課題を見つける機会が増えることを意味します。
しかし、正当な報告の増加に伴い、実際のセキュリティ影響を示さない提出件数が急増していることも確認しています。これには、概念実証(Proof of Concept)を伴わない報告や、精査に耐えられない理論的な攻撃シナリオ、すでに公開した不適切リストに含まれる発見などが含まれます。これは GitHub 固有の問題ではありません。業界全体のプログラムが同じ課題に直面しており、一部では完全に終了したケースもあります。
私たちはそのような方向には進みたくありません。むしろ、プログラムをより良くするために投資したいと考えています。
What makes a strong submission
質の高い提出物とは何か
私たちは、完全な提出物とみなす基準をより厳しくしています。今後は、以下の基準に照らして報告書をより厳格に評価します:
動作する概念実証(PoC)と明確なセキュリティ影響の提示。影響を記述するだけでなく、実際に示してください。攻撃者が実際に何を実現できるのか?実際の悪用と具体的なセキュリティ影響を実証する動作する PoC が必要です。理論的に存在するだけでなく、越えられる境界線を示してください。「これが~につながる可能性がある」という報告で、それが実際に起こることを示さない場合、それは不完全です。
スコープと対象外発見事項の理解。提出前に、当社のスコープおよび対象外発見事項リストを確認してください。既知の対象外カテゴリ(DMARC/SPF/DKIM 設定、ユーザー列挙、攻撃経路が実証されていないセキュリティヘッダーの欠如など)を扱う報告書は「適用なし」として処理され、HackerOne Signal や評判に影響を与える可能性があります。
提出前の検証。スキャナ、静的解析ツール、AI アシスタントなどどのようなツールを使用する場合でも、提出前に出力を検証する必要があります。手動レビューを経た偽陽性は、誰かの時間を無駄にする前に検出されます。そうでないものは単なるノイズに過ぎません。
セキュリティ研究における AI の活用を歓迎します
これを明確にしておきます:AI ツールを利用する研究者に対して問題はありません。AI は力率を高める要因であり、セキュリティ研究においてその役割がますます重要になると期待しています。私たちも内部のセキュリティプログラムで AI を活用しており、外部の優秀な研究者たちも同様に利用している様子を確認しています。歓迎します。
私たちが求めているのは、これまで一貫して期待してきた基準と同じものです:検証です。AI の支援を受けた発見であっても、検証され、再現され、動作する概念実証(PoC)を伴って提出されたものであれば素晴らしい報告となります。一方、検証も再現も影響の実証もないまま出力されたものは該当しません。これは新しい基準ではなく、スキャナ出力や静的解析、あるいはその他のツールに対して適用しているのと同じ基準です。提出物の正確性に対する責任は、人間である研究者にあります。
また、研究者の皆様には、報告書を簡潔かつ構造化して作成いただくようお願いいたします。優れた報告書には次の 3 つの要素が必要です:問題の短い要約、サポート証拠(スクリーンショット、HTTP リクエスト、ターミナル出力)を伴う明確な再現手順、そして攻撃者が実際に達成できることを説明する影響記述です。それだけです。多頁にわたる理論的な物語や、背景情報の繰り返し、AI 生成による埋め草のような冗長な報告書は、実際の発見が埋もれてしまうため、トリアージ(選別)を遅らせてしまいます。報告書が明確で直接的であればあるほど、私たちは迅速に対応できます。
ツールは何でも構いません。重要なのは作業の質です。
GitHub のセキュリティモデルを理解する:共有責任
私たちが頻繁に目にするあるパターンには、独自の議論の余地があります。多くの報告書では、ユーザーが悪意のあるリポジトリや作成された課題、信頼できないコードなど攻撃者が制御するコンテンツと相互作用し、望ましくない結果を経験するシナリオが記述されています。これらの報告は概して文章が良く、観察点も技術的に正確ですが、セキュリティの境界線がどこにあるのかを誤解しています。
私たちは、プラットフォーム全体にわたる悪意のあるコンテンツの検出と処理のために、自動化されたスキャンから手動レビューに至るまで、システムとチームに多大な投資を行っています。ただし、GitHub は共有責任モデルに基づいて運営されています。ユーザーには以下の責任があります:
信頼するリポジトリ、課題、コードを選択すること。GitHub には 6 億以上のリポジトリがホストされています。それらすべてが悪意のないものではありません。ユーザーは、自分が相互作用するものについて判断を下すことが期待されます。
実行または相互作用を行う前にコンテンツを確認すること。これはコード、スクリプト、ワークフロー、およびその他の実行可能コンテンツに適用されます。
リポジトリをクローンすることは、そのコードを信頼することを選択することを理解すること。Git フック、ビルドスクリプト、および他のリポジトリレベルの自動化は、ユーザーがそのリポジトリをチェックアウトすることを選んだために実行されます。
自身の環境を安全に構成すること。トークン管理、認証情報の保存、ローカルセキュリティ設定はユーザーの責任です。
「攻撃」には、被害者が攻撃者によって制御されたコンテンツを積極的に探し出し、それと関与することが必要となるケースがあります(悪意のあるリポジトリのクローン作成、信頼できないコードの分析を AI ツールに依頼する、改ざんされたファイルを開くなど)。このような場合、セキュリティ境界は、そのコンテンツを信頼するというユーザーの判断によって定義されます。これらのシナリオは通常、GitHub のセキュリティ制御を迂回するものとはみなされません。
一般的な例
研究者が責任範囲を適切に把握できるよう、共有責任に該当するパターンをいくつか以下に示します。
シナリオ|なぜそれが共有責任なのか
ユーザーが AI ツールに入力したコンテンツを通じたプロンプトインジェクション|ユーザーがそのコンテンツを信頼すると決定した
ユーザーがチェックアウトしたリポジトリ内で実行される Gitフックまたはフィルタによるコードの実行|これは設計上、Git の動作原理そのものです
ユーザーがクローンしたリポジトリ内の悪意のあるコンテンツ|クローンは信頼の行為です
信頼できない入力を処理する際に LLM が予期せぬ出力を生成する|ユーザーがその入力を提供すると決定しました
これらの分野における研究は依然として極めて価値があります。もし、私たちの防御に盲点がある(ユーザーが悪意のあるコンテンツを積極的に信頼することを必要とせず、実際のセキュリティ制御を迂回する方法)と考えられる場合は、ぜひお知らせください。それが私たちが最も聞きたい内容です。そのような発見は、私たちが受け取る中で最も影響力のある提出物の一部となります。また、利用規約に違反するコンテンツを見つけた場合は、必ず報告してください。
研究者にとっての意味
すでに質の高い研究を提出されている方々へ、ありがとうございます。あなた方にとって変わることはありませんが、キューのノイズを削減することで、対応時間がより迅速になります。
バグバウンティに新しく参加される方、ようこそ!数分時間を割いてスコープをお読みいただき、対象外リストを確認した上で、提出前に動作する概念実証(PoC)の構築にお投資ください。新規研究者からの質の高い報告は常に高く評価され、感謝されています。
もしこれまで数量を優先されてきたのであれば、深さへとシフトすることをお勧めします。1 つのよく調査され検証された発見は、10 の推測に基づく発見よりも、バウンティ報酬と評判の両面で価値があります。当プログラムから最も多くの報酬を得ている研究者こそが、深く掘り下げる人々です。
低リスクな発見に対する報酬方法の変更
すべての有効な報告が意味のあるセキュリティリスクを意味するわけではありません。一部の報告は、攻撃に悪用されるものではありませんが、強化の機会やドキュメント上のギャップを特定しており、それでも私たちが改善を行うべき点を示しています。そのような作業にも感謝しています。
今後はこれらのケースに対する扱いを更新します。著しいセキュリティへの影響を示さないものの、コードまたはドキュメントの修正につながる報告については、バウンティ報酬ではなく GitHub のグッズ(スワッグ)として表彰いたします。これにより貢献を認めつつ、プラットフォームセキュリティに最も大きな影響を与える発見に対してバウンティリソースを集中させることができます。
低リスクな発見における数量最適化よりも、研究者がより深く高インパクトのある研究に時間を投資し、それに相応しい報酬を得ることを望んでいます。
今後の展望
私たちは、GitHub のバグバウンティプログラムを、研究者およびプラットフォームのセキュリティのために業界最高水準の一つにするために尽力しています。つまり、より迅速なトリアージ(選別)、明確なコミュニケーション、そして有効な発見が適切な注目と報酬を得られるようにすることです。品質基準を引き上げることは、その投資の一部です。
セキュリティ研究者は、それを利用するすべての開発者にとって GitHub をより安全なものにしています。この取り組みは重要であり、私たちはそれを当然のこととして扱いません。
ハッキングを楽しんでください!
本記事「Raising the bar: Quality, shared responsibility, and the future of GitHub’s bug bounty program」は、The GitHub Blog で最初に公開されました。
原文を表示
The security research community is one of GitHub’s greatest assets. Every year, researchers from around the world help us find and fix vulnerabilities, making the platform safer for over 180 million developers. Our bug bounty program exists because we believe that collaboration with external researchers is one of the most effective ways to improve security, and we remain deeply committed to it.
But like every bug bounty program, we’re adapting to a changing landscape. We want to share what we’re seeing, what we’re doing about it, and how we think about the security boundaries of a platform like GitHub.
The volume problem
Over the past year, submission volume across the industry has grown significantly. New tools, including AI, have lowered the barrier to entry for security research, which in many ways is a positive development. More people exploring attack surfaces means more opportunities to find real issues.
However, alongside the growth in legitimate reports, we’ve seen a sharp increase in submissions that don’t demonstrate real security impact. These include reports without a proof of concept, theoretical attack scenarios that don’t hold up under scrutiny, and findings that are already covered by our published ineligible list. This isn’t unique to GitHub. Programs across the industry are grappling with the same challenge, and some have shut down entirely.
We don’t want to go that direction. Instead, we want to invest in making our program better.
What makes a strong submission
We’re raising the bar on what we consider a complete submission. Going forward, reports will be evaluated more strictly against these criteria:
A working proof of concept with demonstrated security impact. Show us the impact, don’t just describe it. What could an attacker actually achieve? We need a working proof of concept that demonstrates real exploitation and concrete security impact. Show us the boundary that can be crossed, not just that one theoretically exists. If your report says “this could lead to…” but doesn’t show that it does, it’s incomplete.
Awareness of scope and ineligible findings. Before submitting, review our scope and ineligible findings list. Reports covering known ineligible categories (DMARC/SPF/DKIM configuration, user enumeration, missing security headers without a demonstrated attack path, and others) will be closed as Not Applicable, which may impact your HackerOne Signal and reputation.
Validation before submission. No matter what tools you use (scanners, static analysis, AI assistants), you need to validate the output before submitting. A false positive that’s been manually reviewed is caught before it wastes anyone’s time. One that hasn’t is just noise.
We welcome AI in security research
We want to be explicit about this: we have no problem with researchers using AI tools. AI is a force multiplier, and we expect it to play an increasing role in security research. We use AI across our own internal security programs, and we’re seeing the best external researchers do the same. We welcome it.
What we need is the same standard we’ve always expected: validation. An AI-assisted finding that’s been verified, reproduced, and submitted with a working proof of concept is a great submission. An unvalidated output submitted as-is without reproduction or demonstrated impact is not. This isn’t a new standard. It’s the same standard we apply to scanner output, static analysis, or any other tool. The human researcher is accountable for the accuracy of the submission.
We’d also ask researchers to keep reports concise and structured. A strong report has three things: a short summary of the issue, clear steps to reproduce with supporting evidence (screenshots, HTTP requests, terminal output), and an impact statement explaining what an attacker can actually achieve. That’s it. Verbose reports such as multi-page theoretical narratives, restated background context, or AI-generated filler slow down triage because the actual finding gets buried. The clearer and more direct your report, the faster we can act on it.
The tools don’t matter. The quality of the work does.
Understanding GitHub’s security model: Shared responsibility
One pattern we see frequently deserves its own discussion. Many reports describe scenarios where a user interacts with attacker-controlled content (a malicious repository, a crafted issue, untrusted code) and experiences an undesirable outcome. These reports are often well-written and technically accurate in their observations, but they misunderstand where the security boundary lies.
We invest heavily in systems and teams dedicated to detecting and handling malicious content across the platform, from automated scanning to manual review. That said, GitHub operates on a shared responsibility model. Users are responsible for:
Choosing which repositories, issues, and code they trust. GitHub hosts over 600 million repositories. Not all of them are benign. Users are expected to exercise judgment about what they interact with.
Reviewing content before executing or interacting with it. This applies to code, scripts, workflows, and any other executable content.
Understanding that cloning a repository means choosing to trust that code. Git hooks, build scripts, and other repository-level automation execute because the user chose to check out that repository.
Configuring their own environment securely. Token management, credential storage, and local security settings are the user’s responsibility.
When an “attack” requires the victim to actively seek out and engage with attacker-controlled content (cloning a malicious repo, asking an AI tool to analyze untrusted code, opening a crafted file), the security boundary is the user’s decision to trust that content. These scenarios generally don’t represent a bypass of GitHub’s security controls.
Common examples
To help researchers calibrate, here are patterns we see regularly that fall under shared responsibility:
ScenarioWhy it’s shared responsibility
Prompt injection via content the user chose to feed to an AI toolThe user decided to trust that content
Git hooks or filters executing code in a repo the user checked outThis is how Git works by design
Malicious content in a repository the user clonedCloning is an act of trust
LLM producing unexpected output when processing untrusted inputThe user chose to provide that input
Research in these areas is still extremely valuable. If you think you’ve found a blind spot in our defenses (a way to bypass an actual security control that affects users without requiring them to actively trust malicious content), that’s exactly what we want to hear about. Those findings are some of the most impactful submissions we receive. And if you come across content that violates our Terms of Service, please report it.
What this means for researchers
If you’re already submitting quality research, thank you. Nothing changes for you except faster response times as we reduce queue noise.
If you’re newer to bug bounty, welcome! Take a few minutes to read our scope, review the ineligible list, and invest in a working proof of concept before submitting. Quality submissions from new researchers are always valued and appreciated.
If you’ve been prioritizing volume, we’d encourage a shift toward depth. One well-researched, validated finding is worth more than 10 speculative ones, both in bounty payout and reputation. The researchers who earn the most from our program are the ones who go deep.
Changes to how we reward low-risk findings
Not every valid submission represents a meaningful security risk. Some reports identify hardening opportunities or documentation gaps that, while not exploitable, still lead to improvements we choose to make. We appreciate that work.
Going forward, we’re updating how we handle these cases. Submissions that don’t demonstrate significant security impact but do result in a code or documentation fix will be recognized with GitHub swag rather than a bounty payout. This lets us acknowledge the contribution while focusing our bounty resources on the findings that have the greatest impact on platform security.
We’d rather see researchers invest their time in deeper, high-impact research and be compensated accordingly than optimize for volume on low-risk findings.
Looking ahead
We’re committed to making GitHub’s bug bounty program one of the best in the industry, for researchers and for the security of the platform. That means faster triage, clearer communication, and ensuring that valid findings get the attention and compensation they deserve. Raising quality standards is part of that investment.
Security researchers make GitHub safer for every developer who depends on it. That work matters, and we don’t take it for granted.
Happy hacking!
The post Raising the bar: Quality, shared responsibility, and the future of GitHub’s bug bounty program appeared first on The GitHub Blog.
関連記事
今日のまとめ
AI日報で今日の重要ニュースをまとめ読み