Severity by source
CVSS:4.0/AV:N/AC:H/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
AC:H and PR:H because exploitation requires prior out-of-band database write access, a high-privilege prerequisite; full C/I/A loss follows from arbitrary PHP eval execution.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
3DescriptionCVE.org
e107 prior to version 2.3.8 contains a code execution vulnerability in the e_array deserialization handler that allows an attacker with out-of-band database write access to execute arbitrary PHP code by storing a crafted payload in the user_prefs column. The e_array::unserialize() function in e107_handlers/core_functions.php performs only a prefix check for the string 'array' before passing the stored value to eval(), causing automatic PHP execution whenever the affected user's preferences are materialized through e_user_pref::load().
AnalysisAI
Second-order PHP code execution in e107 CMS before version 2.3.8 lets an attacker who already holds out-of-band write access to the database plant a crafted payload in the user_prefs column, which is later fed to eval() when that user's preferences load. The e_array::unserialize() handler validates only that the stored string begins with 'array' before evaluating it, so any account whose preferences are materialized triggers arbitrary PHP execution. Reported by VulnCheck with a vendor patch available; no public exploit identified at time of analysis, and it is not listed in CISA KEV.
Technical ContextAI
e107 is an open-source PHP/MySQL content management system. The flaw sits in e_array::unserialize() in e107_handlers/core_functions.php, which reconstructs stored preference arrays. Instead of a safe parser, it performs a naive prefix check for the literal string 'array' and then passes the value directly to PHP's eval(), so the serialized preference blob is treated as executable code. This maps to CWE-502 (Deserialization of Untrusted Data): the deserialization routine trusts attacker-influencable stored data. Execution is automatic and second-order - it occurs whenever e_user_pref::load() materializes the affected user's preferences (user_prefs column), decoupling payload injection from payload execution. Affected product per CPE is cpe:2.3:a:e107inc:e107 across all versions prior to 2.3.8.
RemediationAI
Upgrade to e107 2.3.8 or later, which contains the vendor fix referenced in commit 40e73cefde85b32e1227dfac9956a5cb87046277 (Patch available per vendor advisory; see GHSA-568x-w5qj-vr7c). Because exploitation depends on attacker-controlled writes to the user_prefs column, the strongest compensating controls until patching center on database exposure: restrict and audit direct database write access, ensure the CMS database account is not shared with other internet-facing services, and hunt for and remediate any SQL injection or exposed admin/DB paths that could provide the out-of-band write, since those are the realistic injection vectors. As a detective measure, inspect existing user_prefs values for entries beginning with 'array' that contain PHP code and purge them. Note the trade-off that tightening DB permissions can break plugins or integrations that legitimately write preference data, so validate in staging first.
In PHP versions 7.1.x below 7.1.33, 7.2.x below 7.2.24 and 7.3.x below 7.3.11 in certain configurations of FPM setup it
sapi/cgi/cgi_main.c in PHP before 5.3.12 and 5.4.x before 5.4.2, when configured as a CGI script (aka php-cgi), does not
(1) boardData102.php, (2) boardData103.php, (3) boardDataJP.php, (4) boardDataNA.php, and (5) boardDataWW.php in Netgear
The '/common/download_agent_installer.php' script in the Quest KACE System Management Appliance 8.0.318 is accessible by
ProjectSend versions prior to r1720 are affected by an improper authentication vulnerability. Rated critical severity (C
Roundcube Webmail contains a critical PHP object deserialization vulnerability (CVE-2025-49113, CVSS 9.9) that allows au
Util/PHP/eval-stdin.php in PHPUnit before 4.8.28 and 5.x before 5.6.3 allows remote attackers to execute arbitrary PHP c
Palo Alto Networks PAN-OS management web interface contains an authentication bypass allowing unauthenticated attackers
Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re
Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re
The get_referers function in /opt/ws/bin/sblistpack in Sophos Web Appliance before 3.7.9.1 and 3.8 before 3.8.1.1 allows
The Backup Migration plugin for WordPress is vulnerable to Remote Code Execution in all versions up to, and including, 1
Same weakness CWE-502 – Deserialization of Untrusted Data
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-51123