Book Image

Mastering Mambo : E-Commerce, Templates, Module Development, SEO, Security, and Performance

By : Christian Wenz, Tobias Hauser
Book Image

Mastering Mambo : E-Commerce, Templates, Module Development, SEO, Security, and Performance

By: Christian Wenz, Tobias Hauser

Overview of this book

<p>Mambo is a PHP-based Open Source CMS. Mambo is both easy to use at the entry level for creating basic websites, while having the power and flexibility to support complex web applications. <br /> <br /> Mambo implements the core requirements of a full featured CMS. It has a powerful and extensible templating system with the ability to upload and manage many different data types. User access control, content approval, rich administrative control, content display scheduling are all built-in. New features and extensions are constantly added to the core system, with many more being available and supported by the community.<br /> <br /> Most of the Mambo development team now works on a fork of Mambo known as Joomla. Mastering Mambo is fully compatible with Joomla's 1.0 release.</p>
Table of Contents (18 chapters)
Mastering Mambo
Credits
About the Authors
Preface
Index

Cross Site Scripting (XSS)


XSS stands for Cross-Site Scripting. The correct abbreviation would naturally have been CSS, but that term is already assigned. But what does XSS mean? As the name says, script code is inserted from another site (Cross-Site) and it works like this: An attacker succeeds in inserting harmful JavaScript code into a page. Since it concerns client-side technology, this code is run on the client, thus on the respective website visitor's computer.

The main reason for the success of this type of an attack lies in the fact that data coming from the user is passed without checking. Here is an excerpt from the /html/ content.php file of Mambo 4.5 Stable 1.0.3, from the editContent() function:

$Returnid = mosGetParam( $_REQUEST, 'Returnid', 0 );

So far there is nothing unusual. The Returnid value is read from the superglobal $_Request array and stored in the $Returnid variable. You can see the mosGetParam() function from the classes/mambo.php file as evidence:

/**
* Utility...