{"id":"CVE-2026-55573","published":"2026-10-14T18:17:38.013","lastModified":"2026-10-16T20:04:29.760","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.","cvssScore":9.8,"cvssSeverity":"CRITICAL","cvssVector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","cwes":["CWE-502"],"vendors":[],"products":[],"references":[{"url":"https://github.com/e107inc/e107/commit/5d6d649e8cf01854d6024d07997c2449fdd75f24","tags":[]},{"url":"https://github.com/e107inc/e107/commit/6c404295213952aedb9b3689be19dd4c7ba550b0","tags":[]},{"url":"https://github.com/e107inc/e107/releases/tag/v2.3.7","tags":[]},{"url":"https://github.com/e107inc/e107/security/advisories/GHSA-c8h6-wpj3-4cr8","tags":[]},{"url":"https://github.com/e107inc/e107/security/advisories/GHSA-c8h6-wpj3-4cr8","tags":[]}],"exploitRefs":[{"url":"https://github.com/e107inc/e107/commit/5d6d649e8cf01854d6024d07997c2449fdd75f24","tags":[]},{"url":"https://github.com/e107inc/e107/commit/6c404295213952aedb9b3689be19dd4c7ba550b0","tags":[]},{"url":"https://github.com/e107inc/e107/releases/tag/v2.3.7","tags":[]},{"url":"https://github.com/e107inc/e107/security/advisories/GHSA-c8h6-wpj3-4cr8","tags":[]},{"url":"https://github.com/e107inc/e107/security/advisories/GHSA-c8h6-wpj3-4cr8","tags":[]}],"hasPoc":true,"ai":{"summary":"The e107 CMS had a critical deserialization vulnerability in its installer that allowed unauthenticated attackers to execute arbitrary PHP code with web server privileges. This occurs when attacker-controlled data is passed through unserialize() without class restrictions, enabling remote code execution through a crafted object graph.","exploitability":"Very easy to exploit with no prerequisites; attackers only need access to the install.php endpoint and can trigger the vulnerability by sending a specially crafted POST request with a serialized object in the previous_steps parameter.","blast_radius":"High impact across all affected installations since the installer remains accessible post-installation, allowing attackers to compromise entire servers with a single unauthenticated request.","remediation":"Upgrade to version 2.3.7 immediately to fix the deserialization vulnerability in install.php.","detection":"No reliable host or network indicator is derivable from the published description.","tags":["rce","deserialization","cms","web"],"model":"garnet-coder","analyzedAt":"2026-10-15T08:52:40.741Z"}}