Github Status Checks Not Required
Description
Detects when the protection rule of a GitHub repository's default branch requires no status check to pass before merging. Builds, tests and security scans then become advisory: a pull request whose pipeline failed can still be merged into the branch the organization releases from.
Detection Strategy
• Lists every repository in the GitHub organization, taking the default branch name and the caller's permissions from the listing itself
• Skips repositories where the credential lacks admin permission, since branch protection cannot be read without it
• Counts the required status checks declared in the branch protection settings, reading the checks field rather than the contexts field it replaces
• Reports a vulnerability when no status check is required, whether the setting is absent or present with an empty list
Search for vulnerabilities in your apps for free with Fluid Attacks' automated security testing! Start your 21-day free trial and discover the benefits of the Continuous Hacking Essential plan. If you prefer the Advanced plan, which includes the expertise of Fluid Attacks' hacking team, fill out this contact form.