<<< Date Index >>>     <<< Thread Index >>>

[DRUPAL-SA-2006-007] Drupal 4.6.8 / 4.7.2 fixes arbitrary file execution issue



----------------------------------------------------------------------------
Drupal security advisory                                  DRUPAL-SA-2006-007
----------------------------------------------------------------------------
Advisory ID:    DRUPAL-SA-2006-007
Project:        Drupal core and any web app that allows user uploads
Date:           2006-06-01
Security risk:  highly critical
Impact:         Drupal core
Where:          from remote
Vulnerability:  Execution of arbitrary files
----------------------------------------------------------------------------

Description
-----------

Recently, the Drupal security team was informed of a potential exploit
that would allow untrusted code to be executed upon a successful request
by a malicious user. If a dynamic script with multiple extensions such
as file.php.pps or file.sh.txt is uploaded and then accessed from a web
browser under certain common Apache configurations, it will cause the
script inside to be executed. We deemed this exploit critical and
released Drupal 4.6.7 and 4.7.1 six hours after the report was filed.
The fix was to create a .htaccess file to remove all dynamic script
handlers, such as PHP, from the "files" directory.

After continuous review, however, we've found that the fix will not work
in certain Apache configurations, for example those for whom .htaccess
FileInfo overrides are disabled. We are thus releasing 4.6.8 and 4.7.2
with a more robust .htaccess fix, as well as a Drupal core solution to
the issue which will work under all configurations. The new behavior of
Drupal's upload.module is to rename all uploaded files with multiple,
non-numeric, and non-whitelisted extensions by any other user than the
administrator. For example:

file.php.pps
this is a long file.name.txt

becomes:

file.php_.pps
this is a long file.name_.txt

Please note that the particular Apache configurations under which this
exploit is possible will affect ANY web application on the server which
allows uploads to web-accessible directories, not just Drupal. The
Drupal security team has also contacted other projects, such as
WordPress, about this issue and new versions of their software have
either already been released, or are forthcoming.

4.7.2 also fixes a potential XSS bug with upload.module.

Versions affected
-----------------
All Drupal versions before 4.6.8 and before Drupal 4.7.2.

Solution
--------
If you are running Drupal 4.6.x then upgrade to Drupal 4.6.8.
If you are running Drupal 4.7.x then upgrade to Drupal 4.7.2.

To patch Drupal 4.6.7 use the
http://drupal.org/files/sa-2006-007/4.6.7.patch.
To patch Drupal 4.7.1 use the
http://drupal.org/files/sa-2006-007/4.7.1.patch.

Reported By
-----------
DRUPAL-SA-2006-06 issue: Lourens Veen
XSS vulnerability in upload.module: Karoly Negyesi

Contact
-------
The security contact for Drupal can be reached at security@xxxxxxxxxx
or using the form at http://drupal.org/contact. More information is
available from http://drupal.org/security or from our security RSS feed
http://drupal.org/security/rss.xml.


// Uwe Hermann, on behalf of the Drupal Security Team.
-- 
Uwe Hermann 
http://www.hermann-uwe.de
http://www.it-services-uh.de  | http://www.crazy-hacks.org 
http://www.holsham-traders.de | http://www.unmaintained-free-software.org

Attachment: signature.asc
Description: Digital signature