what you don't know can hurt you
Home Files News &[SERVICES_TAB]About Contact Add New

Drupal Protected Node Cross Site Scripting

Drupal Protected Node Cross Site Scripting
Posted Feb 27, 2009
Authored by Justin C. Klein Keane

The Drupal Protected Node module version 5.x-1.3 suffers from a cross site scripting vulnerability.

tags | exploit, xss
SHA-256 | dcd44c3b5242e68b940cdd1302aa3dbd16f87c2e5b6c95fd3fca6549fc1e4e3a

Drupal Protected Node Cross Site Scripting

Change Mirror Download
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Version Tested: 5.x-1.3 on Drupal 5.15

The Drupal Protected Node module
(http://drupal.org/project/protected_node) is designed to restrict
access to nodes using passwords. When nodes are created they can be
protected by selecting 'protected node' and specifying a password.
Users attempting to access the node must then enter a password in order
to access the node. Details of this vulnerability can also be found at
http://lampsecurity.org/node/28.

The Protected Node module fails to properly sanitize user input
specified in the 'Password page info' input specified in Administer ->
Site Configuration -> Protected Node. Users with the 'administer site
configuration' permission can access this page.

Steps to reproduce the exploit:

1. Enable the Protected Node module
2. Set permissions (Administer -> User Management) so anonymous users
can access protected content in the protected_node module section
3. Click Administer -> Site Configuration -> Protected node
4. Enter the value <script>alert('xss');</script> into the 'Password
page info' textarea
5. Create a new piece of content
6. In the 'Protected node' section on the content creation screen check
the 'Node is protected' checkbox and enter a password.
7. Save the content.
8. Log out and view the content to trigger the JavaScript


Technical details:

This vulnerability is introduced by a failure to sanitize user input as
it is being displayed in the protected_node_enterpassword() funciton in
protected_node.module. Lines 272-274 prints out the user supplied text
using the statement:

$form['protected_node'] = array(
'#value' => $info
);

The $info variable should be sainitized using check_plain() or similar
function in order to prevent the XSS vulnerability.

Drupal security (http://drupal.org/security) team and module maintainer
have been notified.

- --
Justin C. Klein Keane
http://www.MadIrish.net
http://www.LAMPSecurity.org
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (MingW32)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iQD1AwUBSagRtJEpbGy7DdYAAQJuYwcAjhDPxL2rYb9epxZ5J55kslSVYC0tMxaR
89AtwVC7NqXZ6fn9XH1vn71jw1qCNp6xnyNUgmlZDFmKs11Q3iTHgS5O2pWOiu8E
SUwPqguqRlx6QgQRtsJaKnS0zAFHWWc2i/jZWeHwkucf3LgJkYcEC4T/p8rRDjp3
wM0KdJnhbqC4/D8jSPAD3Ila8CRci9uoWwyGM6O4YtNQ/sxjtSHVC2ngmG3q2jTc
JRZtMsmiAgyj4CxCY3cbcAEFTDowredqt0283Y8s+qOxKwXlDZMeoKpRfyGK2FO2
IPLhieMuPdc=
=xS7G
-----END PGP SIGNATURE-----

Login or Register to add favorites

File Archive:

August 2024

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

Top Authors In Last 30 Days

File Tags

Systems

packet storm

© 2022 Packet Storm. All rights reserved.

Services
Security Services
Hosting By
Rokasec
close