All bounty submissions are rated by GitHub using a purposefully simple scale. Each vulnerability is unique, but the following is a rough guideline we use internally for rating and rewarding submissions across the public and private programs:
Critical severity issues present a direct and immediate risk to a broad array of our users or to a GitHub product itself. They often affect relatively low-level/foundational components in one of our application stacks or infrastructure. For example:
The amount listed for critical vulnerabilities is only a guideline, and GitHub may reward higher amounts for exceptional reports.
High severity issues allow an attacker to read or modify highly sensitive data that they are not authorized to access. They are generally more narrow in scope than critical issues, though they may still grant an attacker extensive access. For example:
Medium severity issues allow an attacker to read or modify limited amounts of data that they are not authorized to access. They generally grant access to less sensitive information than high severity issues. For example:
package-lock.jsonLow severity issues allow an attacker to access extremely limited amounts of data. They may violate an expectation for how something is intended to work but allow nearly no escalation of privilege or ability to trigger unintended behavior by an attacker. For example:
.npmrc file or from GitHub Enterprise Server being leaked in logsDefense in depth is a narrow category. It applies only when a report demonstrates that a security control GitHub intended to enforce reproducibly fails, but another independent protection prevents that failure from causing user impact.
The report must identify the intended security control, show the behavior it is supposed to prevent, and demonstrate the control failing. A product bug, unexpected behavior, unnecessary exposure, missing optional hardening, or deviation from a security best practice is not defense in depth merely because it is interesting or could be described in security terms.
Examples that may qualify include:
If the report does not demonstrate the failure of an intended security control, it does not qualify for this tier. Do not use defense in depth as a catch-all for findings with no demonstrated impact.
Qualifying defense in depth reports that result in a code or documentation fix receive GitHub swag rather than a cash bounty. If a failed control can be turned into demonstrated user impact, the finding is rated under the Low through Critical tiers instead.