CVE-2026-24891

7.5 HIGH

📋 TL;DR

CVE-2026-24891 is an unsafe deserialization vulnerability in openITCOCKPIT monitoring tool that allows PHP Object Injection when untrusted systems can submit Gearman job payloads. This affects versions 5.3.1 and below, potentially enabling remote code execution or other malicious actions. Organizations with exposed Gearman services or misconfigured deployments are at risk.

💻 Affected Systems

Products:
  • openITCOCKPIT
Versions: 5.3.1 and below
Operating Systems: All platforms running PHP
Default Config Vulnerable: ✅ No
Notes: Only vulnerable when Gearman service is exposed to untrusted systems or when untrusted systems can enqueue jobs. Default deployments with Gearman bound to localhost may not be immediately exploitable.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Remote code execution leading to complete system compromise, data theft, and lateral movement within the monitoring infrastructure.

🟠

Likely Case

PHP object injection leading to arbitrary code execution within the worker process context, potentially compromising the monitoring system.

🟢

If Mitigated

No impact if Gearman service is properly isolated and only accepts jobs from trusted internal components.

🌐 Internet-Facing: HIGH if Gearman service is exposed to internet or untrusted networks without proper access controls.
🏢 Internal Only: MEDIUM if internal network segmentation is weak or if untrusted internal systems can access Gearman service.

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: LIKELY
Unauthenticated Exploit: ⚠️ Yes
Complexity: LOW

Exploitation requires network access to Gearman service (TCP/4730) and ability to submit crafted serialized payloads. No authentication needed if service is exposed.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 5.4.0

Vendor Advisory: https://github.com/openITCOCKPIT/openITCOCKPIT/security/advisories/GHSA-x4mq-8gfg-frc4

Restart Required: Yes

Instructions:

1. Backup your openITCOCKPIT installation and database. 2. Download version 5.4.0 from GitHub releases. 3. Follow the official upgrade guide for your deployment method (Docker, manual, etc.). 4. Restart all openITCOCKPIT services including Gearman workers.

🔧 Temporary Workarounds

Restrict Gearman Network Access

linux

Configure Gearman service to only listen on localhost or trusted interfaces and implement network access controls.

Edit Gearman configuration to set --listen=127.0.0.1:4730
Configure firewall rules: iptables -A INPUT -p tcp --dport 4730 -s trusted_ip_range -j ACCEPT
iptables -A INPUT -p tcp --dport 4730 -j DROP

Implement Network Segmentation

all

Isolate Gearman service in a protected network segment with strict access controls.

🧯 If You Can't Patch

  • Implement strict network access controls to restrict Gearman service (TCP/4730) to only trusted systems.
  • Deploy application-level filtering or proxy that validates and sanitizes Gearman job payloads before they reach the vulnerable worker.

🔍 How to Verify

Check if Vulnerable:

Check openITCOCKPIT version and verify if Gearman service is accessible from untrusted networks. Use: php -r "echo version_compare('5.3.1', '5.4.0', '<') ? 'VULNERABLE' : 'PATCHED';"

Check Version:

Check web interface admin panel or run: grep "version" /path/to/openitcockpit/config/version.php

Verify Fix Applied:

Verify version is 5.4.0 or higher and check that Gearman worker no longer uses unsafe unserialize() on untrusted payloads.

📡 Detection & Monitoring

Log Indicators:

  • Unusual Gearman job submissions from unexpected sources
  • PHP errors related to unserialize() or object injection
  • Abnormal process execution from Gearman worker context

Network Indicators:

  • Unexpected connections to TCP/4730 from untrusted IPs
  • Large or malformed payloads sent to Gearman service

SIEM Query:

source="gearman.log" AND (dest_port=4730 AND src_ip NOT IN [trusted_ips]) OR (message="*unserialize*" OR message="*__destruct*")

🔗 References

📤 Share & Export