CVE-2025-27234 Overview
CVE-2025-27234 is a command injection vulnerability in the Zabbix Agent 2 smartctl plugin. The plugin fails to sanitize parameters passed to smart.disk.get, allowing an attacker to inject unexpected arguments into the underlying smartctl command. In Zabbix 5.0 deployments, this argument injection escalates into remote code execution on the monitored host. The flaw is tracked under CWE-78 (OS Command Injection) and is referenced by the Zabbix project as ZBX-26985.
Critical Impact
An adjacent-network attacker with high privileges can inject arguments into smartctl execution, resulting in remote code execution on Zabbix 5.0 agents running the vulnerable plugin.
Affected Products
- Zabbix Agent 2 with the smartctl plugin enabled
- Zabbix 5.0 (confirmed exploitable to remote code execution)
- Debian LTS distributions shipping affected Zabbix packages
Discovery Timeline
- 2025-09-12 - CVE-2025-27234 published to NVD
- 2026-06-17 - Last updated in NVD database
Technical Details for CVE-2025-27234
Vulnerability Analysis
Zabbix Agent 2 uses a Go-based plugin architecture in which the smartctl plugin invokes the external smartctl binary from the smartmontools package to collect disk health telemetry. The plugin exposes the smart.disk.get item key, which accepts a disk identifier as a parameter. The plugin passes that parameter into the smartctl command line without sufficient validation.
Because smartctl accepts a wide range of flags that can alter its behavior, an attacker who controls the item parameter can supply additional arguments. On Zabbix 5.0, the combination of unsanitized arguments and the way the command is executed permits arbitrary command execution in the agent process context.
Root Cause
The root cause is missing input validation in the smart.disk.get handler within the Zabbix Agent 2 smartctl plugin. User-supplied parameters are concatenated into the argument vector for the smartctl invocation. The plugin does not restrict the parameter to a device path or reject shell metacharacters and option-like tokens beginning with - or --.
Attack Vector
Exploitation requires network reachability to the Zabbix Agent 2 listener and authenticated interaction consistent with an operator able to configure or trigger item queries. The attacker submits a crafted smart.disk.get request whose parameter contains additional smartctl flags. These flags redirect smartctl behavior, and on Zabbix 5.0 the resulting execution path yields code execution on the agent host. Additional technical context is available in the Zabbix Issue Tracker Entry and the Debian LTS Announcement.
No verified public exploit code is available at the time of publication. The vulnerability mechanism is described in prose only.
Detection Methods for CVE-2025-27234
Indicators of Compromise
- Zabbix Agent 2 logs containing smart.disk.get requests whose parameter includes -, --, backticks, semicolons, or shell metacharacters.
- Unexpected child processes spawned by the Zabbix Agent 2 binary (zabbix_agent2), particularly smartctl invocations with non-device arguments.
- Outbound network connections initiated by smartctl or by short-lived processes parented to zabbix_agent2.
Detection Strategies
- Inspect Zabbix Agent 2 request logs for smart.disk.get items containing option-style tokens instead of device paths such as /dev/sda.
- Correlate process execution telemetry to alert when zabbix_agent2 spawns processes other than smartctl with normal device arguments.
- Baseline the expected smartctl command line on each monitored host and flag deviations.
Monitoring Recommendations
- Forward Zabbix Agent 2 logs and host process telemetry to a central analytics tier for correlation.
- Monitor package inventories for Zabbix Agent 2 versions still exposing the vulnerable plugin.
- Track network access to Zabbix Agent 2 ports (default TCP 10050) from unexpected sources.
How to Mitigate CVE-2025-27234
Immediate Actions Required
- Upgrade Zabbix Agent 2 to a fixed release as published by Zabbix in ZBX-26985.
- On Debian systems, apply the updates described in the Debian LTS Announcement.
- Restrict network access to Zabbix Agent 2 listeners so that only the Zabbix server and proxies can reach TCP 10050.
- Audit Zabbix item configurations for any smart.disk.get entries with unusual parameter values.
Patch Information
Zabbix has published fixes tracked under issue ZBX-26985. Consult the Zabbix Issue Tracker Entry for the specific fixed versions across the 5.0, 6.0, 6.4, and 7.0 branches. Debian users should install the packages listed in the corresponding Debian LTS advisory.
Workarounds
- Disable the smartctl plugin in the Zabbix Agent 2 configuration if disk SMART monitoring is not required.
- Enforce strict AllowKey and DenyKey directives in zabbix_agent2.conf to block smart.disk.get until patching is complete.
- Constrain agent connectivity with host firewall rules or network ACLs limiting inbound traffic to authorized Zabbix servers.
# Configuration example: disable smart.disk.get in zabbix_agent2.conf
DenyKey=smart.disk.get[*]
AllowKey=system.run[*]
Server=10.0.0.10
# Restart the agent to apply the change
systemctl restart zabbix-agent2
Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

