CVE-2026-24891·PHP vulnerability
openITCOCKPIT is an open source monitoring tool built for different monitoring engines like Nagios, Naemon and Prometheus. Versions 5.3.1 and below contain an unsafe deserialization sink in the Gearman worker implementation. The worker function registered as oitc_gearman calls PHP's unserialize() on job payloads without enforcing class restrictions or validating data origin. While the intended deployment assumes only trusted internal components enqueue Gearman jobs, this trust boundary is not enforced in application code. In environments where the Gearman service or worker is exposed to untrusted systems, an attacker may submit crafted serialized payloads to trigger PHP Object Injection in the worker process. This vulnerability is exploitable when Gearman listens on non-local interfaces, network access to TCP/4730 is unrestricted, or untrusted systems can enqueue jobs. Default, correctly hardened deployments may not be immediately exploitable, but the unsafe sink remains present in code regardless of deployment configuration. Enforcing this trust boundary in code would significantly reduce risk and prevent exploitation in misconfigured environments. This issue has been fixed in version 5.4.0.
- Severity
- high
- Software
- PHP
- Fixed in
- 5.4.0
- Published
- 2026-02-20
Affected versions
Until: 5.4.0
Fixed in: 5.4.0
How to fix this CVE
Upgrade openITCOCKPIT to version 5.4.0 or later to patch the unsafe deserialization vulnerability in the Gearman worker implementation. If you cannot upgrade immediately, restrict network access to the Gearman service (TCP/4730) to only trusted internal systems and ensure the Gearman daemon does not listen on public or untrusted network interfaces. This vulnerability allows remote code execution through PHP Object Injection when untrusted systems can enqueue jobs to the Gearman queue.
sudo dnf update phpDefensia detects this vulnerability
What an exploitation attempt looks like
Sample log line indicative of exploitation attempts:
POST requests to Gearman on TCP/4730 with binary payloads containing PHP serialized objects (pattern: \x4f:[0-9]+:.*\x7b) or log entries showing 'unserialize(): Error' followed by 'invalid data format' in gearman worker logsHow to check if you are affected
- Step 1: Check the installed version of openITCOCKPIT with: grep -r 'version' /opt/openitcockpit/config/ | grep -i version or check the web UI footer for the version number.
- Step 2: Verify if Gearman is running and listening on non-local interfaces: sudo netstat -tlnp | grep -E ':(4730|gearman)' and check if it binds to 0.0.0.0 or public IPs.
- Step 3: Search application logs for suspicious serialized PHP objects in Gearman job payloads: sudo grep -i 'unserialize\|O:' /var/log/openitcockpit/*.log or check /var/log/gearman.log for malformed job data.
- Step 4: After upgrading to 5.4.0, confirm the patch by running: grep -n 'unserialize' /opt/openitcockpit/app/Lib/Gearman/*.php and verify no direct unserialize() calls exist without class restrictions.
FAQ
What is CVE-2026-24891?
CVE-2026-24891 is a PHP Object Injection vulnerability in openITCOCKPIT's Gearman worker that deserializes untrusted job payloads without class validation. An attacker with access to the Gearman queue can submit malicious serialized objects to achieve remote code execution in the worker process.
Is CVE-2026-24891 being actively exploited?
No, CVE-2026-24891 is not listed in the CISA KEV catalog and no public exploits are currently available. However, the vulnerability is easily exploitable in misconfigured deployments where Gearman is exposed to untrusted networks.
What versions of openITCOCKPIT are affected by CVE-2026-24891?
All versions up to and including 5.3.1 are vulnerable. Version 5.4.0 and later include the fix.
How do I check if my server is vulnerable to CVE-2026-24891?
Run: cat /opt/openitcockpit/VERSION or check the web UI for the version number. If it is 5.3.1 or earlier, you are vulnerable. Also verify Gearman access: sudo netstat -tlnp | grep 4730 to see if it listens on untrusted interfaces.
Does Defensia detect CVE-2026-24891?
Yes — Defensia's CVE advisory scanner compares installed package versions against the NVD database. If openITCOCKPIT is installed on a monitored server, CVE-2026-24891 will appear in your dashboard with remediation steps.
Related PHP CVEs
References
Track CVEs across your fleet automatically
Defensia scans your Linux servers and tells you exactly which ones are running vulnerable versions — including CVE-2026-24891. Free for 1 server.
Get started free