Open source software security

Drupal Link to Us 5.x-10 XSS Vulnerability

30 November -0001

Description

Drupal (http://drupal.org) is a robust content management system (CMS) that provides extensibility through hundreds of third party modules. While the security of Drupal core modules is vetted by a central security team, third party modules are not reviewed for security.

The Link to Us module (http://drupal.org/project/link_to_us), created by Greg Holsclaw (http://www.tech-wanderings.com/drupal-link-to-us-module) is designed to users to link directly to the content of a Drupal site by copying and pasting HTML code onto their own site. Unfortunately the module does not properly sanitize input and exposes a cross site scripting vulnerability. Users with privileges to manage the Link to Us module can insert malicious HTML or JavaScript that is rendered when a user clicks the 'Share this page' link.

Vulnerable Versions

5.x-10 was tested and shown vulnerable.

Testing for Vulnerability

If a user with permissions to manage Link to Us goes to Administer->Site Configuration->Link to Us and enters "<script>alert('foo');</script>" into the "Link page header:" textarea the input is not sanitized, presenting a JavaScript alert that reads 'foo' whenever anyone clicks the 'Share this page' link at the bottom of content with the Link to Us module (full details below).

Impact

Depending on configuration, this vulnerability allows users with permissions to the Link to Us module to inject malicious content that could be displayed to web site users. Such content could include links to malware that could lead to possible system compromise.

Determining Version

The link_to_us.info page for vulnerable versions displays the following information:

; $Id:
name = Link To Us Module
description = Add Link to this site functionality.

; Information added by drupal.org packaging script on 2008-03-13
version = "5.x-1.0"
project = "link_to_us"
datestamp = "1205451908"

Determining version information on Drupal sites is trivial in many cases (ref http://www.madirish.net/?article=214).

Vendor Response

Vendor initially contacted on July 2, 2008. Although a patch was created, according to the Drupal security team's policy (http://drupal.org/node/32750), they delay releases of patches or details until a fixed timeframe. Drupal security has said an announcement and patch should be forthcoming and available this Wednesday, September 17, 2008.