actions/toolkit · Security
@actions/core has Delimiter Injection Vulnerability in exportVariable
- GHSA ID
- GHSA-7r3h-m5j6-3q42
- CVE ID
- CVE-2022-35954
- Severity
- medium
- Published
- Updated
- CVSS
- 5 · CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:N/I:L/A:N
- CVSS v3
- 5 · CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:N/I:L/A:N
Description
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
CWEs
- CWE-74 · Improper Neutralization of Special Elements in Output Used by a Downstream Component ('Injection')
- CWE-77 · Improper Neutralization of Special Elements used in a Command ('Command Injection')