🔒 Zizmor Security Analysis Report - November 2, 2025 #2997
Closed
Replies: 2 comments 1 reply
-
|
/q update the 3 agentic workflows with missing permissions (only add read permissions). See discussion. |
Beta Was this translation helpful? Give feedback.
1 reply
-
|
This discussion was automatically closed because it was created by an agentic workflow more than 1 week ago. |
Beta Was this translation helpful? Give feedback.
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.
-
🔒 Zizmor Security Analysis Report - November 2, 2025
This report presents the findings from a comprehensive security scan of all 67 agentic workflows in the repository using the zizmor security scanner.
Executive Summary
The security scan identified 18 findings across 3 issue types, with 3 High severity vulnerabilities that require immediate attention. All workflows compiled successfully, and the findings are concentrated in specific patterns that can be systematically addressed.
Key Highlights:
workflow_runtriggersFull Security Report
Security Scan Statistics
Findings Clustered by Issue Type
1.⚠️ dangerous-triggers (High Severity)
Count: 3 occurrences
Severity: High
Description: Use of fundamentally insecure workflow trigger
Reference: (redacted)#dangerous-triggers
Affected Workflows:
.github/workflows/ci-doctor.lock.ymlworkflow_run.github/workflows/dev-hawk.lock.ymlworkflow_run.github/workflows/smoke-detector.lock.ymlworkflow_runSecurity Impact:
Why This Matters:
The
workflow_runtrigger is a known security risk in GitHub Actions. When workflows are triggered viaworkflow_run, they execute with the permissions of the default branch's GITHUB_TOKEN, not the permissions of the triggering event. This creates an attack vector where malicious actors could craft pull requests that trigger these workflows with elevated privileges.2. template-injection (Low Severity)
Count: 12 occurrences
Severity: Low
Description: Code injection via template expansion
Reference: (redacted)#template-injection
Affected Workflows:
.github/workflows/duplicate-code-detector.lock.yml.github/workflows/mcp-inspector.lock.yml.github/workflows/smoke-codex.lock.yml.github/workflows/smoke-opencode.lock.ymlSecurity Impact:
All instances occur in the auto-generated "Setup MCPs" step name. This is likely a false positive or low-risk finding because:
Risk Assessment: Low risk due to limited exploitability in current context.
3. missing-permissions (Info)
Count: 3 occurrences
Severity: Info/Warning
Description: Missing required permissions for GitHub toolsets
Affected Workflows:
contents: write,issues: write,pull-requests: writeissues: read,pull-requests: readissues: read,pull-requests: readImpact:
While not a direct security vulnerability, missing permissions can lead to:
Note: The
example-permissions-warningworkflow appears to be an intentional example demonstrating this warning.Detailed Findings by Workflow
ci-doctor.lock.yml
workflow_runmonitoring "Daily Perf Improver" and "Daily Test Coverage Improver"dev-hawk.lock.yml
workflow_runmonitoring "Dev" workflow on copilot/* branchessmoke-detector.lock.yml
workflow_runmonitoring multiple smoke test workflowsduplicate-code-detector.lock.yml
mcp-inspector.lock.yml
smoke-codex.lock.yml
smoke-opencode.lock.yml
example-permissions-warning.md
python-data-charts.md, test-secret-masking.md
🔧 Fix Suggestion: dangerous-triggers (High Priority)
I've generated a comprehensive fix template for the dangerous-triggers vulnerability, our highest priority security issue.
Issue: 3 workflows using insecure
workflow_runtriggersSeverity: High
Affected Workflows: ci-doctor, dev-hawk, smoke-detector
Recommended Fix Approach
Replace
workflow_runtriggers with secure alternatives:Option 1: Use Post Steps (Recommended)
Modify parent workflows to trigger dependent workflows using post steps:
Option 2: Use Schedule Trigger
For monitoring workflows, use scheduled checks:
Detailed Fix Instructions
Full implementation guidance has been saved to cache memory at:
/tmp/gh-aw/cache-memory/fix-templates/dangerous-triggers.mdThis includes:
Copilot Agent Prompt
Use this prompt with a Copilot agent to automatically fix the vulnerabilities:
Historical Context
This is the first comprehensive zizmor security scan of the repository. Scan data has been stored in cache memory for future trend analysis:
/tmp/gh-aw/cache-memory/security-scans/2025-11-02.json/tmp/gh-aw/cache-memory/vulnerabilities/by-type.json/tmp/gh-aw/cache-memory/vulnerabilities/trends.json/tmp/gh-aw/cache-memory/fix-templates/dangerous-triggers.mdFuture scans will compare against this baseline to track:
Recommendations
Immediate Actions (Priority 1)
gh aw compile --zizmorShort-term Actions (Priority 2)
Review template-injection warnings in auto-generated code
Add missing permissions to workflows that need them
Long-term Actions (Priority 3)
Establish automated security scanning
Update workflow templates and guidelines
Consider adding zizmor to CI/CD
Success Metrics
Track these metrics to measure security improvement:
Next Steps
Scan Metadata:
Beta Was this translation helpful? Give feedback.
All reactions