Repository navigation
Static Analysis Report - 2026-03-19 #21753
Closed
Replies: 1 comment
|
This discussion has been marked as outdated by Static Analysis Report. A newer discussion is available at Discussion #21922. |
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Analysis Summary
Findings by Tool
Clustered Findings by Tool and Type
Zizmor Security Findings
Poutine Supply Chain Findings
Actionlint Linting Issues
{ a; b; } >> fileredirectioncopilot-requestspermission scopeTop Priority Issues
1.⚠️ CRITICAL REGRESSION:
untrusted_checkout_execRe-Emergedsmoke-workflow-call,smoke-workflow-call-with-inputsbash \$\{RUNNER_TEMP}/gh-aw/actions/*.shafter potentially checking out untrusted code.2.
github-env— High Severity (Persistent)ci-doctor,dev-hawk$GITHUB_ENVcan allow environment variable injection attacks affecting subsequent steps.3.
unpinned-uses— High Severity (New, Day 3)issue-monster4.
secrets-outside-env— Medium Severity (Dominant / Persistent)run:steps rather than via environment variables, which may allow secret values to appear in logs or be exposed via expressions.Fix Suggestion:
untrusted_checkout_exec(CRITICAL)Issue: Arbitrary Code Execution from Untrusted Code Changes
Severity: Error (highest poutine severity)
Affected Workflows: 2 workflows, 6 locations
Prompt to Copilot Agent:
Detailed Poutine Findings
smoke-workflow-call-with-inputs
untrusted_checkout_exec—bash \$\{RUNNER_TEMP}/gh-aw/actions/create_prompt_first.shuntrusted_checkout_exec—bash \$\{RUNNER_TEMP}/gh-aw/actions/validate_prompt_placeholders.shuntrusted_checkout_exec—bash \$\{RUNNER_TEMP}/gh-aw/actions/print_prompt_summary.shsmoke-workflow-call
untrusted_checkout_exec—bash \$\{RUNNER_TEMP}/gh-aw/actions/create_prompt_first.shuntrusted_checkout_exec—bash \$\{RUNNER_TEMP}/gh-aw/actions/validate_prompt_placeholders.shuntrusted_checkout_exec—bash \$\{RUNNER_TEMP}/gh-aw/actions/print_prompt_summary.shsmoke-copilot-arm
pr_runs_on_self_hosted—runs-on: ubuntu-24.04-arm(self-hosted runner, persistent from 2026-03-18)link-check
github_action_from_unverified_creator_used—gaurav-nelson/github-action-markdown-link-check@5c5dfc0ac2e225883c0e5f03a85311ec2830d368github_action_from_unverified_creator_used—gaurav-nelson/github-action-markdown-link-check@5c5dfc0ac2e225883c0e5f03a85311ec2830d368vet
github_action_from_unverified_creator_used—safedep/vet-action@v1(also unpinned!)super-linter
github_action_from_unverified_creator_used—super-linter/super-linter@61abc07d755095a68f4987d1c2c3d1d64408f1f9copilot-setup-steps
unverified_script_exec—curl -fsSL .../install-gh-aw.sh | bashgithub_action_from_unverified_creator_used—astral-sh/setup-uv@eac588ad8def6316056a12d4907a9d4d84ff7a3bdaily-copilot-token-report
unverified_script_exec—curl -fsSL .../install-gh-aw.sh | bashgithub_action_from_unverified_creator_used—astral-sh/setup-uv@eac588ad8def6316056a12d4907a9d4d84ff7a3bmcp-inspector
github_action_from_unverified_creator_used—astral-sh/setup-uv@e06108dd0aef18192324c70427afc47652e63a82actions/daily-perf-improver, actions/daily-test-improver
unpinnable_action— composite action descriptors (not pinnable by nature)Zizmor High Severity Details
github-env (High) — ci-doctor, dev-hawk
Workflow steps write to
$GITHUB_ENVwith potentially tainted values. This allows a compromised step to inject environment variables that affect all subsequent steps, potentially leaking secrets or altering behavior.Reference: (docs.zizmor.sh/redacted)
unpinned-uses (High) — issue-monster
An action is referenced by a mutable tag (e.g.
@v1) rather than an immutable SHA. If the tag is moved (or the action account is compromised), a different version of the action runs.Reference: (docs.zizmor.sh/redacted)
Historical Trends
*Note: pre-2026-03-18 actionlint counts were unique issues, not raw lines. Methodology changed.
Improvements vs yesterday:
Regressions vs yesterday:
Recommendations
untrusted_checkout_execregression insmoke-workflow-callandsmoke-workflow-call-with-inputs— identify the commit that re-introduced itgithub-env(High) findings inci-doctoranddev-hawkissue-monsterto a SHApr_runs_on_self_hostedinsmoke-copilot-arm(persistent warning)secrets-outside-env(affects all 175 workflows)untrusted_checkout_exechas now appeared twice — consider adding a CI gate to block merges that introduce itNext Steps
untrusted_checkout_execsmoke-workflow-call.mdandsmoke-workflow-call-with-inputs.mdgithub-envusage inci-doctoranddev-hawkissue-monsterunpinned action to a SHAvet.ymlsafedep/vet-action@v1can be pinned to a SHAReferences:
All reactions