Skip to main content

Overview

The CI/CD scanner analyzes workflow files (.github/workflows/*.yml) and pipeline configurations for security misconfigurations that could allow attackers to compromise your build pipeline.

What it detects

Workflow injection

Severity: CRITICAL Using ${{ github.event.pull_request.title }} or other untrusted inputs directly in run: steps can allow an attacker to inject arbitrary shell commands via a malicious PR title or commit message.

Unpinned actions

Severity: HIGH Using mutable action references (uses: actions/checkout@v3) instead of pinned SHAs means an attacker who compromises the action repository can push malicious code that runs in your workflow.
Use Dependabot to keep pinned SHAs updated automatically.

Overprivileged tokens

Severity: HIGH Workflows with permissions: write-all or no explicit permissions default to read access to all repository resources.

Debug mode in production

Severity: MEDIUM ACTIONS_STEP_DEBUG: true or ACTIONS_RUNNER_DEBUG: true set in production workflows exposes detailed runner logs that may contain secrets.

Secrets in logs

Severity: HIGH Using echo ${{ secrets.MY_SECRET }} in a run step will print the secret to workflow logs — even though GitHub partially masks known secret values, the masking can be bypassed.

Sample output

Security resources