Description
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().
Published: 2026-07-30
Score: 7.7 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

A crafted payload can be written to the user_prefs database column and later executed when the preference data is loaded because the unserialization function passes the data to eval(). The vulnerability allows an attacker with the ability to write to the database to run arbitrary PHP code in the context of the e107 web application. The weakness is classified as an unsafe unserialization leading to remote code execution.

Affected Systems

The vulnerability exists in the e107 content management system prior to version 2.3.8. Users of older e107 installations running the default e_array::unserialize() handler are susceptible.

Risk and Exploitability

The vulnerability is assessed with a CVSS score of 7.7. The EPSS score is less than 1 % and the issue is not listed in CISA's KEV catalog, indicating no known widespread exploitation at this time. The attack requires the attacker to have out‑of‑band write access to the database to inject a malicious payload into the user_prefs column. Once injected, the payload is executed automatically when e_user_pref::load() calls the unserialization routine, giving the attacker full code execution capabilities on the server.

Generated by OpenCVE AI on August 3, 2026 at 10:51 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade e107 to version 2.3.8 or later to remove the eval() deserialization bug
  • Restrict database user permissions so that only authorized applications can write to the user_prefs column
  • If upgrade is not possible, disable or sanitize the user_prefs functionality to prevent storage of raw payloads

Generated by OpenCVE AI on August 3, 2026 at 10:51 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Fri, 14 Aug 2026 17:15:00 +0000

Type Values Removed Values Added
CPEs cpe:2.3:a:e107:e107:*:*:*:*:*:*:*:*

Thu, 30 Jul 2026 20:30:00 +0000

Type Values Removed Values Added
First Time appeared E107
E107 e107
Vendors & Products E107
E107 e107

Thu, 30 Jul 2026 15:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'poc', 'Technical Impact': 'total'}, 'version': '2.0.3'}


Thu, 30 Jul 2026 14:15:00 +0000

Type Values Removed Values Added
Description 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().
Title e107 Second-Order Code Execution via eval()-Based Deserialization in e_array::unserialize()
Weaknesses CWE-502
References
Metrics cvssV3_1

{'score': 7.5, 'vector': 'CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H'}

cvssV4_0

{'score': 7.7, 'vector': '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'}


cve-icon MITRE

Status: PUBLISHED

Assigner: VulnCheck

Published:

Updated: 2026-08-14T16:50:24.335Z

Reserved: 2026-06-25T18:48:00.283Z

Link: CVE-2026-57859

cve-icon Vulnrichment

Updated: 2026-07-30T14:25:46.967Z

cve-icon NVD

Status : Deferred

Published: 2026-07-30T14:16:59.923

Modified: 2026-07-30T16:45:00.353

Link: CVE-2026-57859

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-03T11:00:03Z

Weaknesses
  • CWE-502

    Deserialization of Untrusted Data