← back
CVE-2023-31128

NextCloud Cookbook's pull-checks.yml workflow is vulnerable to OS Command Injection

CVSS 8.1 HIGHEPSS 3.3%CWE-78
In short

NextCloud Cookbook's automated workflow script unsafely uses user-controlled branch names, allowing attackers to inject and execute arbitrary commands during pull requests. This lets attackers with fork access run malicious code in the build pipeline.

Technical detail

The pull-checks.yml GitHub Actions workflow directly interpolates the untrusted github.head_ref variable (attacker-controlled via pull request branch naming) into shell commands without sanitization, enabling OS command injection. An attacker with fork permissions can craft a branch name containing shell metacharacters to execute arbitrary commands with workflow permissions; the issue was remediated by removing unsafe variable interpolation in subsequent commits.

Summary generated and translated by AI from the official description.
NextCloud Cookbook is a recipe library app. Prior to commit a46d9855 on the `master` branch and commit 489bb744 on the `main-0.9.x` branch, the `pull-checks.yml` workflow is vulnerable to command injection attacks because of using an untrusted `github.head_ref` field. The `github.head_ref` value is an attacker-controlled value. Assigning the value to `zzz";echo${IFS}"hello";#` can lead to command injection. Since the permission is not restricted, the attacker has a write-access to the repository. This issue is fixed in commit a46d9855 on the `master` branch and commit 489bb744 on the `main-0.9.x` branch. There is no risk for the user of the app within the NextCloud server. This only affects the main repository and possible forks of it. Those who have forked the NextCloud Cookbook repository should make sure their forks are on the latest version to prevent code injection attacks and similar.
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:H
Affected products
nextcloud · cookbook

Want to know if your infrastructure is exposed to this?

Talk to TrueHacking →