-----BEGIN PGP SIGNED MESSAGE-----
Hardened PHP Project
-= Security Advisory =-
Advisory: Remote code execution in Serendipity
Release Date: 2005/06/29
Last Modified: 2005/06/29
Author: Christopher Kunz <firstname.lastname@example.org>
Application: Serendipity <= 0.8.2
Severity: Arbitrary remote code execution
Risk: Very High
Vendor Status: Vendor has released an updated version
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."
GulfTech Security  recently discovered a vulnerability in the PHP XML RPC
project  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
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.
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.
29. June 2005 - Vulnerability discovered and vendor notified
29. June 2005 - Vendor released bugfixed version
29. June 2005 - Public disclosure
We urge you to update to the newest version of Serendipity, 0.8.2.
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.
[ 1 ] http://www.gulftech.org/
[ 2 ] http://phpxmlrpc.sourceforge.net/
pub 1024D/0A864AA1 2004-04-17 Hardened-PHP Signature Key
Key fingerprint = 066F A6D0 E57E 9936 9082 7E52 4439 14CC 0A86 4AA1
Copyright 2005 Christopher Kunz from the hardened PHP Project. All rights reserved.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.6 (GNU/Linux)
Comment: For info see http://www.gnupg.org
-----END PGP SIGNATURE-----