Hijack CodeBuild project role (batch)
Can start a batch build on a project with override commands as its service role.
Grants escalation on its own.
codebuild:StartBuildBatchOn its own, codebuild:StartBuildBatch can start a batch build on a project with override commands as its service role. On a wide resource scope that alone reaches administrator access.
Why it is dangerous
A principal can call codebuild:StartBuildBatch on an existing CodeBuild project that already carries the service role, supplying a buildspecOverride whose shell commands are attacker-controlled. CodeBuild runs those commands on its managed infrastructure as the target role, no iam:PassRole and no codebuild:CreateProject needed, because the target role is already bound to the project. The commands read the target role's live credentials from the build environment or call AWS directly; if the target role is privileged this is full privilege escalation against a project that was already trusted.
In MITRE ATT&CK terms this maps to T1578, Modify Cloud Compute Infrastructure, under the privilege escalation tactic. AWS records it in CloudTrail as StartBuildBatch. The call is loud in CloudTrail and stands out from normal activity.
Detection
StartBuildBatchPrerequisites
An existing CodeBuild project with a service role attached; permission to start a batch build on it. Buildspec/command overrides must be permitted (the default).
MITRE ATT&CK
T1578 · Modify Cloud Compute InfrastructureTactic
Privilege Escalation
A control that would remove it: Restrict codebuild:StartBuildBatch on projects that carry a privileged service role; disallow buildspec overrides.
Whether to apply it depends on how the permission is used in your environment, so it is a business decision rather than an automatic fix. The same permission can be load-bearing in one account and pure risk in another.
Pathbreak confirms whether this path resolves in your account, ranks it against the others by how much it opens up, and uses your threat model and business context to show which paths are worth cutting.
Questions
What does codebuild:StartBuildBatch allow?
Can start a batch build on a project with override commands as its service role.
Can codebuild:StartBuildBatch escalate privileges on its own?
Yes. Held on a broad enough resource it reaches administrator access with no other permission.
How is hijack CodeBuild project role (batch) detected?
Watch for StartBuildBatch in CloudTrail. The call is loud in CloudTrail and stands out from normal activity.
How do you break this path?
A control that would remove it is: Restrict codebuild:StartBuildBatch on projects that carry a privileged service role; disallow buildspec overrides. Whether to apply it depends on how the permission is used in your account, so it is a business decision rather than an automatic fix.
Which MITRE ATT&CK technique is this?
T1578, Modify Cloud Compute Infrastructure, under the privilege escalation tactic.
Related paths
References
Find this in your own account
We run a read-only scan of one AWS account and show you which of these paths exist, ranked by blast radius, with the change that breaks each one. First validated paths within the hour.