- Advisory ID: DRUPAL-SA-2008-047
- Project: Drupal core
- Version: 5.x, 6.x
- Date: 2008-August-13
- Security risk: Highly critical
- Exploitable from: Remote
- Vulnerability: Multiple vulnerabilities
Description
Multiple vulnerabilities and weaknesses were discovered in Drupal.
Cross site scripting
A bug in the output filter employed by Drupal makes it possible for malicious users to insert script code into pages (cross site scripting or XSS).
A bug in the private filesystem trusts the MIME type sent by the browser, enabling malicious users with the ability to upload files to execute cross site scripting attacks.
These bugs affects both Drupal 5.x and 6.x.
Arbitrary file uploads via BlogAPI
The BlogAPI module does not validate the extension of uploaded files, enabling users with the “administer content with blog api” permission to upload harmful files.
This bug affects both Drupal 5.x and 6.x.
Cross site request forgeries
Drupal forms contain a token to protect against cross site request forgeries (CSRF). The token may not be validated properly for cached forms and forms containing AHAH elements.
This bug affects Drupal 6.x.
User access rules can be added or deleted upon accessing a properly formatted URL, making such modifications vulnerable to cross site request forgeries (CSRF). This may lead to unintended addition or deletion of an access rule when a sufficiently privileged user visits a page or site created by a malicious person.
This bug affects both Drupal 5.x and 6.x.
Various Upload module vulnerabilities
The Upload module in Drupal 6 contains privilege escalation vulnerabilities for users with the “upload files” permission. This can lead to users being able to edit nodes which they are normally not allowed to, delete any file to which the webserver has sufficient rights, and download attachments of nodes to which they have no access. Harmful files may also be uploaded via cross site request forgeries (CSRF).
These bugs affect Drupal 6.x.
Versions affected
- Drupal 5.x before version 5.10
- Drupal 6.x before version 6.4
Solution
Install the latest version:
- If you are running Drupal 5.x then upgrade to Drupal 5.10.
- If you are running Drupal 6.x then upgrade to Drupal 6.4.
If you are unable to upgrade immediately, you can apply a patch to secure your installation until you are able to do a proper upgrade. The patches fix security vulnerabilities, but do not contain other fixes which were released in these versions.
- To patch Drupal 5.9 use SA-2008-047-5.9.patch.
- To patch Drupal 6.3 use SA-2008-047-6.3.patch.
Reported by
- The input filter flaw was reported by Bart Jansens*.
- The private filesystem MIME type issue was reported by Mark Burdett.
- The BlogAPI file upload flaw was independently reported by Gábor Hojtsy* and Mark Burdett.
- The CSRF of cacheable forms and CSRF of uploads was reported by Heine Deelstra*.
- The CSRF of user access rules was reported by Barry Jaspan*.
- The Upload privilege escalation was reported by Damien Tournoud*.
- The arbitrary file deletion issue was reported by John Morahan*.
- The attachment view access bypass issue was reported by Caroline Schnapp.
* Members of the Drupal security team.
Contact
The security contact for Drupal can be reached at security at drupal.org or via the form at http://drupal.org/contact.