[39356] in bugtraq

home help back first fref pref prev next nref lref last post

Advisory 02/2005: Remote code execution in Serendipity

daemon@ATHENA.MIT.EDU (Christopher Kunz)
Wed Jun 29 19:05:25 2005

Message-ID: <42C31C80.3050506@hardened-php.net>
Date: Thu, 30 Jun 2005 00:11:12 +0200
From: Christopher Kunz <christopher.kunz@hardened-php.net>
MIME-Version: 1.0
To: bugtraq@securityfocus.com
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit

                         Hardened PHP Project
                         www.hardened-php.net


                       -= Security  Advisory =-


      Advisory: Remote code execution in Serendipity
  Release Date: 2005/06/29
Last Modified: 2005/06/29
        Author: Christopher Kunz <christopher.kunz@hardened-php.net>
   Application: Serendipity <= 0.8.2
      Severity: Arbitrary remote code execution
          Risk: Very High
Vendor Status: Vendor has released an updated version
    References: http://www.hardened-php.net/advisory-022005.php


Overview:

    Quote from http://www.s9y.org/:
    "Serendipity is a weblog/blog system, implemented with PHP. It is standards
    compliant, feature rich and open source (BSD License). Serendipity is
    constantly under active development, with a team of talented developers
    trying to make the best PHP powered blog on the net."


Details:

    GulfTech Security [1] recently discovered a vulnerability in the PHP XML RPC
    project [2] that leads to remote code execution. Unfortunately, this vulner-
    ability also exists in the PEAR XMLRPC implementation, and GulfTech somewhat
    neglected to notify the vendors in question.
    Similar to the recently-discovered holes in PostNuke and Drupal, the
    XML-RPC parser in Serendipity allows for remote code execution. An attacker
    can send a forged POST request to the victim's blog and include PHP code in
    the request body. This code is executed in the context of the affected
    Serendipity instance.
    Since the vulnerability is extremely easy to exploit and apart from one POST
    request, no suspicious activity is logged, it could be used for automated
    mass defacements and viral reproduction, similar to Santy.
    The Hardened PHP project had knowledge of that kind of vulnerability for
    some time now but tried to establish a responsible way of coordinating the
    disclosure with all affected parties.
    The maintainer of PEAR::XML_RPC has released an updated version that fixes
    the vulnerability. The Serendipity team has released a fixed version, too.


CVE Information:

    The Common Vulnerabilities and Exposures project (cve.mitre.org) has
    assigned the name CAN-2005-1921 to the vulnerability in PEAR::XML_RPC.


Proof of Concept:

    The Hardened PHP Project is not going to release an exploit for
    this vulnerability to the public.
    It is trivial to implement, anyway.


Disclosure Timeline:

    29. June 2005 - Vulnerability discovered and vendor notified
    29. June 2005 - Vendor released bugfixed version
    29. June 2005 - Public disclosure


Recommendation:

    We urge you to update to the newest version of Serendipity, 0.8.2.
    http://prdownloads.sourceforge.net/php-blog/serendipity-0.8.2.tar.gz
    If, for some reason, that seems unfeasible, you should render the
    file serendipity_xmlrpc.php unreadable by the web server to close the
    most obvious attack vector.


References:

    [ 1 ] http://www.gulftech.org/
    [ 2 ] http://phpxmlrpc.sourceforge.net/


Copyright 2005 Christopher Kunz from the hardened PHP Project. All rights reserved.


home help back first fref pref prev next nref lref last post