CVE-2026-57859

e107 Second-Order Code Execution via eval()-Based Deserialization in e_array::unserialize()

State
Published
Severity
7.7 High
Published
Jul 30, 2026
Updated
Aug 14, 2026
Reserved
Jun 25, 2026

Read the record on cve.org

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().

Scores

CVSSScoreVectorSource
4.07.7 HighCVSS:4.0/AV:N/AC:H/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:NVulnCheck
3.17.5 HighCVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:HVulnCheck

Weaknesses

  • CWE-502 Deserialization of Untrusted Data

Affected Products

ProductVersions
e107e107inc
  • 2.3.7 and earlierAffected
  • 2.3.8Not affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.