Description
act is a project which allows for local running of github actions. The artifact server that stores artifacts from Github Action runs does not sanitize path inputs. This allows an attacker to download and overwrite arbitrary files on the host from a Github Action. This issue may lead to privilege escalation. The /upload endpoint is vulnerable to path traversal as filepath is user controlled, and ultimately flows into os.Mkdir and os.Open. The /artifact endpoint is vulnerable to path traversal as the path is variable is user controlled, and the specified file is ultimately returned by the server. This has been addressed in version 0.2.40. Users are advised to upgrade. Users unable to upgrade may, during implementation of Open and OpenAtEnd for FS, ensure to use ValidPath() to check against path traversal or clean the user-provided paths manually.
References
https://github.com/nektos/act/blob/master/pkg/artifacts/server.go#L65
https://github.com/nektos/act/blob/v0.2.35/pkg/artifacts/server.go#L245
https://github.com/nektos/act/commit/63ae215071f94569d910964bdee866d91d6e3a10
https://github.com/nektos/act/issues/1553
https://github.com/nektos/act/security/advisories/GHSA-pc99-qmg4-rcff
https://securitylab.github.com/advisories/GHSL-2023-004_act/
CVSS impact metrics
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
8.8 · High
CVSS V3.1
CVSS V3.0
CVSS V2.0
Information
Source identifier
Vulnerability status
Analyzed
Published
2023-01-20T22:15:10.533
2 years agoLast modified
2023-02-03T15:56:57.847
2 years ago