Category Archives: Drupal

Drupal Security Advisories

USASearch – Moderately Critical – Access Bypass – SA-CONTRIB-2016-010

Description

This module indexes public content using USASearch, a program of the General Services Administration’s Office of Citizen Services and Information Technology (OCSIT), which offers free search services to any federal, state, local, tribal, or territorial government agency that can be used to search one or many sites. Read more at http://search.usa.gov/program .

The module may index unpublished content making content accessible through search.

This vulnerability is mitigated by the fact that it only affects unpublished content that has been saved and content that was published and subsequently unpublished.

CVE identifier(s) issued

  • A CVE identifier will be requested, and added upon issuance, in accordance with Drupal Security Team processes.

Versions affected

  • usasearch 7.x-5.x versions prior to 7.x-5.1.

Drupal core is not affected. If you do not use the contributed DigitalGov Search (machine name: USASearch) module, there is nothing you need to do.

Solution

Install the latest version:

Also see the DigitalGov Search (machine name: USASearch) project page.

Reported by

Fixed by

Coordinated by

Contact and More Information

The Drupal security team can be reached at security at drupal.org or via the contact form at https://www.drupal.org/contact.

Learn more about the Drupal Security team and their policies, writing secure code for Drupal, and securing your site.

Follow the Drupal Security Team on Twitter at https://twitter.com/drupalsecurity

Drupal version: 

Prepopulate – Moderately Critical – Multiple Vulnerabilities – SA-CONTRIB-2016-009

Description

The Prepopulate module allows form fields to be pre-populated in the request.

The Prepopulate module does not adequately prevent a user from overwriting arbitrary parts of $_REQUEST. It also does not prevent pre-populating certain fields that are not displayed or manipulating markup fields to alter elements of the user interface.

CVE identifier(s) issued

  • A CVE identifier will be requested, and added upon issuance, in accordance with Drupal Security Team processes.

Versions affected

  • Prepopulate 7.x-2.x versions prior to 7.x-2.1.

Drupal core is not affected. If you do not use the contributed Prepopulate module, there is nothing you need to do.

Solution

Install the latest version:

Also see the Prepopulate project page.

Reported by

Fixed by

Coordinated by

Contact and More Information

The Drupal security team can be reached at security at drupal.org or via the contact form at https://www.drupal.org/contact.

Learn more about the Drupal Security team and their policies, writing secure code for Drupal, and securing your site.

Follow the Drupal Security Team on Twitter at https://twitter.com/drupalsecurity

Drupal Core – Critical – Multiple Vulnerabilities – SA-CORE-2016-001

Description

File upload access bypass and denial of service (File module – Drupal 7 and 8 – Moderately Critical)

A vulnerability exists in the File module that allows a malicious user to view, delete or substitute a link to a file that the victim has uploaded to a form while the form has not yet been submitted and processed. If an attacker carries out this attack continuously, all file uploads to a site could be blocked by deleting all temporary files before they can be saved.

This vulnerability is mitigated by the fact that the attacker must have permission to create content or comment and upload files as part of that process.

Brute force amplification attacks via XML-RPC (XML-RPC server – Drupal 6 and 7 – Moderately Critical)

The XML-RPC system allows a large number of calls to the same method to be made at once, which can be used as an enabling factor in brute force attacks (for example, attempting to determine user passwords by submitting a large number of password variations at once).

This vulnerability is mitigated by the fact that you must have enabled a module that provides an XML-RPC method that is vulnerable to brute-forcing. There are no such modules in Drupal 7 core, but Drupal 6 core is vulnerable via the Blog API module. It is additionally mitigated if flood control protection is in place for the method in question.

Open redirect via path manipulation (Base system – Drupal 6, 7 and 8 – Moderately Critical)

In Drupal 6 and 7, the current path can be populated with an external URL. This can lead to Open Redirect vulnerabilities.

This vulnerability is mitigated by the fact that it would only occur in combination with custom code, or in certain cases if a user submits a form shown on a 404 page with a specially crafted URL.

For Drupal 8 this is a hardening against possible browser flaws handling certain redirect paths.

Form API ignores access restrictions on submit buttons (Form API – Drupal 6 – Critical)

An access bypass vulnerability was found that allows input to be submitted, for example using JavaScript, for form button elements that a user is not supposed to have access to because the button was blocked by setting #access to FALSE in the server-side form definition.

This vulnerability is mitigated by the fact that the attacker must have access to submit a form that has such buttons defined for it (for example, a form that both administrators and non-administrators can access, but where administrators have additional buttons available to them).

HTTP header injection using line breaks (Base system – Drupal 6 – Moderately Critical)

