Join our Newsletter — 33% off our NHI Course
Home› FAQ› Governance, Ownership & Risk› Where do CI/CD controls fail when self-hosted runners…
Governance, Ownership & Risk

Where do CI/CD controls fail when self-hosted runners are introduced?

← Back to all FAQ
By NHI Mgmt Group Editorial Team Updated October 10, 2026 Domain: Governance, Ownership & Risk

They fail when runners are treated as tooling instead of privileged identities. A self-hosted runner can execute workflows, access secrets and interact with the repository under inherited trust, which makes it a high-value persistence target. If runner inventory and approval are weak, the attacker can keep operating after the initial package compromise.

When self-hosted runners stop being “just build infrastructure”

CI/CD controls start to fail the moment a self-hosted runner is allowed to inherit trust without being treated as a privileged execution point. That runner can do more than execute a job, it can reach secrets, write artifacts, and interact with the repository and deployment path. Once that trust is broad, the runner becomes part of the attack surface rather than a neutral tool.

That shift matters because the control boundary is no longer the pipeline definition alone. It is the combination of runner identity, host access, secret exposure, and the permissions inherited from the workflow context. If the runner can reach production-relevant material, compromise of the runner can become compromise of the CI/CD system.

A useful way to think about this is as a change in privilege model. A managed ephemeral runner is typically constrained by design, while a self-hosted runner may persist, retain state, and sit closer to internal systems. The control question is therefore not “can it run the job,” but “what else can it touch if the job, the host, or the surrounding trust is abused?”

Why inherited trust and runner persistence create the real failure mode

The failure usually appears when approvals, inventory, and segmentation are too weak for the trust the runner has been given. If a runner is reachable from untrusted workflows, can access shared secrets, or has network access to sensitive services, an attacker can pivot from workflow execution into persistence. That is why CI/CD Pipeline Identity Security Guide is directly relevant, because it frames the runner as an identity and authorization problem, not just an operations problem.

Self-hosted runners also tend to accumulate risk through reuse. Long-lived hosts, cached credentials, residual workspace data, and broad registration rights all make it easier for a compromise to survive beyond the original malicious build. This is the same pattern seen when attackers abuse pipeline trust to expose secrets or plant persistence, as described in CI/CD pipeline exploitation case study.

When runner placement is too close to internal networks or production systems, the impact expands beyond source control. A compromised runner can become a bridge into repositories, package publishing, artifact signing, or secret-bearing services. That is why build integrity guidance such as SLSA matters here, even though the issue begins with execution trust rather than artifact provenance alone.

What controls actually hold when runners are self-hosted

The controls that still work are the ones that make the runner narrow, observable, and revocable. Treat each runner as a managed execution identity with a clear owner, a bounded job scope, and a deliberately small trust envelope. When that is in place, compromise is more likely to be contained to a single runner instance instead of becoming a pipeline-wide foothold.

Practitioners should verify four things before trusting a self-hosted runner: who can register it, what workflows can target it, which secrets and network paths it can reach, and how quickly it can be replaced if abused. If those answers are unclear, the runner is already overexposed. The same logic is reflected in CI/CD Pipeline Identity Security Guide and in ArtiPACKED 2024, where token exposure and runtime trust became the path to broader compromise.

Inventory is equally important. If teams cannot answer how many runners exist, where they run, and which repositories can schedule work onto them, approval becomes ceremonial. At that point, the environment is vulnerable to the same pattern seen in runner and workflow abuse campaigns: the attacker does not need to break the build system, only to live inside it long enough to collect secrets or maintain access.

Risk and Threat Considerations

Self-hosted runners are attractive to attackers because they combine execution authority with access to secrets, code, and sometimes internal networks. If the runner is persistent or weakly governed, a compromise can outlast the original malicious workflow and turn a single build event into a durable foothold.

Failure mechanism: Weak registration control, broad workflow targeting, or residual state allows an attacker to abuse the runner’s inherited trust, harvest secrets, and maintain access after the initial compromise.

Impact: The attacker may steal CI/CD secrets, alter builds, access internal services, or use the runner as a persistence point for further repository or supply-chain compromise.

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 addresses the attack and risk surface, while NIST SP 800-53 Rev 5 sets the governance and control requirements practitioners need to meet.

FrameworkControl / ReferenceRelevance
OWASP Non-Human Identity Top 10NHI-05 — Overprivileged NHISelf-hosted runners often inherit excessive execution rights.
NHI-01 — Improper OffboardingPersistent runners must be removed or rotated after use to prevent reuse.
NHI-07 — Long-Lived SecretsSelf-hosted runners can retain credentials and state across jobs.
Recommendation — Reduce runner permissions and isolate jobs to limit blast radius. Automate runner decommissioning and revoke stale registration credentials. Eliminate long-lived runner secrets and rotate any exposed credentials immediately.
NIST SP 800-53 Rev 5IA-9 — Service Identification and AuthenticationRunners act as non-human execution identities that must be authenticated.
AC-6 — Least PrivilegeRunner access should be bounded to prevent lateral movement and secret exposure.
Recommendation — Authenticate runners as distinct service identities and restrict their trust scope. Apply least privilege to runner permissions, secrets, and network access.

Practitioner Guidance

What to prioritise: Treat runner registration, targeting, and teardown as security controls, not platform administration. If a runner can execute privileged workflows, it should be scoped, monitored, and rapidly replaceable.

What to verify: Confirm that each runner has a documented owner, a bounded repository or branch scope, no unnecessary secret access, and a network path that is limited to the systems it truly needs.

Common mistake: Teams often harden the workflow file but leave the runner host broadly trusted. That leaves a gap where the control plane looks safe while the execution plane remains exploitable.

Practitioner takeaway: The key question is not whether the runner is self-hosted, but whether its trust is narrow enough that compromise cannot become persistence.

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.

NHIMG Editorial Note
Reviewed and updated by the NHIMG editorial team on October 10, 2026.
NHI Mgmt Group — the #1 independent authority on Non-Human Identity, IAM, and Agentic AI security. nhimg.org