You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
New Rule: CTR-012 Safe-Outputs Wildcard Push Scope
push_to_pull_request_branch_validation.go detects two misconfiguration patterns when safe-outputs.push-to-pull-request-branch: target: "*" is used:
No wildcard fetch — target "*" allows pushing to any PR branch, but without fetch: ["*"] in checkout the agent cannot reach those branches at runtime (warning suppressed for public repos)
No access constraints — no title-prefix or labels filter means the agent may push to any PR with no additional gating
This threat is distinct from CTR-008 (which addresses the pull_request_target pwn-request attack vector) — CTR-012 addresses unconstrained write scope within the safe-outputs subsystem.
The bundle file is available in the agent artifact in the workflow run linked above.
To create a pull request with the changes:
# Download the artifact from the workflow run
gh run download 25590431982 -n agent -D /tmp/agent-25590431982
# Fetch the bundle into a local branch
git fetch /tmp/agent-25590431982/aw-spec-ctr-012-safe-outputs-wildcard-push-scope.bundle refs/heads/spec/ctr-012-safe-outputs-wildcard-push-scope:refs/heads/spec/ctr-012-safe-outputs-wildcard-push-scope-049ac02d8fa09674
git checkout spec/ctr-012-safe-outputs-wildcard-push-scope-049ac02d8fa09674
# Push the branch to origin
git push origin spec/ctr-012-safe-outputs-wildcard-push-scope-049ac02d8fa09674
# Create the pull request
gh pr create --title '[compiler-threat-spec] spec: add CTR-012 and update rule mappings in compiler threat detection spec' --base main --head spec/ctr-012-safe-outputs-wildcard-push-scope-049ac02d8fa09674 --repo github/gh-aw
Summary
Daily threat spec optimizer run (2026-05-09). Reconciled implementation against
specs/compiler-threat-detection-spec.md.Threats Reviewed
pkg/workflow/*validation*.gofiles against the existing CTR-001 through CTR-011 catalog.Already-Covered Threats (Mapping Updates Only)
The following implementation files existed but were not reflected in the spec's Section 6.1 mapping table:
strict_mode_network_validation.go*domains in strict modeexpression_syntax_validation.goheredoc_validation.gogithub_app_permissions_validation.goNew Rule: CTR-012 Safe-Outputs Wildcard Push Scope
push_to_pull_request_branch_validation.godetects two misconfiguration patterns whensafe-outputs.push-to-pull-request-branch: target: "*"is used:"*"allows pushing to any PR branch, but withoutfetch: ["*"]in checkout the agent cannot reach those branches at runtime (warning suppressed for public repos)title-prefixorlabelsfilter means the agent may push to any PR with no additional gatingThis threat is distinct from CTR-008 (which addresses the
pull_request_targetpwn-request attack vector) — CTR-012 addresses unconstrained write scope within the safe-outputs subsystem.Rule IDs Changed
Files Changed
specs/compiler-threat-detection-spec.md— spec v1.0.2References: §25590431982
Note
This was originally intended as a pull request, but the git push operation failed.
Workflow Run: View run details and download bundle artifact
The bundle file is available in the
agentartifact in the workflow run linked above.To create a pull request with the changes: