Headline
GHSA-7r3h-m5j6-3q42: @actions/core has Delimiter Injection Vulnerability in exportVariable
Impact
The core.exportVariable
function uses a well known delimiter that attackers can use to break out of that specific variable and assign values to other arbitrary variables. Workflows that write untrusted values to the GITHUB_ENV
file may cause the path or other environment variables to be modified without the intention of the workflow or action author.
Patches
Users should upgrade to @actions/core v1.9.1
.
Workarounds
If you are unable to upgrade the @actions/core
package, you can modify your action to ensure that any user input does not contain the delimiter _GitHubActionsFileCommandDelimeter_
before calling core.exportVariable
.
References
More information about setting-an-environment-variable in workflows
If you have any questions or comments about this advisory:
- Open an issue in
actions/toolkit
Impact
The core.exportVariable function uses a well known delimiter that attackers can use to break out of that specific variable and assign values to other arbitrary variables. Workflows that write untrusted values to the GITHUB_ENV file may cause the path or other environment variables to be modified without the intention of the workflow or action author.
Patches
Users should upgrade to @actions/core v1.9.1.
Workarounds
If you are unable to upgrade the @actions/core package, you can modify your action to ensure that any user input does not contain the delimiter GitHubActionsFileCommandDelimeter before calling core.exportVariable.
References
More information about setting-an-environment-variable in workflows
If you have any questions or comments about this advisory:
- Open an issue in actions/toolkit
References
- GHSA-7r3h-m5j6-3q42
- https://nvd.nist.gov/vuln/detail/CVE-2022-35954
- actions/toolkit@4beda9c
Related news
The GitHub Actions ToolKit provides a set of packages to make creating actions easier. The `core.exportVariable` function uses a well known delimiter that attackers can use to break out of that specific variable and assign values to other arbitrary variables. Workflows that write untrusted values to the `GITHUB_ENV` file may cause the path or other environment variables to be modified without the intention of the workflow or action author. Users should upgrade to `@actions/core v1.9.1`. If you are unable to upgrade the `@actions/core` package, you can modify your action to ensure that any user input does not contain the delimiter `_GitHubActionsFileCommandDelimeter_` before calling `core.exportVariable`.