CVE-2026-28207: z-libs Zen-C · OS Command Injection
Affects z-libs Zen-CSource CVE Database V5
Not known to be exploited · CVSS 6.6 Medium : upgrade to 0.4.2 when convenient.
Data as of 30 Oct 2026, 11:52 UTC
- EPSS
- 1.0% chance of exploitation in 30 days – higher than 65% of CVEsExploit Prediction Scoring System: the likelihood attackers will use this flaw soon.
- Patch
- Available – fixed in 0.4.2
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:L/I:H/A:LExploitation evidence
Disclosed: evidence found.
CVE published 26 Feb 2026
Detectable: no evidence on record.
No public nuclei template indexed
Weaponized: no evidence on record.
No public exploit code indexed in Metasploit or Exploit-DB
Exploited in the wildExploited: no evidence on record.
Not in CISA KEV and no source reports exploitation
Observed by OffSeq MirageSeen by Mirage: no evidence on record.
No attack traffic recorded by OffSeq Mirage sensors
A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 30 Oct 2026.
What to do
Upgrade Zen-C and z-libs/Zen-C to 0.4.2.
Affected software
| Product | Affected | Fixed in |
|---|---|---|
| z-libsZen-C | Affected
| Fixed in
|
GitHubz-libs/Zen-Cpkg:github/z-libs/Zen-COther threats | Affected
| Fixed in
|
Check your own hosts for these packages with threat-finder (opens in a new tab), our free open-source scanner.
AI-suggested
Organizations should immediately upgrade all instances of the Zen C compiler to version 0.4.2 or later, where the vulnerability is fixed by removing unsafe system() calls and implementing safe argument handling. Until upgrades are possible, restrict access to systems running vulnerable versions to trusted users only and audit build scripts and CI/CD pipeline configurations to ensure no untrusted input can influence compiler command-line arguments. Implement strict input validation and sanitization on any user-supplied filenames or parameters passed to the compiler. Consider running compilation processes with the least privileges necessary to limit the impact of potential exploitation. Monitor build environments for unusual command executions or unexpected behavior that could indicate exploitation attempts. Additionally, review and harden the security of CI/CD pipelines to prevent injection of malicious build commands. Employ application whitelisting and endpoint detection to detect anomalous shell command executions originating from compiler processes.
Description
Zen C is a systems programming language that compiles to human-readable GNU C/C11. Prior to version 0.4.2, a command injection vulnerability (CWE-78) in the Zen C compiler allows local attackers to execute arbitrary shell commands by providing a specially crafted output filename via the `-o` command-line argument. The vulnerability existed in the `main` application logic (specifically in `src/main.c`), where the compiler constructed a shell command string to invoke the backend C compiler. This command string was built by concatenating various arguments, including the user-controlled output filename, and was subsequently executed using the `system()` function. Because `system()` invokes a shell to parse and execute the command, shell metacharacters within the output filename were interpreted by the shell, leading to arbitrary command execution. An attacker who can influence the command-line arguments passed to the `zc` compiler (like through a build script or a CI/CD pipeline configuration) can execute arbitrary commands with the privileges of the user running the compiler. The vulnerability has been fixed in version 0.4.2 by removing `system()` calls, implementing `ArgList`, and internal argument handling. Users are advised to update to Zen C version v0.4.2 or later.