VYPR
Unrated severityNVD Advisory· Published Jan 30, 2012· Updated Apr 29, 2026

CVE-2011-4898

CVE-2011-4898

Description

wp-admin/setup-config.php in the installation component in WordPress 3.3.1 and earlier generates different error messages for requests lacking a dbname parameter depending on whether the MySQL credentials are valid, which makes it easier for remote attackers to conduct brute-force attacks via a series of requests with different uname and pwd parameters. NOTE: the vendor disputes the significance of this issue; also, it is unclear whether providing intentionally vague error messages during installation would be reasonable from a usability perspective

Affected products

74
  • WordPress/WordPress74 versions
    cpe:2.3:a:wordpress:wordpress:*:*:*:*:*:*:*:*+ 73 more
    • cpe:2.3:a:wordpress:wordpress:*:*:*:*:*:*:*:*range: <=3.3.1
    • cpe:2.3:a:wordpress:wordpress:0.7:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:0.71:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:0.711:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:0.72:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:1.0:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:1.0.1:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:1.0.2:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:1.2:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:1.2.1:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:1.2.2:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:1.5:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:1.5.1:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:1.5.1.2:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:1.5.1.3:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:1.5.2:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:2.0:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:2.0.1:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:2.0.10:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:2.0.11:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:2.0.2:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:2.0.3:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:2.0.4:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:2.0.5:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:2.0.6:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:2.0.7:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:2.0.8:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:2.0.9:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:2.1:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:2.1.1:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:2.1.2:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:2.1.3:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:2.2:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:2.2.1:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:2.2.2:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:2.2.3:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:2.3:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:2.3.1:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:2.3.2:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:2.3.3:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:2.5:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:2.5.1:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:2.6:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:2.6.1:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:2.6.2:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:2.6.3:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:2.6.5:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:2.7:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:2.7.1:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:2.8:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:2.8.1:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:2.8.2:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:2.8.3:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:2.8.4:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:2.8.5:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:2.8.6:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:2.9:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:2.9.1:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:2.9.2:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:3.0:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:3.0.1:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:3.0.2:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:3.0.3:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:3.0.4:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:3.0.5:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:3.0.6:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:3.1:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:3.1.1:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:3.1.2:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:3.1.3:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:3.1.4:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:3.2.1:*:*:*:*:*:*:*
    • cpe:2.3:a:wordpress:wordpress:3.3:*:*:*:*:*:*:*
    • (no CPE)range: <=3.3.1

Patches

Vulnerability mechanics

Root cause

"The installation script returns different error messages for valid versus invalid MySQL credentials when the dbname parameter is omitted, leaking credential validity information."

Attack vector

An attacker sends a series of HTTP requests to `wp-admin/setup-config.php` with different `uname` and `pwd` parameters but omits the `dbname` parameter. The server returns different error messages for valid versus invalid MySQL credentials, allowing the attacker to brute-force the database username and password. No authentication is required, and the attack is conducted remotely over HTTP. This is an information exposure issue [CWE-200].

Affected code

The vulnerability resides in `wp-admin/setup-config.php`, the installation component of WordPress 3.3.1 and earlier. The file generates distinct error messages depending on whether the MySQL credentials are valid when the `dbname` parameter is omitted. This differential error behavior leaks information about credential validity to unauthenticated remote attackers.

What the fix does

The supplied patch [patch_id=1995820] only updates the Twenty Eleven theme translation file (`twentyeleven.pot`) with new copyright headers and metadata. It does not modify `wp-admin/setup-config.php` or alter the error-message behavior described in the CVE. The advisory notes that the vendor disputed the significance of the issue, and no code-level fix for the information leakage is present in this patch.

Preconditions

  • configWordPress 3.3.1 or earlier must be installed and accessible over the network.
  • networkThe attacker must be able to send HTTP requests to wp-admin/setup-config.php.
  • authNo authentication is required; the installation script is publicly accessible.
  • inputThe attacker must supply varying uname and pwd parameters while omitting dbname.

Reproduction

1. Send a request to `http://target/wp-admin/setup-config.php?step=0&uname=root&pwd=wrong` (omit `dbname`). Observe the error message. 2. Send a second request with valid credentials, e.g., `uname=root&pwd=correct`, again omitting `dbname`. 3. Compare the two error responses — they differ, confirming which credentials are valid. 4. Automate this process to brute-force the MySQL username and password. Full PoC code is available at http://www.exploit-db.com/exploits/18417.

Generated on May 23, 2026. Inputs: CWE entries + fix-commit diffs from this CVE's patches. Citations validated against bundle.

References

3

News mentions

0

No linked articles in our index yet.