Advisory:

Reflected XSS in The Events Calendar: Eventbrite Tickets allows unauthenticated users to do almost anything an admin can

Vulnerability

Last revised:

This plugin contains a Reflected XSS vulnerability (views/eventbrite/import-eventbrite-events.php line 14).

This allows an attacker to hijack pages on the site by adding Javascript code into them. For example, an attacker could construct a fake login page on your website and steal an administrator’s password when they log in. There would be almost no way to tell that this was happening.

If an administrator can be tricked into clicking on a link controlled by the attacker, then an attacker would also be able to automate anything an admin could do, for example creating and deleting user accounts and creating and deleting content. There would be almost no way to tell that this was happening, and it is easy to make these links very convincing.

Current state: Fixed

CVSS Summary

CVSS base scores for this vulnerability
Score 5.8 Medium
Vector Network
Complexity Medium
Authentication None
Confidentiality Partial
Integrity Partial
Availability None
You can read more about CVSS base scores on Wikipedia or in the CVSS specification.

Proof of concept

Configure the plugin by creating an Eventbrite account, creating an application, going through the OAuth process, etc.

Using a browser with no XSS prevention (e.g. firefox), visit the following URL:

http://localhost/wp-admin/edit.php?post_type=tribe_events&page=import-eventbrite-events&error=%3Cscript%3Ealert%281%29%3C%2Fscript%3E

Advisory timeline

  • 2015-06-09: Discovered
  • 2015-07-09: Reported to vendor via the contact form on The Events Calendar website
  • 2015-07-09: Requested CVE
  • 2015-07-09: Vendor responded
  • 2015-07-10: Vendor confirmed fixed in 3.10.2
  • 2015-07-13: Published

Mitigation/further actions

Upgrade to version 3.10.2 or later