Commit 0250d65
workflows: add zizmor GitHub Actions security scan
Add zizmor.yml GitHub Actions workflow that runs zizmor static analysis
against all SOF workflow files on every push to main and on every pull
request targeting main.
zizmor audits GitHub Actions workflows for security misconfigurations:
unpinned action references, credential persistence, template injection,
excessive permissions, pull_request_target misuse, poisoned pipeline
attacks, and other supply-chain risks.
While SOF already runs CodeQL analysis on workflows, zizmor covers a
complementary and broader set of GitHub Actions-specific attack patterns
that CodeQL does not detect. The two tools find different classes of
issues and running both gives better coverage than either alone.
A one-off manual scan (zizmor v1.25.2) of the existing SOF workflows
found no exploitable vulnerabilities. The primary findings were 31 cases
of actions referenced by mutable version tags instead of SHA hashes, and
22 checkouts missing `persist-credentials: false`. This workflow will
prevent new regressions of this kind from being merged.
The workflow follows the same conventions as the existing codeql.yml:
- top-level `permissions: {}` with only required grants at job level
- `actions/checkout` and `zizmorcore/zizmor-action` pinned to SHAs
- `persist-credentials: false` on the checkout step
- concurrency group that cancels superseded runs
Findings are uploaded as SARIF to the GitHub Security tab via GitHub
Advanced Security (SOF is a public repository). The run does not fail on
findings; use a GitHub Ruleset to make it a blocking merge gate.
Signed-off-by: Tomasz Leman <tomasz.m.leman@intel.com>1 parent c5c9e11 commit 0250d65
1 file changed
Lines changed: 37 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
0 commit comments