seeing is believing

Drupal Context 6.x / 7.x Access Bypass / Code Execution

Drupal Context 6.x / 7.x Access Bypass / Code Execution
Posted Oct 18, 2013
Authored by Heine Deelstra | Site drupal.org

Drupal Context versions 6.x and 7.x suffer from access bypass and arbitrary PHP code execution vulnerabilities.

tags | advisory, arbitrary, php, vulnerability, code execution
MD5 | 6e95ddb22bd4cf0d8b15ae1f8416c060

Drupal Context 6.x / 7.x Access Bypass / Code Execution

Change Mirror Download
View online: https://drupal.org/node/2113317

* Advisory ID: DRUPAL-SA-CONTRIB-2013-079
* Project: Context [1] (third-party module)
* Version: 6.x, 7.x
* Date: 2013-2013-16
* Security risk: Highly critical [2]
* Exploitable from: Remote
* Vulnerability: Access bypass, Arbitrary PHP code execution

-------- DESCRIPTION
---------------------------------------------------------

Context allows you to manage contextual conditions and reactions for
different portions of your site

This advisory covers two separate issues. The first, and more severe issue
(Highly Critical status), is that the module allows execution of PHP code via
manipulation of a URL argument in a path used for AJAX operations when
running in a configuration without a json_decode function provided by PHP or
the PECL JSON library.

This vulnerability is mitigated by the fact that the server must be running a
version of PHP prior to 5.2 that does not have the json library installed
(PHP 5.2+ come bundled with the JSON library).

The second, less severe issue (Less Critical status), is that Context uses
Drupal's token scheme to restrict access to the json rendering of a block.
This control mechanism is insufficient as Drupal's token scheme is designed
to provide security between two different sessions (or a session and a non
authenticated user) and is not designed to provide security within a session.
This means that a user with access to block A may be able to use the
information about block A and the resulting token in order to generate the
correct token for accessing block B to which they should not have access.

The vulnerability is mitigated by needing blocks that have sensitive
information (for example, custom blocks with private information or a list of
unpublished nodes.)


-------- CVE IDENTIFIER(S) ISSUED
--------------------------------------------

* /A CVE identifier [3] will be requested, and added upon issuance, in
accordance with Drupal Security Team processes./

-------- VERSIONS AFFECTED
---------------------------------------------------

* 6.x-2.x versions prior to 6.x-3.2.
* 7.x-3.x versions prior to 7.x-3.0.

Drupal core is not affected. If you do not use the contributed Context [4]
module, there is nothing you need to do.

-------- SOLUTION
------------------------------------------------------------

Remote code execution can be resolved by any of

* Upgrading your PHP to 5.2+
* Installing the JSON package [5].
* Upgrading context to 6.x-3.2 [6] or 7.x-3.0 [7]

Block access issue can be resolved by upgrading context to 6.x-3.2 [8] or
7.x-3.0 [9].

Also see the Context [10] project page.

-------- REPORTED BY
---------------------------------------------------------

* Heine [11] of the Drupal Security Team

-------- FIXED BY
------------------------------------------------------------

* Hunter [12] of the Drupal Security Team, a module maintainer
* Heine [13] of the Drupal Security Team
* tekante [14] a module maintainer

-------- COORDINATED BY
------------------------------------------------------

* Hunter [15] 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 [16].

Learn more about the Drupal Security team and their policies [17], writing
secure code for Drupal [18], and securing your site [19].


[1] http://drupal.org/project/context
[2] http://drupal.org/security-team/risk-levels
[3] http://cve.mitre.org/
[4] http://drupal.org/project/context
[5] http://pecl.php.net/package/json
[6] https://drupal.org/node/2112791
[7] https://drupal.org/node/2112785
[8] https://drupal.org/node/2112791
[9] https://drupal.org/node/2112785
[10] http://drupal.org/project/context
[11] http://drupal.org/user/17943
[12] http://drupal.org/user/426416
[13] http://drupal.org/user/17943
[14] http://drupal.org/user/640024
[15] http://drupal.org/user/426416
[16] http://drupal.org/contact
[17] http://drupal.org/security-team
[18] http://drupal.org/writing-secure-code
[19] http://drupal.org/security/secure-configuration

Comments

RSS Feed Subscribe to this comment feed

No comments yet, be the first!

Login or Register to post a comment

File Archive:

February 2015

  • Su
  • Mo
  • Tu
  • We
  • Th
  • Fr
  • Sa
  • 1
    Feb 1st
    2 Files
  • 2
    Feb 2nd
    17 Files
  • 3
    Feb 3rd
    15 Files
  • 4
    Feb 4th
    16 Files
  • 5
    Feb 5th
    14 Files
  • 6
    Feb 6th
    4 Files
  • 7
    Feb 7th
    0 Files
  • 8
    Feb 8th
    0 Files
  • 9
    Feb 9th
    0 Files
  • 10
    Feb 10th
    0 Files
  • 11
    Feb 11th
    0 Files
  • 12
    Feb 12th
    0 Files
  • 13
    Feb 13th
    0 Files
  • 14
    Feb 14th
    0 Files
  • 15
    Feb 15th
    0 Files
  • 16
    Feb 16th
    0 Files
  • 17
    Feb 17th
    0 Files
  • 18
    Feb 18th
    0 Files
  • 19
    Feb 19th
    0 Files
  • 20
    Feb 20th
    0 Files
  • 21
    Feb 21st
    0 Files
  • 22
    Feb 22nd
    0 Files
  • 23
    Feb 23rd
    0 Files
  • 24
    Feb 24th
    0 Files
  • 25
    Feb 25th
    0 Files
  • 26
    Feb 26th
    0 Files
  • 27
    Feb 27th
    0 Files
  • 28
    Feb 28th
    0 Files

Top Authors In Last 30 Days

File Tags

Systems

packet storm

© 2015 Packet Storm. All rights reserved.

close