Issues
- Controls
- Issues
Issues list
Every issue is raised by a control, and has a unique ISSUE-XXXX identifier. The Controls page holds the full table of controls.
Click any issue for its full description, impact, before/after configuration examples, and remediation steps. Pick a provider tab below, or All for every issue code once, whichever provider raises it.
CI/CD provider
CI/CD Container Images
CI/CD Variables
Pipeline Composition
ISSUE-401Hardcoded job
Medium
ISSUE-402Include ref collides with both a tag and a branch upstream
Medium
ISSUE-403Outdated template
Low
ISSUE-404Forbidden include version
Medium
ISSUE-405Missing required template
High
ISSUE-406Forbidden override of required template
Medium
ISSUE-408Missing required component
High
ISSUE-409Forbidden override of required component
Medium
ISSUE-410Security job weakened
Critical
ISSUE-411Unverified script execution
High
ISSUE-412Docker-in-Docker service detected
High
ISSUE-413Docker-in-Docker with insecure daemon configuration
High
Access and Authorization
ISSUE-501Branch protection missing
Critical
ISSUE-502Merge request approval rule is below the minimum level of approvals required
High
ISSUE-503Merge request approval settings are not compliant
High
ISSUE-504No merge request approval rule covering all protected branches
High
ISSUE-505Branch protection configuration not compliant
High
ISSUE-506Merge request settings are not compliant
Medium
Security Source
Open Source CLI only
GitHub Actions issues are reported by the Open Source CLI only. Plumber Platform does not scan GitHub Actions workflows yet.
CI/CD Container Images
CI/CD Variables
CI/CD Secrets
Pipeline Composition
ISSUE-402Include ref collides with both a tag and a branch upstream
Medium
ISSUE-410Security job weakened
Critical
ISSUE-411Unverified script execution
High
ISSUE-412Docker-in-Docker service detected
High
ISSUE-413Docker-in-Docker with insecure daemon configuration
High
ISSUE-417Required action or reusable workflow is missing
High
Access and Authorization
Third-party actions
ISSUE-701Third-party action is not pinned by commit SHA
High
ISSUE-702Action is hosted in an archived repository
High
ISSUE-703Action version carries a published security advisory
Critical
ISSUE-705Release workflow restores a cache with an unscoped key
High
ISSUE-707Pinned SHA does not exist in upstream repository
Critical
ISSUE-713Action comes from an unauthorized source
High
ISSUE-714Action fetches and runs remote code from a mutable ref
High
ISSUE-715Action obfuscates a remote code fetch/exec
Critical
ISSUE-716Action source could not be verified
Low
CI/CD Container Images
CI/CD Variables
ISSUE-201Unprotected variable
GitLabMedium
ISSUE-202Unmasked variable
GitLabMedium
ISSUE-203Pipeline enables CI debug traceGitHub: Workflow enables runner debug logging
GitLabGitHubCritical
ISSUE-204Unsafe variable expansion
GitLabMedium
ISSUE-205Job variable overrides controlled variable
GitLabHigh
ISSUE-207Workflow inlines user input into a shell script
GitHubCritical
ISSUE-209Workflow writes untrusted content to $GITHUB_ENV
GitHubHigh
CI/CD Secrets
Pipeline Composition
ISSUE-401Hardcoded job
GitLabMedium
ISSUE-402Include ref collides with both a tag and a branch upstream
GitLabGitHubMedium
ISSUE-403Outdated template
GitLabLow
ISSUE-404Forbidden include version
GitLabMedium
ISSUE-405Missing required template
GitLabHigh
ISSUE-406Forbidden override of required template
GitLabMedium
ISSUE-408Missing required component
GitLabHigh
ISSUE-409Forbidden override of required component
GitLabMedium
ISSUE-410Security job weakened
GitLabGitHubCritical
ISSUE-411Unverified script execution
GitLabGitHubHigh
ISSUE-412Docker-in-Docker service detected
GitLabGitHubHigh
ISSUE-413Docker-in-Docker with insecure daemon configuration
GitLabGitHubHigh
ISSUE-417Required action or reusable workflow is missing
GitHubHigh
Access and Authorization
ISSUE-501Branch protection missing
GitLabGitHubCritical
ISSUE-502Merge request approval rule is below the minimum level of approvals required
GitLabHigh
ISSUE-503Merge request approval settings are not compliant
GitLabHigh
ISSUE-504No merge request approval rule covering all protected branches
GitLabHigh
ISSUE-505Branch protection configuration not compliant
GitLabGitHubHigh
ISSUE-506Merge request settings are not compliant
GitLabMedium
Third-party actions
ISSUE-701Third-party action is not pinned by commit SHA
GitHubHigh
ISSUE-702Action is hosted in an archived repository
GitHubHigh
ISSUE-703Action version carries a published security advisory
GitHubCritical
ISSUE-705Release workflow restores a cache with an unscoped key
GitHubHigh
ISSUE-707Pinned SHA does not exist in upstream repository
GitHubCritical
ISSUE-713Action comes from an unauthorized source
GitHubHigh
ISSUE-714Action fetches and runs remote code from a mutable ref
GitHubHigh
ISSUE-715Action obfuscates a remote code fetch/exec
GitHubCritical
ISSUE-716Action source could not be verified
GitHubLow
Workflow triggers and permissions
Issues status
In the Plumber Platform, an issue carries one of four statuses:
- Detected: the default state of a newly discovered issue.
- In progress: somebody started working on the fix.
- Dismissed: somebody assessed the issue and set it aside. A dismissed issue stays ignored when a later analysis detects it again.
- Fixed: the issue is fixed, or no longer detected. Reintroduced and detected again, it goes back to Detected.
The usual lifecycle: