GHSA-rg3q-prf8-qxmp
Arbitrary command injection in embano1/wip
Packages
| Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|
| GitHub Actions | embano1/wip | < 2 | 2 |
Details
As written in the advisory (Markdown source, shown as plain text).
## Summary
The `embano1/wip` action uses the `github.event.pull_request.title` parameter in an insecure way. The title parameter is used in a run statement - resulting in a command injection vulnerability due to string interpolation.
## Details and Impact
This vulnerability can be triggered by any user on GitHub. They just need to create a pull request with a commit message containing an exploit. (Note that first-time PR requests will not be run - but the attacker can submit a valid PR before submitting an invalid PR). The commit can be genuine, but the commit message can be malicious.
This can be used to execute code on the GitHub runners (potentially use it for crypto-mining, and waste your resources) and can be used to exfiltrate any secrets that you use in the CI pipeline (including repository tokens). [Here](https://securitylab.github.com/research/github-actions-untrusted-input/) is a set of blog posts by Github's security team explaining this issue.
## How to update existing workflows
Replace the following line in your workflow using this action with the `v2` branch name or commit pointing to this branch:
```yaml
uses: embano1/wip@v2
```
Or using the exact commit:
```yaml
uses: embano1/wip@c25450f77ed02c20d00b76ee3b33ff43838739a2 # v2
```
References
External links from the advisory. They lead to third-party sites.