CVE-2024-36465

8.8 HIGH

📋 TL;DR

A SQL injection vulnerability in Zabbix allows authenticated low-privilege users with API access to execute arbitrary SQL commands via the groupBy parameter. This affects Zabbix installations where regular users have API permissions. Attackers could potentially read, modify, or delete database content.

💻 Affected Systems

Products:
  • Zabbix
Versions: Zabbix 7.0.0alpha1 to 7.0.0beta2, 6.4.0alpha1 to 6.4.13, 6.0.0alpha1 to 6.0.31, 5.0.0alpha1 to 5.0.49
Operating Systems: All platforms running affected Zabbix versions
Default Config Vulnerable: ⚠️ Yes
Notes: Requires authenticated low-privilege user with API access. Default installations with API enabled and regular user permissions are vulnerable.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete database compromise leading to data theft, data manipulation, privilege escalation to administrative access, or full system takeover via subsequent attacks.

🟠

Likely Case

Unauthorized data access, extraction of sensitive information from Zabbix database, or modification of monitoring configurations.

🟢

If Mitigated

Limited impact if proper network segmentation, API access controls, and database permissions are implemented.

🌐 Internet-Facing: HIGH if Zabbix API is exposed to internet and low-privilege users have API access.
🏢 Internal Only: MEDIUM to HIGH depending on internal user permissions and network segmentation.

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ✅ No
Complexity: LOW

Exploitation requires authenticated API access but SQL injection via parameter manipulation is straightforward for attackers with basic skills.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Zabbix 7.0.0beta3, 6.4.14, 6.0.32, 5.0.50

Vendor Advisory: https://support.zabbix.com/browse/ZBX-26257

Restart Required: Yes

Instructions:

1. Backup Zabbix database and configuration. 2. Download and install patched version from Zabbix website. 3. Follow Zabbix upgrade documentation for your version. 4. Restart Zabbix server and frontend services.

🔧 Temporary Workarounds

Restrict API Access

all

Remove API access from low-privilege users until patching is complete.

# Edit Zabbix user permissions via GUI or API to remove API access from regular users

Network Segmentation

linux

Restrict network access to Zabbix API endpoints.

# Example iptables rule: iptables -A INPUT -p tcp --dport 10051 -s trusted_network -j ACCEPT
# iptables -A INPUT -p tcp --dport 10051 -j DROP

🧯 If You Can't Patch

  • Implement strict network access controls to limit Zabbix API access to trusted IPs only
  • Review and minimize API permissions for all users, especially low-privilege accounts

🔍 How to Verify

Check if Vulnerable:

Check Zabbix version and compare against affected versions. Verify if low-privilege users have API access permissions.

Check Version:

zabbix_server --version | grep version

Verify Fix Applied:

Confirm Zabbix version is patched (7.0.0beta3, 6.4.14, 6.0.32, or 5.0.50+) and test API functionality.

📡 Detection & Monitoring

Log Indicators:

  • Unusual SQL queries in Zabbix server logs
  • API requests with malformed groupBy parameters
  • Database error messages in logs

Network Indicators:

  • Unusual API request patterns to /api_jsonrpc.php
  • SQL injection patterns in HTTP POST data

SIEM Query:

source="zabbix_server.log" AND "SQL" AND ("error" OR "warning")

🔗 References

📤 Share & Export