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:
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 theGITHUB_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 callingcore.exportVariable
.References
More information about setting-an-environment-variable in workflows
If you have any questions or comments about this advisory:
actions/toolkit