Description
e107 is a content management system (CMS). Prior to 2.3.7, install.php decodes the attacker-controlled previous_steps POST parameter and passes it to unserialize() at file scope and again in the e_install constructor without restricting allowed classes. The installer remains accessible after a normal installation, and a crafted object graph using the bundled GuzzleHttp\Psr7\PumpStream class can flow through paths.hash into site_path, where string coercion invokes an attacker-controlled callable. An unauthenticated attacker who can reach install.php can therefore execute arbitrary PHP functions with the web server process's privileges, leading to full server compromise. This issue is fixed in version 2.3.7.
Published: 2026-10-14
Score: 9.8 Critical
EPSS: < 1% Very Low
KEV: No
Impact: Remote Code Execution (full server compromise)
Action: Patch Immediately
AI Analysis

Impact

e107 is a CMS that, before version 2.3.7, processes a user‑supplied POST parameter named previous_steps in install.php and passes it to unserialize() without restricting the classes that may be instantiated. By crafting a serialized object graph that includes GuzzleHttp\\Psr7\\PumpStream, the attacker can influence the paths.hash field to override site_path, which then triggers a string conversion that calls an attacker‑controlled callable. An unauthenticated attacker who can reach install.php can exploit this flaw to execute arbitrary PHP functions with the web‑server’s privileges, leading to complete compromise of the host.

Affected Systems

The vulnerable component is e107 CMS (e107inc:e107). All releases prior to 2.3.7 are affected; the fix was released with the 2.3.7 release. No other vendors or products are reported to be impacted.

Risk and Exploitability

The flaw carries a CVSS score of 9.8, indicating critical severity. The EPSS score is not available, and the vulnerability is not listed in the CISA KEV catalog. Attackers need only unauthenticated access to the install.php page, which typically remains accessible after installation, to execute the exploit. If this file is still reachable, the attacker can achieve remote code execution with the privileges of the web‑server process.

Generated by OpenCVE AI on October 15, 2026 at 14:09 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade e107 to version 2.3.7 or later to remove the vulnerability.
  • Disable or delete install.php after the website has been installed; if it must remain, restrict web access with a firewall rule or an .htaccess rule that blocks all GET and POST requests to that file.
  • Verify that no other part of the application calls unserialize() on user input; if it does, restrict allowed classes or otherwise sanitize the data.
  • Monitor PHP error logs for unexpected class instantiations or unserialize failures and investigate any suspicious activity.

Generated by OpenCVE AI on October 15, 2026 at 14:09 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

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

Type Values Removed Values Added
Metrics ssvc

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


Wed, 14 Oct 2026 18:15:00 +0000

Type Values Removed Values Added
Description e107 is a content management system (CMS). Prior to 2.3.7, install.php decodes the attacker-controlled previous_steps POST parameter and passes it to unserialize() at file scope and again in the e_install constructor without restricting allowed classes. The installer remains accessible after a normal installation, and a crafted object graph using the bundled GuzzleHttp\Psr7\PumpStream class can flow through paths.hash into site_path, where string coercion invokes an attacker-controlled callable. An unauthenticated attacker who can reach install.php can therefore execute arbitrary PHP functions with the web server process's privileges, leading to full server compromise. This issue is fixed in version 2.3.7.
Title e107: Unsafe deserialization in install.php allows unauthenticated RCE via POP chain
Weaknesses CWE-502
References
Metrics cvssV3_1

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


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-10-15T15:01:54.402Z

Reserved: 2026-06-16T23:11:20.214Z

Link: CVE-2026-55573

cve-icon Vulnrichment

Updated: 2026-10-15T15:00:54.815Z

cve-icon NVD

Status : Deferred

Published: 2026-10-14T18:17:38.013

Modified: 2026-10-16T20:04:29.760

Link: CVE-2026-55573

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-15T14:15:15Z

Weaknesses
  • CWE-502

    Deserialization of Untrusted Data