- Advisory ID: DRUPAL-SA-CORE-2012-004
- Project: Drupal core
- Version: 6.x, 7.x
- Date: 2012-December-19
- Security risk: Moderately critical
- Exploitable from: Remote
- Vulnerability: Access bypass, Arbitrary PHP code execution
Multiple vulnerabilities were fixed in the supported Drupal core versions 6 and 7.
Access bypass (User module search - Drupal 6 and 7)
A vulnerability was identified that allows blocked users to appear in user search results, even when the search results are viewed by unprivileged users.
This vulnerability is mitigated by the fact that the default Drupal core user search results only display usernames (and disclosure of usernames is not considered a security vulnerability). However, since modules or themes may override the search results to display more information from each user's profile, this could result in additional information about blocked users being disclosed on some sites.
Access bypass (Upload module - Drupal 6)
A vulnerability was identified that allows information about uploaded files to be displayed in RSS feeds and search results to users that do not have the "view uploaded files" permission.
This issue affects Drupal 6 only.
Arbitrary PHP code execution (File upload modules - Drupal 6 and 7)
Drupal core's file upload feature blocks the upload of many files that can be executed on the server by munging the filename. A malicious user could name a file in a manner that bypasses this munging of the filename in Drupal's input validation.
This vulnerability is mitigated by several factors: The attacker would need the permission to upload a file to the server. Certain combinations of PHP and filesystems are not vulnerable to this issue, though we did not perform an exhaustive review of the supported PHP versions. Finally: the server would need to allow execution of files in the uploads directory. Drupal core has protected against this with a .htaccess file protection in place from SA-2006-006 - Drupal Core - Execution of arbitrary files in certain Apache configurations. Users of IIS should consider updating their web.config. Users of Nginx should confirm that only the index.php and other known good scripts are executable. Users of other webservers should review their configuration to ensure the goals are achieved in some other way.
CVE identifier(s) issued
- Access bypass (User module search - Drupal 6 and 7): CVE-2012-5651
- Access bypass (Upload module - Drupal 6): CVE-2012-5652
- Arbitrary PHP code execution (File upload modules - Drupal 6 and 7): CVE-2012-5653
- Drupal core 6.x versions prior to 6.27.
- Drupal core 7.x versions prior to 7.18.
Install the latest version:
- If you use Drupal 6.x, upgrade to Drupal core 6.27.
- If you use Drupal 7.x, upgrade to Drupal core 7.18.
Also see the Drupal core project page.
- The access bypass issue in the User module search results was reported by Derek Wright of the Drupal Security Team.
- The access bypass issue in the Drupal 6 Upload module was reported by Simon Rycroft, and by Damien Tournoud of the Drupal Security Team.
- The arbitrary code execution issue was reported by Amit Asaravala.
- The access bypass issue in the User module search results was fixed by Derek Wright, Ivo Van Geertruyen, Peter Wolanin, and David Rothstein, all members of the Drupal Security Team.
- The access bypass issue in the Drupal 6 Upload module was fixed by Michaël Dupont, and by Fox and David Rothstein of the Drupal Security Team.
- The arbitrary code execution issue was fixed by Nathan Haug and Justin Klein-Keane, and by John Morahan and Greg Knaddison of the Drupal Security team.
- Jeremy Thorson QA/Testing infrastructure
- Ben Jeavons of the Drupal Security Team
- David Rothstein of the Drupal Security Team
- Gábor Hojtsy of the Drupal Security Team
- Greg Knaddison of the Drupal Security Team
- Fox of the Drupal Security Team
Contact and More Information
The Drupal security team can be reached at security at drupal.org or via the contact form at http://drupal.org/contact.