Drupal Services third party module versions 6.x and 7.x suffer from a cross site request forgery vulnerability.
32b8b1171ac6c2b5364c5c005d31a657b254cb24ffe91ed48a646dd84002f7e4
View online: https://drupal.org/node/2012982
* Advisory ID: DRUPAL-SA-CONTRIB-2013-051
* Project: Services [1] (third-party module)
* Version: 6.x, 7.x
* Date: 2013-June-05
* Security risk: Moderately critical [2]
* Exploitable from: Remote
* Vulnerability: Cross Site Request Forgery
-------- DESCRIPTION
---------------------------------------------------------
This module enables you to expose an API to third party systems using REST,
XML-RPC or other protocols.
The module doesn't sufficiently verify writing requests (POST, PUT, DELETE)
with session cookie authentication, thereby exposing a Cross Site Request
Forgery vulnerability.
This vulnerability is mitigated by the fact that session based authentication
must be enabled for an endpoint.
-------- CVE IDENTIFIER(S) ISSUED
--------------------------------------------
* /A CVE identifier [3] will be requested, and added upon issuance, in
accordance with Drupal Security Team processes./
-------- VERSIONS AFFECTED
---------------------------------------------------
* Services 6.x-3.x versions.
* Services 7.x-3.x versions prior to 7.x-3.4.
Drupal core is not affected. If you do not use the contributed Services [4]
module, there is nothing you need to do.
-------- SOLUTION
------------------------------------------------------------
Install the latest version or uninstall the module.
* If you use the Services module for Drupal 7.x, upgrade to Services 7.x-3.4
[5]
* If you use the Services module for Drupal 6.x, uninstall the module.
Note that Services clients using session authentication now should supply a
special X-CSRF-Token header with a token that can be retrieved from
http://example.com/services/session/token [6]. This is needed for writing
HTTP methods calls (POST, PUT, DELETE).
Also see the Services [7] project page.
-------- REPORTED BY
---------------------------------------------------------
* Klaus Purer [8] of the Drupal Security Team
* Fredrik Lassen [9]
-------- FIXED BY
------------------------------------------------------------
* Yuriy Gerasimov [10] the module maintainer
-------- COORDINATED BY
------------------------------------------------------
* Klaus Purer [11] 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 [12].
Learn more about the Drupal Security team and their policies [13], writing
secure code for Drupal [14], and securing your site [15].
[1] http://drupal.org/project/services
[2] http://drupal.org/security-team/risk-levels
[3] http://cve.mitre.org/
[4] http://drupal.org/project/services
[5] https://drupal.org/node/2012366
[6] http://example.com/services/session/token
[7] http://drupal.org/project/services
[8] http://drupal.org/user/262198
[9] http://drupal.org/user/243377
[10] http://drupal.org/user/257311
[11] http://drupal.org/user/262198
[12] http://drupal.org/contact
[13] http://drupal.org/security-team
[14] http://drupal.org/writing-secure-code
[15] http://drupal.org/security/secure-configuration