A vulnerability in the drupal_set_header() function allows an HTTP header injection attack to be performed if user-generated content is passed as a header value on sites running PHP versions older than 5.1.2. If the content contains line breaks the user may be able to set arbitrary headers of their own choosing.

This vulnerability is mitigated by the fact that most hosts have newer versions of PHP installed, and that it requires a module to be installed on the site that allows user-submitted data to appear in HTTP headers.

Open redirect via double-encoded ‘destination’ parameter (Base system – Drupal 6 – Moderately Critical)

The drupal_goto() function in Drupal 6 improperly decodes the contents of $_REQUEST[‘destination’] before using it, which allows the function’s open redirect protection to be bypassed and allows an attacker to initiate a redirect to an arbitrary external URL.

This vulnerability is mitigated by that fact that the attack is not possible for sites running on PHP 5.4.7 or greater.

Reflected file download vulnerability (System module – Drupal 6 and 7 – Moderately Critical)

Drupal core has a reflected file download vulnerability that could allow an attacker to trick a user into downloading and running a file with arbitrary JSON-encoded content.

This vulnerability is mitigated by the fact that the victim must be a site administrator and that the full version of the attack only works with certain web browsers.

Saving user accounts can sometimes grant the user all roles (User module – Drupal 6 and 7 – Less Critical)

Some specific contributed or custom code may call Drupal’s user_save() API in a manner different than Drupal core. Depending on the data that has been added to a form or the array prior to saving, this can lead to a user gaining all roles on a site.

This issue is mitigated by the fact that it requires contributed or custom code that calls user_save() with an explicit category and code that loads all roles into the array.

Email address can be matched to an account (User module – Drupal 7 and 8 – Less Critical)

In certain configurations where a user’s email addresses could be used to log in instead of their username, links to “have you forgotten your password” could reveal the username associated with a particular email address, leading to an information disclosure vulnerability.

This issue is mitigated by the fact that it requires a contributed module to be installed that permits logging in with an email address, and that it is only relevant on sites where usernames are typically chosen to hide the users’ real-life identities.

Session data truncation can lead to unserialization of user provided data (Base system – Drupal 6 – Less Critical)

On certain older versions of PHP, user-provided data stored in a Drupal session may be unserialized leading to possible remote code execution.

This issue is mitigated by the fact that it requires an unusual set of circumstances to exploit and depends on the particular Drupal code that is running on the site. It is also believed to be mitigated by upgrading to PHP 5.4.45, 5.5.29, 5.6.13, or any higher version.

