Treat the issue as an authorization failure in the CI/CD control plane. Review whether repository automation can create or modify workflows, then restrict token scope, patch affected GitHub Enterprise Server instances, and verify that build secrets are only available to tightly governed workflows. The goal is to prevent privilege escalation from routine automation into access to sensitive secrets and production-linked credentials.
When a workflow can be created without the expected permission
This is a control-plane authorization failure, not just a GitHub settings issue. Security teams should treat it as a path that can let automation alter build logic, trigger privileged pipelines, or reach secrets that were assumed to be protected. The practical response is to constrain who can create or modify workflows, then verify that the CI/CD trust boundary still holds.
At a minimum, review repository and organization permissions, token scopes, branch protection, and any enterprise server version affected by the workflow permission weakness. The right question is not only whether the workflow file can be created, but whether that creation can change what runs, what secrets are exposed, and what downstream credentials become reachable.
The control failure often matters because workflow files are executable policy. If an attacker or unauthorized automation can introduce or replace them, they may be able to convert ordinary repository access into code execution, secret access, or release-path abuse. Security teams should assess whether the environment allows that escalation before assuming the existing GitHub permission model is doing the job.
What the failure means for CI/CD authorization
A workflow permission gap changes the trust model for the entire pipeline. The issue is broader than source-code integrity because workflows can define runners, job steps, environment use, and access to build-time secrets. If creation is possible without the expected guardrail, the system may be trusting file placement as a substitute for authorization.
That is why teams should separate “can commit code” from “can define execution.” The latter is a higher-risk capability because it may influence deployment credentials, signing material, package publication, or cloud access inherited during builds. GitHub Actions security guidance should be treated as part of the authorization design, not as a post-hoc hardening task, and the CI/CD Pipeline Identity Security Guide is a useful reference for that control boundary.
When the issue exists on GitHub Enterprise Server, patching becomes part of the answer because the weakness may be platform-level rather than repository-specific. Teams should also verify whether tokens, installation permissions, and reusable workflow relationships expand the blast radius beyond the first repository touched.
For broader identity and privilege design, the key principle is least privilege at the workflow layer. A workflow should only receive the credentials and scopes needed for the exact job, and protected secrets should never be available just because a file exists in the repository. That is the same control logic behind Privileged Access Management Guide and Authorisation Models Guide.
How to reduce the blast radius after discovery
The immediate response should be to inventory every repository where workflow creation, modification, or reuse is allowed, then compare that against where secrets, deployment rights, and publishing tokens are used. If workflow authoring and secret access are not tightly separated, assume the blast radius is larger than expected until proven otherwise.
Security teams should then narrow token scope, lock down who can define or approve workflows, and confirm that runners and environment protections are enforced consistently. If the organization uses reusable workflows or centralized CI/CD patterns, review whether the control weakness propagates through those dependencies as well. A weak workflow permission in one place can become a platform-wide problem when the same execution path is reused across many repositories.
Practitioners should also validate the secret-handling model, because the real damage usually appears when workflow creation and secret exposure intersect. The security objective is to keep sensitive build credentials only in tightly governed workflows, not merely to prevent someone from editing YAML. The Cloud Workload Identity Guide is relevant here because it reinforces keyless patterns and temporary credentials where static secrets are the failure point.
For GitHub-focused environments, compare the current state with the OWASP Non-Human Identity Top 10, especially around secret leakage, overprivilege, and insecure authentication. If a workflow can be introduced without the expected permission, the likely downstream failure is not the file itself, but the access path it opens.
Standards & Framework Alignment
This section maps relevant standards and security frameworks to the operational risks and controls described in this guidance.
OWASP Non-Human Identity Top 10 and OWASP API Security Top 10 address the attack and risk surface, while NIST SP 800-53 Rev 5, OWASP ASVS and NIST Zero Trust (SP 800-207) set the governance and control requirements practitioners need to meet.
| Framework | Control / Reference | Relevance |
|---|---|---|
| OWASP Non-Human Identity Top 10 | NHI-05 — Overprivileged NHI | Workflow creation with secret access creates an overprivilege path in CI/CD. |
| NHI-02 — Secret Leakage | The issue can expose build secrets through unauthorized workflow execution. | |
| Recommendation — Restrict workflow permissions and remove excess secret access from build identities. Protect build secrets with tighter workflow gating and scoped credentials. | ||
| NIST SP 800-53 Rev 5 | AC-6 — Least Privilege | Workflow authoring and execution need least-privilege separation. |
| IA-5 — Authenticator Management | Token scope and credential handling are central to the failure mode. | |
| Recommendation — Limit workflow creation and token permissions to the minimum required. Rotate and scope tokens so workflows cannot inherit unnecessary authority. | ||
| OWASP ASVS | V8 — Authorization | The issue is fundamentally an authorization failure in the pipeline control plane. |
| Recommendation — Enforce explicit authorization for workflow creation and execution changes. | ||
| OWASP API Security Top 10 | API5 — Broken Function Level Authorization | Unauthorized workflow creation is analogous to broken function-level control. |
| Recommendation — Map who can invoke workflow-management functions and close unauthorized paths. | ||
| NIST Zero Trust (SP 800-207) | Zero Trust Architecture | CI/CD trust should be verified continuously rather than assumed from file location. |
| Recommendation — Require explicit verification before granting workflows access to protected resources. | ||
Practitioner Guidance
What to verify: Confirm which identities can create, modify, or reuse workflows, and test whether those identities can also reach protected secrets or deployment credentials. If yes, treat the issue as a privilege-escalation path, not a cosmetic policy gap.
What to prioritize: Restrict workflow authoring first, then reduce token scope and secret exposure second. If you fix only one side, an attacker may still be able to turn a permitted change into a privileged execution path.
Common mistake: Teams often harden branch protections while leaving workflow creation and reusable workflow invocation too open. That leaves the control plane exposed even when the source tree looks protected.
Practitioner takeaway: The important test is whether repository automation can cross the boundary from code contribution into execution authority. If it can, the remediation must cover both permissions and secret access, because the risk is escalation through the pipeline, not just unauthorized file creation.
Related resources from NHI Mgmt Group
- How should security teams monitor GitHub Actions runners across Linux, Windows, and macOS without changing workflow logic?
- How should security and governance teams reduce notification fatigue without missing critical workflow actions?
- What should security teams do first after a GitHub Actions workflow in a public repository is found vulnerable to pull request abuse?
- How should security teams secure GitHub Actions runners without exposing internal services to the public internet?
Deepen Your Knowledge
Free weekly newsletter
Subscribe to the NHI & AI Identity Journal
The latest on NHI and Agentic AI security – articles, research, breaches, news and events every week.
Bonus 33% off our NHI Course when you subscribe.
Reviewed and updated by the NHIMG editorial team on September 29, 2026.
NHI Mgmt Group — the #1 independent authority on Non-Human Identity, IAM, and Agentic AI security. nhimg.org