Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessLocate e107 with alt_auth external-DB backend
-
DeliverySubmit crafted username at login form
-
ExploitInterpolated string hits PDO::query() unsanitized
-
ExecutionInjected SQL runs on configured database
-
ImpactExfiltrate or modify accessible account data
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Parameterized queries, prepared statements
MITRE ATT&CK
2 techniques across 2 tactics: Initial Access, Persistence The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Requires the alt_auth plugin to be installed and either the otherdb or e107db authentication backend configured with a live, reachable external database connection; under that configuration an unauthenticated attacker triggers the flaw simply by submitting a crafted login username, which is interpolated into SQL and run via PDO::query() before effective sanitization. Limiting factors: alt_auth is not installed by default and the vulnerable backend must be actively pointed at an external DB, so default e107 installs are not exposed; impact is bounded by the privileges of the configured external database account; failed queries can additionally disclose the generated query through the debug-message path, aiding blind injection. No user interaction or authentication is needed once the prerequisite configuration exists. |
| Impact | Signals are mixed. The input CVSS 3.1 vector (AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H = 10.0) frames this as a worst-case, unauthenticated, remote, scope-changing SQL injection (CWE-89), and that is directionally correct - no credentials or user interaction are required to reach the vulnerable login() path. However, the real-world risk is materially gated by a deployment prerequisite the raw score ignores: the alt_auth plugin must be installed AND the otherdb or e107db backend must be configured against a live external database. e107's alt_auth is not a default-enabled component, so the exploitable population is a subset of an already modest e107 install base. No EPSS score, CISA KEV listing, or public POC is present in the provided intelligence, so there is no evidence of active or widespread exploitation - the 10.0 reflects theoretical worst-case impact, not demonstrated attacker activity. I also assess the A:H in the input as not fully supported: the description states data can be exposed or modified for the configured DB account but does not establish an availability/destruction impact, so C:H/I:H are justified while A:H appears inflated - verify with vendor. Net: a genuinely serious flaw worth prompt patching wherever alt_auth+external-DB is configured, but likely low priority for the majority of e107 deployments that do not run that configuration. |
| Exploit ScenarioDerived | An attacker locates an e107 site (< 2.3.7) that has the alt_auth plugin installed with the otherdb or e107db backend wired to an external database. Without any account, the attacker submits a crafted username in the login form; because the value is interpolated into SQL and executed via PDO::query() before sanitization, the injection runs against the external DB, letting the attacker read or alter data in the scope of that DB account (failed queries may also leak the generated SQL via the debug-message path). No public exploit code is identified at time of analysis. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 14, 2026
Unauthenticated SQL injection in the e107 CMS alt_auth plugin allows a remote attacker to execute arbitrary SQL through a crafted login username whenever the plugin's otherdb or e107db authentication backend is configured against a live external database, affecting all e107 releases prior to 2.3.7. No authentication or user interaction is required once that configuration exists; the assessed impact is high on confidentiality and integrity, bounded by the privileges of the configured external database account, and failed queries can leak the generated SQL through the debug-message path to assist blind injection. No public exploit identified at time of analysis, and default e107 installations - which do not ship alt_auth enabled and do not point a backend at an external DB - are not exposed.
RemediationAI
Vendor-released patch: upgrade e107 CMS to version 2.3.7, which resolves the interpolation issue in the alt_auth otherdb and e107db backends as tracked in GHSA-5f75-c25x-59wx and the v2.3.7 release (https://github.com/e107inc/e107/releases/tag/v2.3.7), or apply upstream commit 120bd4bdbe18c8690c60a007ad6716e52e6ee965 if you maintain a patched fork. If immediate upgrade is not possible, disable or uninstall the alt_auth plugin (or switch authentication back to the built-in method) so that the vulnerable login() paths are unreachable - the trade-off is loss of external/alternative authentication for affected accounts. Where alt_auth must stay enabled, restrict the backend's database account to the minimum privileges needed for authentication lookups (read-only, single schema, no DDL/DML on unrelated tables) to cap what injected SQL can read or modify, and disable or restrict access to site debug/error output so failed queries do not disclose the generated SQL to attackers. Note that because the injection is reachable pre-authentication by simply submitting a crafted login username, none of these compensating controls should be treated as equivalent to upgrading.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The root cause is CWE-89 (SQL Injection) in PHP code. e107's bundled alt_auth plugin provides alternative authentication backends: otherdb_auth.php authenticates against an external database, and e107db_auth.php authenticates against another e107-style user table. In the vulnerable versions, the login() methods of both files concatenate the submitted login username directly into a SQL string and execute it with PDO::query(), i.e. before any effective sanitization or parameter binding is applied. Because PDO::query() runs the string verbatim, the username field becomes an injection point into the authentication lookup query, and the resulting error/debug path can echo the generated query back to the requester. The fix in commit 120bd4bdbe18c8690c60a007ad6716e52e6ee965 is part of a broader hardening pass that replaces raw interpolation with the framework's escape() helper and intval()/filter() allowlisting - notably the commit comments highlight that escape() does not protect identifier positions, which is why identifier-style inputs (table names, language codes, DB/user/prefix values) are constrained with strict regular-expression allowlists in addition to escaping values. The release tag v2.3.7 carries the fixed code.
Know when PHP gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
Unauthenticated remote login username reaches PDO::query() (AV:N/AC:L/PR:N/UI:N); injection hits a separate external DB authority (S:C); data read/modify gives C:H/I:H, but no availability/destruction impact is described (A:N).
Primary rating from Vendor (github).
CVSS VectorVendor: github
Lifecycle Timeline
2DescriptionCVE.org
e107 is a content management system (CMS). Prior to 2.3.7, the bundled alt_auth plugin's otherdb and e107db authentication backends interpolate the submitted login username directly into SQL in e107_plugins/alt_auth/otherdb_auth.php and e107_plugins/alt_auth/e107db_auth.php. The login() methods execute those strings with PDO::query() before effective sanitization, so an unauthenticated user can inject SQL when alt_auth is installed and either backend is configured with a live external database connection. The injection can expose or modify data available to the configured database account, and query failures can additionally disclose the generated query through the debug-message path. This issue is fixed in version 2.3.7.
Articles & Coverage 1
Technical POC Analysis
CWE-89 SQL injection.
Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
SQL injection exploits the way applications construct database queries by mixing user input directly into SQL statements.
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
EUVD-2026-101531
NVD
CVE.org
EPSS
GitHub
Exploit-DB