CVE-2026-28279 json
`osctrl-admin` Vulnerable to OS Command Injection via Environment Configuration
published 2026-02-26 8 mo ago modified 2026-06-17 4 mo ago also GHSA-rchw-322g-f7rm , GO-2026-4579 , EUVD-2026-8922
- cvss
- 7.4
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 1.0%
- EPSS 1.0% chance of exploitation in 30 days, percentile 62%
- public exploits
- 0
- none known
Summary
osctrl is an osquery management solution. Prior to version 0.5.0, an OS command injection vulnerability exists in the `osctrl-admin` environment configuration. An authenticated administrator can inject arbitrary shell commands via the hostname parameter when creating or editing environments. These commands are embedded into enrollment one-liner scripts generated using Go's `text/template` package (which does not perform shell escaping) and execute on every endpoint that enrolls using the compromised environment. An attacker with administrator access can achieve remote code execution on every endpoint that enrolls using the compromised environment. Commands execute as root/SYSTEM (the privilege level used for osquery enrollment) before osquery is installed, leaving no agent-level audit trail. This enables backdoor installation, credential exfiltration, and full endpoint compromise. This is fixed in osctrl `v0.5.0`. As a workaround, restrict osctrl administrator access to trusted personnel, review existing environment configurations for suspicious hostnames, and/or monitor enrollment scripts for unexpected commands.
Patch / fix
- go github.com/jmpsec/osctrl 0.5.0
- jmpsec osctrl 0.5.0
- govulncheck-vulndb openSUSE Leap 15.6 0.0.20260317T205859-150000.1.152.1
suse advisories SUSE-SU-2026:1042-1
- govulncheck-vulndb openSUSE Leap 16.0 0.0.20260723T184607-160000.1.1
opensuse advisories openSUSE-SU-2026:21483-1
- github.com/jmpsec/osctrl#777 pull request
- github.com/jmpsec/osctrl#780 pull request
CISA SSVC
- Exploitation
- none
- Automatable
- no
- Technical impact
- total
- Assessed
- 8 mo ago
Exploit prediction
0.97% chance of exploitation in the next 30 days, higher than 62% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 7.4 | CVSS:3.1/AV:A/AC:H/PR:H/UI:R/S:C/C:H/I:H/A:H |
| NVD | 3.1 | 8.4 | CVSS:3.1/AV:A/AC:L/PR:H/UI:N/S:C/C:H/I:H/A:H |
| GitHub | 3.1 | 7.3 | CVSS:3.1/AV:A/AC:H/PR:H/UI:R/S:C/C:H/I:H/A:H |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| go | github.com/jmpsec/osctrl | <0.5.0 |
0.5.0 |
Affected products
- jmpsec osctrl
Classification
- Weakness
-
- CWE-78 Improper Neutralization of Special Elements used in an OS Command
References
-
github.com
/jmpsec/osctrl/pull/777
web, issue-tracking, patch
-
github.com
/jmpsec/osctrl/pull/780
web, issue-tracking, patch
-
github.com
/jmpsec/osctrl/security/advisories/GHSA-rchw-322g-f7rm
web, mitigation, vendor-advisory, advisory
-
nvd.nist.gov
/vuln/detail/CVE-2026-28279
advisory
-
github.com
/jmpsec/osctrl
package
Sources
- CVE List CVE-2026-28279
- GitHub Advisory GHSA-rchw-322g-f7rm
- NVD CVE-2026-28279
- OSV GO-2026-4579
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.