CVE identifier(s) issued (#)

  • CVE identifiers will be requested, and added upon issuance, in accordance with Drupal Security Team processes.

Versions affected

  • Drupal core 6.x versions prior to 6.38
  • Drupal core 7.x versions prior to 7.43
  • Drupal core 8.0.x versions prior to 8.0.4

Solution

Install the latest version:

Also see the Drupal core project page.

Reported by

File upload access bypass and denial of service:

Brute force amplification attacks via XML-RPC:

Open redirect via path manipulation:

Form API ignores access restrictions on submit buttons:

HTTP header injection using line breaks:

Open redirect via double-encoded ‘destination’ parameter:

Reflected file download vulnerability:

Saving user accounts can sometimes grant the user all roles:

Email address can be matched to an account:

Session data truncation can lead to unserialization of user provided data:

Fixed by

File upload access bypass and denial of service:

Brute force amplification attacks via XML-RPC:

Open redirect via path manipulation:

Form API ignores access restrictions on submit buttons:

HTTP header injection using line breaks:

Open redirect via double-encoded ‘destination’ parameter:

Reflected file download vulnerability:

Saving user accounts can sometimes grant the user all roles:

Email address can be matched to an account:

Session data truncation can lead to unserialization of user provided data:

Coordinated by

Contact and More Information

The Drupal security team can be reached at security at drupal.org or via the contact form at https://www.drupal.org/contact.

Learn more about the Drupal Security team and their policies, writing secure code for Drupal, and securing your site.

Follow the Drupal Security Team on Twitter at https://twitter.com/drupalsecurity

Drupal version: 

SA-CONTRIB-2016-008 – FileField – Denial of Service

Description

FileField module allows users to upload files in conjunction with the Content Construction Kit (CCK) module in Drupal 6.

The module doesn’t validate that a request to delete a temporary file was made by the user who uploaded the file. An attacker can use this vulnerability to delete other user’s file uploads while they are in the process of creating or editing content and attaching files (before it is saved). This can be used as a denial of service (DoS) attack that can prevent file uploads from working on the site.

This vulnerability is mitigated by the fact that an attacker must have a role with the permission to create content and upload files using a file (or image) field.

CVE identifier(s) issued

  • A CVE identifier will be requested, and added upon issuance, in accordance with Drupal Security Team processes.

Versions affected

  • FileField module 6.x-3.x versions prior to 6.x-3.14.

Drupal core is not affected. If you do not use the contributed FileField module, there is nothing you need to do.

Solution

Install the latest version:

Also see the FileField project page.

Reported by

Fixed by

Coordinated by

Contact and More Information

The Drupal security team can be reached at security at drupal.org or via the contact form at https://www.drupal.org/contact.

Learn more about the Drupal Security team and their policies, writing secure code for Drupal, and securing your site.

Follow the Drupal Security Team on Twitter at https://twitter.com/drupalsecurity

Drupal version: 

Nodejs – Access bypass – Moderately Critical — DRUPAL-SA-CONTRIB-2016-007

Description

This module provides an API that other modules can use to add realtime capabilities to Drupal, specifically enabling pushing updates to open connected clients.

The module doesn’t disconnect unauthenticated sockets, allowing those sockets to receive broadcast messages. For sites that only serve authenticated pages, or only allows Node.js connections from authenticated users, the expectation is that only authenticated Drupal users will see broadcast messages.

CVE identifier(s) issued

  • A CVE identifier will be requested, and added upon issuance, in accordance with Drupal Security Team processes.

Versions affected

  • Node.js 7.x-1.x versions prior to 7.x-1.11.
  • Node.js 8.x-1.x beta versions prior to 8.x-1.0.

Drupal core is not affected. If you do not use the contributed Node.js integration module, there is nothing you need to do.

Solution

Install the latest version:

Also see the Node.js integration project page.

Reported by

Fixed by

Coordinated by

Contact and More Information

The Drupal security team can be reached at security at drupal.org or via the contact form at https://www.drupal.org/contact.

Learn more about the Drupal Security team and their policies, writing secure code for Drupal, and securing your site.

Follow the Drupal Security Team on Twitter at https://twitter.com/drupalsecurity

Drupal version: 

Commerce Authorize.Net SIM/DPM Payment Methods – Access Bypass – DRUPAL-SA-CONTRIB-2016-006

Description

This module enables you to make credit card payments for Drupal Commerce orders via the Authorize.Net payment gateway using either their SIM (hosted payment page) or DPM (direct post method) mechanisms.

The module doesn’t sufficiently protect against the premature triggering of order completion without successful payment by the manual entry of a specially-constructed URL which contains the correct payment redirect key.

This vulnerability is mitigated by the fact that an attacker must know the format of the redirect URL and the current payment redirect key. It’s also worth noting that orders prematurely completed in this fashion will NOT record a successful payment and thus show an unpaid balance.

CVE identifier(s) issued

  • A CVE identifier will be requested, and added upon issuance, in accordance with Drupal Security Team processes.

Versions affected

  • Commerce Authorize.Net SIM/DPM Payment Methods versions prior to 7.x-1.4.

Drupal core is not affected. If you do not use the contributed Commerce Authorize.Net SIM/DPM Payment Methods module, there is nothing you need to do.

Solution

Install the latest version:

Also see the Commerce Authorize.Net SIM/DPM Payment Methods project page.

Reported by

Fixed by

Coordinated by

Contact and More Information

The Drupal security team can be reached at security at drupal.org or via the contact form at https://www.drupal.org/contact.

Learn more about the Drupal Security team and their policies, writing secure code for Drupal, and securing your site.

Follow the Drupal Security Team on Twitter at https://twitter.com/drupalsecurity

Drupal version: 

CAS – Moderately Critical – Information Disclosure – DRUPAL-SA-CONTRIB-2016-005

Description

This module enables you to use your Drupal site as a client or server for the single sign on protocol CAS. This vulnerability only affects sites that use the “CAS Server” sub module.

The module doesn’t allow an administrator to restrict which CAS clients are allowed authenticate with the Drupal CAS server. A malicious CAS client can trick your users into exposing information about themselves, including: username, uid, email, account created date, account language, and roles.

This vulnerability is mitigated by the fact that a user must click a specially formed link from the malicious site and log into your Drupal CAS server with their credentials. If the user already has an active session with your Drupal CAS server, then that step is skipped.

CVE identifier(s) issued

  • A CVE identifier will be requested, and added upon issuance, in accordance with Drupal Security Team processes.

Versions affected

  • CAS 7.x-1.x versions prior to 7.x-1.5.

Drupal core is not affected. If you do not use the contributed CAS module, there is nothing you need to do.

Solution

Install the latest version:

  • If you are using the CAS Server sub-module, upgrade to CAS 7.x-1.5 and configure the “white list” of accepted CAS clients that are allowed to authenticate with your CAS server.
  • If you use the CAS module but NOT the server sub-module, then do nothing.

Also see the CAS project page.

Reported by

Fixed by

Coordinated by

Contact and More Information

The Drupal security team can be reached at security at drupal.org or via the contact form at https://www.drupal.org/contact.

Learn more about the Drupal Security team and their policies, writing secure code for Drupal, and securing your site.

Follow the Drupal Security Team on Twitter at https://twitter.com/drupalsecurity

Embedded Media Field – Moderately Critical – Access Bypass – DRUPAL-SA-CONTRIB-2016-004

Description

This module enables you to to display video, image, and audio files from various third party providers

The module doesn’t sufficiently sanitize path arguments under certain scenarios.

This vulnerability is mitigated by the fact that an attacker must be able to trick an administrator into visiting a carefully crafted URL.

CVE identifier(s) issued

  • A CVE identifier will be requested, and added upon issuance, in accordance with Drupal Security Team processes.

Versions affected

  • Embedded Media Field 6.x-1.x all versions.
  • Embedded Media Field 6.x-2.x versions prior to 6.x-2.7.

Versions of Embedded Media Field for Drupal 7 are not affected.

Drupal core is not affected. If you do not use the contributed Embedded Media Field module, there is nothing you need to do.

Solution

Install the latest version:

Also see the Embedded Media Field project page.

Reported by

Fixed by

Coordinated by

Contact and More Information

The Drupal security team can be reached at security at drupal.org or via the contact form at https://www.drupal.org/contact.

Learn more about the Drupal Security team and their policies, writing secure code for Drupal, and securing your site.

Follow the Drupal Security Team on Twitter at https://twitter.com/drupalsecurity

Open Atrium – Moderately Critical – Access Bypass – SA-CONTRIB-2016-003

Description

Open Atrium allows you to control access via a hierarchy of public and private spaces and sub-spaces. If a public sub-space is created within a private parent-space, the content nodes of the public sub-space are accessible to users who are not members of the parent private space.

This issue only affects sites that use private sub-spaces.

CVE identifier(s) issued

  • A CVE identifier will be requested, and added upon issuance, in accordance with Drupal Security Team processes.

Versions affected

  • Open Atrium 7.x-2.x versions prior to 7.x-2.53.

Drupal core is not affected. If you do not use the contributed Open Atrium module, there is nothing you need to do.

Solution

  • Upgrade to the latest version, 7.x-2.53

If you are not able to fully upgrade to the latest version, ensure private sub-spaces are directly marked as private and are not seen publicly in a private parent space.

Also see the Open Atrium project page.

Reported by

Fixed by

Coordinated by

Contact and More Information

The Drupal security team can be reached at security at drupal.org or via the contact form at https://www.drupal.org/contact.

Learn more about the Drupal Security team and their policies, writing secure code for Drupal, and securing your site.

Follow the Drupal Security Team on Twitter at https://twitter.com/drupalsecurity

Drupal version: 

RedHen CRM – Moderately Critical – Cross Site Scripting (XSS) – SA-CONTRIB-2016-002

Description

The Redhen set of modules allows you to build a CRM features in a Drupal site.

When rendering individual Contacts, this module does not properly filter the certain data prior to display. When rendering listing of notes or engagement scores, these modules do not properly filter certain data before display.

This vulnerability is mitigated by the fact that an attacker must have an authenticated user account with access to edit a contact, administer engagement scores, or administer taxonomies.

CVE identifier(s) issued

  • A CVE identifier will be requested, and added upon issuance, in accordance with Drupal Security Team processes.

Versions affected

  • Redhen 7.x-1.x versions prior to 7.x-1.11.

Drupal core is not affected. If you do not use the contributed RedHen CRM module, there is nothing you need to do.

Solution

Install the latest version:

Workaround (if you are unable to update the module immediately):

  • In the display settings for your Redhen Contact Types (admin/structure/redhen/contact_types), hide “name” on all display modes.
  • Restrict access to “Administer Engagement Scores” and “Administer Taxonomies” to trusted users.

Also see the RedHen CRM project page.

Reported by

Fixed by

Coordinated by

Contact and More Information

The Drupal security team can be reached at security at drupal.org or via the contact form at https://www.drupal.org/contact.

Learn more about the Drupal Security team and their policies, writing secure code for Drupal, and securing your site.

Follow the Drupal Security Team on Twitter at https://twitter.com/drupalsecurity

Drupal version: