Techniques › T1677
T1677 Poisoned Pipeline Execution
execution — SaaS · attack.mitre.org · JSON
1
MITRE detection strategy
1
analytics
0
Sigma rules tagged attack.t1677
0
KEV CVEs mapped here
<p>Adversaries may manipulate continuous integration / continuous development (CI/CD) processes by injecting malicious code into the build process. There are several mechanisms for poisoning pipelines:</p>
- <li>In a <b>Direct Pipeline Execution</b> scenario, the threat actor directly modifies the CI configuration file (e.g.,
gitlab-ci.yml in GitLab). They may include a command to exfiltrate credentials leveraged in the build process to a remote server, or to export them as a workflow artifact.</li><li>In an <b>Indirect Pipeline Execution</b> scenario, the threat actor injects malicious code into files referenced by the CI configuration file. These may include makefiles, scripts, unit tests, and linters.</li><li>In a <b>Public Pipeline Execution</b> scenario, the threat actor does not have direct access to the repository but instead creates a malicious pull request from a fork that triggers a part of the CI/CD pipeline. For example, in GitHub Actions, the pull_request_target trigger allows workflows running from forked repositories to access secrets. If this trigger is combined with an explicit pull request checkout and a location for a threat actor to insert malicious code (e.g., an npm build command), a threat actor may be able to leak pipeline credentials. Similarly, threat actors may craft pull requests with malicious inputs (such as branch names) if the build pipeline treats those inputs as trusted. Finally, if a pipeline leverages a self-hosted runner, a threat actor may be able to execute arbitrary code on a host inside the organization’s network.</li>KEV CVEs mapped to this technique · CTID Mappings Explorer
None. No KEV entry in the public mapping names this technique. Given that 74.7% of KEV has no mapping at all, this says more about the mapping than about the technique.
Detection strategy · ATT&CK Enterprise v19.2
- DET0533 Detection Strategy for Poisoned Pipeline Execution via SaaS CI/CD Workflows v1.0
AN1473 SaaSDetects anomalous CI/CD workflow execution originating from forked repositories, with pull request (PR) metadata or commit messages containing suspicious patterns (e.g., encoded payloads), coupled with the use of insecure pipeline triggers like
pull_request_targetor excessive API usage of CI/CD secrets. Correlation with unusual artifact generation or secret exfiltration via encoded or external network destination URLs confirms suspicious behavior.saas:githubWorkflow triggered via pull_request_target from forked repo→ DC0069 Cloud Service Modificationsaas:githubArtifact generated includes base64/encoded exfil payload or URL→ DC0025 Cloud Storage Accesssaas:RepoEventsNew file added or modified in PR targeting CI/CD or build config (e.g., `gitlab-ci.yml`, `build.gradle`, `pom.xml`, `.github/workflows/*.yml`)→ DC0059 File Metadatasaas:PRMetadataCommit message or branch name contains encoded strings or payload indicators→ DC0064 Command ExecutionTunable:TimeWindowUserContextTriggerTypeAllowlistArtifactEntropyThresholdSecretAccessRateThreshold
Sigma rules · SigmaHQ da9bb07d64, tag attack.t1677
No Sigma rule carries this tag. MITRE publishes a detection strategy above, so the behaviour is specified; what is missing is public detection content.