CVE-2026-28207 Details
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.
A command injection vulnerability has been identified in the Zen C compiler, specifically in versions prior to 0.4.2. The issue allows local attackers to execute arbitrary shell commands by supplying a specially crafted output filename through the '-o' command-line argument. This vulnerability arises in the main application logic, where the compiler concatenates user-controlled filenames into a command string that is executed via the 'system()' function. The 'system()' function invokes a shell, which interprets shell metacharacters in the filename, leading to unauthorized command execution. Attackers can exploit this vulnerability by manipulating command-line arguments, such as through build scripts or CI/CD pipeline configurations, to execute commands with the privileges of the user running the compiler.
Users are advised to update to Zen C version 0.4.2 or later, where this vulnerability has been fixed by removing 'system()' calls, implementing a new argument list management utility, and ensuring that command-line arguments are handled securely.
Metrics
CVSS 4.0 Severity and Vector Strings:
No CVSS 4.0 data is available for this CVE.
CVSS 3.x Severity and Vector Strings:
No data available for CVSS Version 2.0 on this CVE.
CISA-ADP
Assessed Mar 2, 2026References to Advisories, Solutions, and Tools
By selecting these links, you will be leaving this site. These are references gathered from the official CVE record and are not endorsed by Volerion.
| URL | Source(s) | Tag(s) |
|---|---|---|
| https://github.com/z-libs/Zen-C/security/advisories/GHSA-9rff-x96h-76h2 | CISA-ADP | ExploitMitigationVendor Advisory |
| https://f0nduesav0yarde.github.io/blog/vulnerabilities/cve-2026-28207/ | CVE | ExploitThird Party Advisory |
| https://github.com/z-libs/Zen-C/security/advisories/GHSA-9rff-x96h-76h2 | [email protected] | ExploitMitigationVendor Advisory |
Weakness Enumeration
| CWE-ID | CWE Name | Source |
|---|---|---|
| CWE-78 | Improper Neutralization of Special Elements used in an OS Command ('OS Command Injection') | [email protected] |
Affected Products
| Product | Versions |
|---|---|
| zenc-lang zen c | < 0.4.2 |
CPE
Remediation
| |
Change History
7 change records found show changes
| Date | Action | Recorded By |
|---|---|---|
| Jun 17, 2026 | CVE Modified | [email protected] |
| Jun 17, 2026 | CVE Modified | CISA-ADP |
| May 1, 2026 | Reanalysis | [email protected] |
| Mar 3, 2026 | Initial Analysis | [email protected] |
| Mar 2, 2026 | CVE Modified | CISA-ADP |
| Feb 27, 2026 | CVE Modified | CVE |
| Feb 26, 2026 | New CVE Received | [email protected] |