Cross-site request forgery possible against other users of a site

Published: June 14, 2010

Version: 1.0

Maximum Severity Rating: Medium

Background

Under certain circumstances DotNetNuke could be vulnerable to a cross-site request forgery attack (http://en.wikipedia.org/wiki/Cross-site_request_forgery) against functions available to all users.

Issue Summary

DotNetNuke contains a number of layers of protection to ensure that one user cannot execute actions as another user. These include both encoding and encrypting data to ensure it isn't tampered with. In addition code exists to maintain data integrity over postbacks. However, if a site allows new users to register, these users can access a number of public functions shared by all users. They can then capture some of the site specific data integrity values and use these via a CSRF attack to alter data via these public functions for other users.

Mitigating factors

1. If the site doesn't support public or verified registration the hacker cannot create a user to gain access to copy the data integrity values.

2. For a CSRF to work against a different user it requires that the user is logged in - by default DotNetNuke does not use persistent cookies so this will not always be the case. Note theres a host setting to disable presistent cookies ("remember me").
 
3. a user has to be tricked into visiting a page on another site that executes the CSRF.

Affected DotNetNuke versions

All

Non-Affected Versions:

N/A

Fix(s) for issue

To fix this problem, you are recommended to update to the latest version of DotNetNuke (5.4.3 at time of writing).


Acknowledgments

Eugene Wahrlich
MWR InfoSecurity
http://labs.mwrinfosecurity.com/

Security Policy

Click here to read more details on the DotNetNuke Security Policy

Attend A Webinar
Free Demo Site
Download DotNetNuke Professional Edition Trial
Have Someone Contact Me

Like Us on Facebook Join our Network on LinkedIn Follow DNN Corporate on Twitter Follow DNN on Twitter

Advertisers

Sponsors

DotNetNuke Corporation

DotNetNuke Corp. is the steward of the DotNetNuke open source project, the most widely adopted Web Content Management Platform for building web sites and web applications on Microsoft .NET. Organizations use DotNetNuke to quickly develop and deploy interactive and dynamic web sites, intranets, extranets and web applications. The DotNetNuke platform is available in a free Community and subscription-based Professional and Enterprise Editions with an Elite Support option. DotNetNuke Corp. also operates Snowcovered.com where users purchase third party apps for the platform.