External Login CVE-2025-11177
HIGHAttack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessReach External Login endpoint unauthenticated
-
DeliverySubmit crafted 'log' parameter value
-
ExploitInject SQL into unprepared auth query
-
ExecutionAppend stacked/boolean queries
-
ImpactExtract sensitive database records
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 | Exploitation requires that the External Login plugin (≤1.11.2) be installed AND configured to use a PostgreSQL or MSSQL database as the external authentication backend - the default MySQL/MariaDB configuration is NOT affected, which sharply narrows the exploitable population. When that backend is configured, no further conditions apply: the attack is remote and unauthenticated (PR:N), needs no user interaction (UI:N), and targets the 'log' parameter of the login flow. The primary limiting factor is therefore the non-default database configuration; secondary limits include the confidentiality-only impact (data disclosure, not write or denial of service). |
| Impact | This is a moderate-priority vulnerability whose raw CVSS 7.5 (AV:N/AC:L/PR:N/UI:N) overstates real-world risk because of a significant, often-overlooked precondition in the description. The CVSS vector correctly reflects an unauthenticated (PR:N), network-reachable, low-complexity SQL injection with high confidentiality impact only (C:H/I:N/A:N), which is internally consistent with the CWE-89 classification and the stated goal of extracting database data. However, exploitation is NOT possible against the default WordPress stack: the description explicitly states the flaw is only reachable 'when a PostgreSQL or MSSQL database is configured as the external authentication database.' WordPress core defaults to MySQL/MariaDB, so the vulnerable code path requires a deliberate, non-default External Login configuration - a material limiting factor that the AC:L metric does not capture (CVSS 4.0 would express this as AT:P). The supporting signals point to low urgency: EPSS is 0.40% (32nd percentile), there is no CISA KEV listing, and no public proof-of-concept is referenced. The reference set points only to the vulnerable source line (db.php#L153) and the Wordfence advisory, with no exploit code cited. Net: a legitimate, patch-worthy SQLi for the subset of sites running External Login against PostgreSQL/MSSQL, but low likelihood of mass exploitation and no evidence of active attacks - treat as routine-priority patching rather than emergency response, prioritizing only confirmed PostgreSQL/MSSQL deployments. |
| Exploit ScenarioDerived | An unauthenticated attacker submits a crafted value in the 'log' (username) parameter to the External Login endpoint of a WordPress site that has been configured to authenticate against a PostgreSQL or MSSQL backend. Because the parameter is insufficiently escaped and the query is not properly prepared, the attacker appends additional SQL to the existing authentication query and reads sensitive data (e.g., credentials or user records) from the external database. No authentication or user interaction is required, but no public exploit code is referenced, so exploitation would currently require custom tooling. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 08, 2026
Unauthenticated SQL injection in the External Login WordPress plugin (versions up to and including 1.11.2) allows remote attackers to extract sensitive information from a PostgreSQL or MSSQL external authentication database via the 'log' parameter. Exploitation requires the plugin to be configured with a non-default PostgreSQL or MSSQL backend; default MySQL/MariaDB installations are not vulnerable, which sharply narrows the affected population. The EPSS score is 0.40% (32nd percentile), no public exploit code has been identified, and the impact is limited to confidentiality (data disclosure) without integrity or availability effects.
RemediationAI
Upgrade the External Login plugin beyond version 1.11.2 as soon as a patched release is available; the provided data does not specify an exact fix version, so consult the Wordfence advisory (https://www.wordfence.com/threat-intel/vulnerabilities/id/488f1a2f-01c8-40cf-b52f-d707271105f5?source=cve) for updated version guidance. If the plugin is not essential, disabling and removing it eliminates exposure. If the plugin must remain active, the most effective compensating control is to avoid using a PostgreSQL or MSSQL backend - revert to the default MySQL/MariaDB configuration if feasible, though this may break authentication for users whose credentials reside in the external database. As a secondary measure, deploy a WAF rule to block SQL injection patterns targeting the 'log' parameter on the login endpoint, but be aware that WAF bypasses are possible and this does not replace a patch. Restrict access to the login flow where practical. No vendor-released patch is identified in the provided data at time of analysis.
Affected ProductsAI
External Login plugin for WordPress, all versions up to and including 1.11.2, when configured to use a PostgreSQL or MSSQL database as the external authentication backend. Default MySQL/MariaDB configurations are not affected. The vulnerable code is in login/db.php at line 153 as shown in the plugin repository (https://plugins.trac.wordpress.org/browser/external-login/tags/1.11.2/login/db.php#L153). Vendor advisory: https://www.wordfence.com/threat-intel/vulnerabilities/id/488f1a2f-01c8-40cf-b52f-d707271105f5?source=cve. No CPE strings were provided in the input.
Affects your stack
Find out whether the stacks and servers you run are on an affected version.
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The vulnerability is a classic SQL injection (CWE-89) arising from insufficient escaping of user-supplied input and lack of parameterization in SQL queries constructed by the plugin's login/db.php file, specifically at line 153 (https://plugins.trac.wordpress.org/browser/external-login/tags/1.11.2/login/db.php#L153). The 'log' parameter, which is passed during the external authentication login flow, is concatenated directly into a SQL query when the plugin communicates with a PostgreSQL or MSSQL external authentication database. These database drivers do not receive the same escaping treatment as the default MySQL/MariaDB path, enabling an unauthenticated attacker to inject arbitrary SQL and read data from the database. The root cause is improper neutralization of special elements used in an SQL command, and the absence of prepared statements. No CPE strings were provided in the input to further specify affected configurations beyond the plugin version range.
Know when PostgreSQL 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:U/C:H/I:N/A:N
Unauthenticated remote SQLi via the login parameter gives AV:N/PR:N/UI:N; impact is data extraction only, so C:H/I:N/A:N; AC:L once the required PostgreSQL/MSSQL backend is configured.
Primary rating from Vendor (wordfence).
CVSS VectorVendor: wordfence
DescriptionCVE.org
The External Login plugin for WordPress is vulnerable to SQL Injection via the 'log' parameter in all versions up to, and including, 1.11.2 due to insufficient escaping on the user supplied parameter and lack of sufficient preparation on the existing SQL query. This makes it possible for unauthenticated attackers to append additional SQL queries into already existing queries that can be used to extract sensitive information from the database when a PostgreSQL or MSSQL database is configured as the external authentication database.
Executive ViewAI
A high-severity SQL injection vulnerability in the External Login WordPress plugin could allow attackers to read sensitive data from external authentication databases, but only for organizations that have configured the plugin with a PostgreSQL or MSSQL backend rather than the default MySQL/MariaDB. Because no public exploit identified at time of analysis and exploitation requires a non-default configuration, the immediate risk is limited to a narrow subset of deployments; nevertheless, any exposure of authentication data could require breach assessment and credential rotation. No vendor-released patch identified at time of analysis, so affected teams should prioritize interim mitigations and monitoring.
No vendor-released patch identified at time of analysis. Interim mitigations: disable or remove the External Login plugin on versions up to and including 1.11.2; where the plugin is required, switch to the default MySQL/MariaDB backend (not vulnerable) or isolate the PostgreSQL/MSSQL backend with strict network access controls; deploy WAF rules to block SQL injection in the 'log' parameter; monitor database and web logs for anomalous queries; rotate credentials for the external authentication database.
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.
More in PostgreSQL
View allPostgreSQL libpq functions PQescapeLiteral(), PQescapeIdentifier(), PQescapeString(), and PQescapeStringConn() improperl
An issue was discovered in Appsmith before 1.52. Rated critical severity (CVSS 9.8), this vulnerability is remotely expl
Argument injection vulnerability in PostgreSQL 9.2.x before 9.2.4, 9.1.x before 9.1.9, and 9.0.x before 9.0.13 allows re
Unauthenticated arbitrary file write in Splunk Enterprise (below 10.2.4 and 10.0.7) and Splunk Cloud Platform (below 10.
Unauthenticated SQL injection in Sangoma Switchvox SMB Edition 8.3 (build 104997) lets remote attackers execute arbitrar
PostgreSQL versions before 9.2.22, 9.3.18, 9.4.13, 9.5.8 and 9.6.4 are vulnerable to incorrect authentication flaw allow
The build_tablename function in pgsql.c in the PostgreSQL (aka pgsql) extension in PHP through 5.6.7 does not validate t
A vulnerability in the h2oai/h2o-3 REST API versions 3.46.0.4 allows unauthenticated remote attackers to execute arbitra
In PostgreSQL 9.3 through 11.2, the "COPY TO/FROM PROGRAM" function allows superusers and users in the 'pg_execute_serve
Unauthenticated SQL injection in Vendure Shop API allows remote attackers to execute arbitrary SQL commands against the
Parse Server is an open source http web server backend. Rated critical severity (CVSS 10.0), this vulnerability is remot
Hard-coded default PostgreSQL credentials shipped in the docker-compose.yaml of langgenius Dify through version 1.5.1 al
NVD
CVE.org
EPSS
GitHub PoC
Exploit-DB